summaryrefslogtreecommitdiff
path: root/priv/static/adminfe/static/js/chunk-4995.94e052fc.js.map
blob: 3048cc4c54e7499220b4365c24d316fa5bd927bd (plain)
1
{"version":3,"sources":["webpack:///./src/views/reports/components/Report.vue?ad5f","webpack:///./src/views/reports/components/ReportsFilter.vue?5d06","webpack:///./src/views/reports/index.vue?8d7d","webpack:///./src/views/reports/components/Report.vue?a764","webpack:///src/views/reports/components/Report.vue","webpack:///./src/views/reports/components/Report.vue","webpack:///./src/views/reports/components/Report.vue?0503","webpack:///./src/views/reports/components/ReportsFilter.vue?e3b7","webpack:///src/views/reports/components/ReportsFilter.vue","webpack:///./src/views/reports/components/ReportsFilter.vue","webpack:///./src/views/reports/components/ReportsFilter.vue?49ad","webpack:///./src/views/reports/index.vue?3bcc","webpack:///src/views/reports/index.vue","webpack:///./src/views/reports/index.vue","webpack:///./src/views/reports/index.vue?6a35"],"names":["_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_Report_vue_vue_type_style_index_0_rel_stylesheet_2Fscss_lang_scss___WEBPACK_IMPORTED_MODULE_0__","__webpack_require__","n","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_ReportsFilter_vue_vue_type_style_index_0_id_5ab7c15a_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","components_Reportvue_type_script_lang_js_","name","components","ModerateUserDropdown","ReportContent","props","reports","type","required","computed","loading","this","$store","state","pageSize","totalReportsCount","currentPage","methods","capitalizeFirstLetter","str","charAt","toUpperCase","slice","changeReportState","id","dispatch","getStateType","handlePageChange","page","parseTimestamp","timestamp","moment_default","format","propertyExists","account","property","_secondProperty","component","Object","componentNormalizer","_vm","_h","$createElement","_c","_self","staticClass","_l","report","key","attrs","created_at","placement","_v","_s","$t","nickname","_e","size","trigger","plain","icon","slot","nativeOn","click","$event","report-id","rendered-from","total","current-page","page-size","background","layout","on","current-change","options","__file","Report","components_ReportsFiltervue_type_script_lang_js_","data","filter","value","label","created","$data","toggleFilters","ReportsFilter_component","placeholder","clearable","value-key","change","model","callback","$$v","expression","item","ReportsFilter","views_reportsvue_type_script_lang_js_","RebootButton","normalizedReportsCount","numeral_default","fetchedReports","mounted","reports_component","directives","rawName","length","__webpack_exports__","_node_modules_mini_css_extract_plugin_dist_loader_js_node_modules_css_loader_index_js_ref_11_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_lib_index_js_ref_11_2_node_modules_sass_loader_lib_loader_js_ref_11_3_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_6ac87f34_rel_stylesheet_2Fscss_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__"],"mappings":"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","file":"static/js/chunk-4995.94e052fc.js","sourcesContent":["import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=style&index=0&id=5ab7c15a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../node_modules/css-loader/index.js??ref--11-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=style&index=0&id=5ab7c15a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"reports-container\"},[_c('div',{staticClass:\"reports-header-container\"},[_c('h1',[_vm._v(\"\\n      \"+_vm._s(_vm.$t('reports.reports'))+\"\\n      \"),_c('span',{staticClass:\"report-count\"},[_vm._v(\"(\"+_vm._s(_vm.normalizedReportsCount)+\")\")])]),_vm._v(\" \"),_c('reboot-button')],1),_vm._v(\" \"),_c('div',{staticClass:\"reports-filter-container\"},[_c('reports-filter')],1),_vm._v(\" \"),_c('div',{staticClass:\"block\"},[_c('report',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],attrs:{\"reports\":_vm.reports}}),_vm._v(\" \"),(_vm.reports.length === 0)?_c('div',{staticClass:\"no-reports-message\"},[_c('p',[_vm._v(\"There are no reports to display\")])]):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Report.vue?vue&type=script&lang=js&\"","<template>\n  <div>\n    <el-timeline class=\"reports-timeline\">\n      <el-timeline-item\n        v-for=\"report in reports\"\n        :timestamp=\"parseTimestamp(report.created_at)\"\n        :key=\"report.id\"\n        placement=\"top\"\n        class=\"timeline-item-container\">\n        <el-card class=\"report\">\n          <div class=\"report-header-container\">\n            <div class=\"title-container\">\n              <h3 v-if=\"propertyExists(report.account, 'nickname')\" class=\"report-title\">{{ $t('reports.reportOn') }} {{ report.account.nickname }}</h3>\n              <h3 v-else class=\"report-title\">{{ $t('reports.report') }}</h3>\n              <h5 v-if=\"propertyExists(report.account, 'id')\" class=\"id\">{{ $t('reports.id') }}: {{ report.id }}</h5>\n            </div>\n            <div>\n              <el-tag :type=\"getStateType(report.state)\" size=\"large\" class=\"report-tag\">{{ capitalizeFirstLetter(report.state) }}</el-tag>\n              <el-dropdown trigger=\"click\">\n                <el-button plain size=\"small\" icon=\"el-icon-edit\" class=\"report-actions-button\">{{ $t('reports.changeState') }}<i class=\"el-icon-arrow-down el-icon--right\"/></el-button>\n                <el-dropdown-menu slot=\"dropdown\">\n                  <el-dropdown-item v-if=\"report.state !== 'resolved'\" @click.native=\"changeReportState('resolved', report.id)\">{{ $t('reports.resolve') }}</el-dropdown-item>\n                  <el-dropdown-item v-if=\"report.state !== 'open'\" @click.native=\"changeReportState('open', report.id)\">{{ $t('reports.reopen') }}</el-dropdown-item>\n                  <el-dropdown-item v-if=\"report.state !== 'closed'\" @click.native=\"changeReportState('closed', report.id)\">{{ $t('reports.close') }}</el-dropdown-item>\n                </el-dropdown-menu>\n              </el-dropdown>\n              <moderate-user-dropdown\n                v-if=\"propertyExists(report.account, 'nickname')\"\n                :account=\"report.account\"\n                :report-id=\"report.id\"\n                :rendered-from=\"'reportsPage'\"/>\n            </div>\n          </div>\n          <el-divider class=\"divider\"/>\n          <report-content :report=\"report\"/>\n        </el-card>\n      </el-timeline-item>\n    </el-timeline>\n    <div v-if=\"!loading\" class=\"reports-pagination\">\n      <el-pagination\n        :total=\"totalReportsCount\"\n        :current-page=\"currentPage\"\n        :page-size=\"pageSize\"\n        background\n        layout=\"prev, pager, next\"\n        @current-change=\"handlePageChange\"\n      />\n    </div>\n  </div>\n</template>\n\n<script>\nimport moment from 'moment'\nimport ModerateUserDropdown from './ModerateUserDropdown'\nimport ReportContent from './ReportContent'\n\nexport default {\n  name: 'Report',\n  components: { ModerateUserDropdown, ReportContent },\n  props: {\n    reports: {\n      type: Array,\n      required: true\n    }\n  },\n  computed: {\n    loading() {\n      return this.$store.state.reports.loading\n    },\n    pageSize() {\n      return this.$store.state.reports.pageSize\n    },\n    totalReportsCount() {\n      return this.$store.state.reports.totalReportsCount\n    },\n    currentPage() {\n      return this.$store.state.reports.currentPage\n    }\n  },\n  methods: {\n    capitalizeFirstLetter(str) {\n      return str.charAt(0).toUpperCase() + str.slice(1)\n    },\n    changeReportState(state, id) {\n      this.$store.dispatch('ChangeReportState', [{ state, id }])\n    },\n    getStateType(state) {\n      switch (state) {\n        case 'closed':\n          return 'info'\n        case 'resolved':\n          return 'success'\n        default:\n          return 'primary'\n      }\n    },\n    handlePageChange(page) {\n      this.$store.dispatch('FetchReports', page)\n    },\n    parseTimestamp(timestamp) {\n      return moment(timestamp).format('L HH:mm')\n    },\n    propertyExists(account, property, _secondProperty) {\n      if (_secondProperty) {\n        return account[property] && account[_secondProperty]\n      }\n      return account[property]\n    }\n  }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss'>\n  h4 {\n    margin: 0;\n    height: 17px;\n  }\n  .divider {\n    margin: 15px 0;\n  }\n  .el-card__body {\n    padding: 17px;\n  }\n  .el-card__header {\n    background-color: #FAFAFA;\n    padding: 10px 20px;\n  }\n  .el-collapse {\n    border-bottom: none;\n  }\n  .el-collapse-item__header {\n    height: 46px;\n    font-size: 14px;\n  }\n  .el-collapse-item__content {\n    padding-bottom: 7px;\n  }\n  .el-icon-arrow-right {\n    margin-right: 6px;\n  }\n  .id {\n    color: gray;\n    margin-top: 6px;\n  }\n  .line {\n    width: 100%;\n    height: 0;\n    border: 0.5px solid #EBEEF5;\n    margin: 15px 0 15px;\n  }\n  .new-note {\n    p {\n      font-size: 14px;\n      font-weight: 500;\n      height: 17px;\n      margin: 13px 0 7px;\n    }\n  }\n  .note {\n    box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);\n    margin-bottom: 10px;\n  }\n  .no-notes {\n    font-style: italic;\n    color: gray;\n  }\n  .report {\n    .report-header-container {\n      display: flex;\n      justify-content: space-between;\n      align-items: baseline;\n      height: 40px;\n    }\n  }\n  .report-title {\n    margin: 0;\n  }\n  .reports-pagination {\n    margin: 25px 0;\n    text-align: center;\n  }\n  .reports-timeline {\n    margin: 30px 45px 45px 19px;\n    padding: 0px;\n  }\n  .submit-button {\n    display: block;\n    margin: 7px 0 17px auto;\n  }\n  .timestamp {\n    margin: 0;\n    font-style: italic;\n    color: gray;\n  }\n\n  @media only screen and (max-width:480px) {\n    .report {\n      .report-header-container {\n        display: flex;\n        flex-direction: column;\n        justify-content: flex-start;\n        align-items: flex-start;\n        height: auto;\n      }\n      .id {\n        margin: 6px 0 0 0;\n      }\n      .report-actions-button {\n        margin: 3px 0 6px;\n      }\n      .report-tag {\n        margin: 3px 0 6px;\n      }\n      .title-container {\n        margin-bottom: 7px;\n      }\n    }\n    .reports-timeline {\n      margin: 20px 10px;\n      .el-timeline-item__wrapper {\n        padding-left: 20px;\n      }\n    }\n  }\n</style>\n","import { render, staticRenderFns } from \"./Report.vue?vue&type=template&id=0f1f719f&\"\nimport script from \"./Report.vue?vue&type=script&lang=js&\"\nexport * from \"./Report.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Report.vue?vue&type=style&index=0&rel=stylesheet%2Fscss&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\ncomponent.options.__file = \"Report.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('el-timeline',{staticClass:\"reports-timeline\"},_vm._l((_vm.reports),function(report){return _c('el-timeline-item',{key:report.id,staticClass:\"timeline-item-container\",attrs:{\"timestamp\":_vm.parseTimestamp(report.created_at),\"placement\":\"top\"}},[_c('el-card',{staticClass:\"report\"},[_c('div',{staticClass:\"report-header-container\"},[_c('div',{staticClass:\"title-container\"},[(_vm.propertyExists(report.account, 'nickname'))?_c('h3',{staticClass:\"report-title\"},[_vm._v(_vm._s(_vm.$t('reports.reportOn'))+\" \"+_vm._s(report.account.nickname))]):_c('h3',{staticClass:\"report-title\"},[_vm._v(_vm._s(_vm.$t('reports.report')))]),_vm._v(\" \"),(_vm.propertyExists(report.account, 'id'))?_c('h5',{staticClass:\"id\"},[_vm._v(_vm._s(_vm.$t('reports.id'))+\": \"+_vm._s(report.id))]):_vm._e()]),_vm._v(\" \"),_c('div',[_c('el-tag',{staticClass:\"report-tag\",attrs:{\"type\":_vm.getStateType(report.state),\"size\":\"large\"}},[_vm._v(_vm._s(_vm.capitalizeFirstLetter(report.state)))]),_vm._v(\" \"),_c('el-dropdown',{attrs:{\"trigger\":\"click\"}},[_c('el-button',{staticClass:\"report-actions-button\",attrs:{\"plain\":\"\",\"size\":\"small\",\"icon\":\"el-icon-edit\"}},[_vm._v(_vm._s(_vm.$t('reports.changeState'))),_c('i',{staticClass:\"el-icon-arrow-down el-icon--right\"})]),_vm._v(\" \"),_c('el-dropdown-menu',{attrs:{\"slot\":\"dropdown\"},slot:\"dropdown\"},[(report.state !== 'resolved')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeReportState('resolved', report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.resolve')))]):_vm._e(),_vm._v(\" \"),(report.state !== 'open')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeReportState('open', report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.reopen')))]):_vm._e(),_vm._v(\" \"),(report.state !== 'closed')?_c('el-dropdown-item',{nativeOn:{\"click\":function($event){return _vm.changeReportState('closed', report.id)}}},[_vm._v(_vm._s(_vm.$t('reports.close')))]):_vm._e()],1)],1),_vm._v(\" \"),(_vm.propertyExists(report.account, 'nickname'))?_c('moderate-user-dropdown',{attrs:{\"account\":report.account,\"report-id\":report.id,\"rendered-from\":'reportsPage'}}):_vm._e()],1)]),_vm._v(\" \"),_c('el-divider',{staticClass:\"divider\"}),_vm._v(\" \"),_c('report-content',{attrs:{\"report\":report}})],1)],1)}),1),_vm._v(\" \"),(!_vm.loading)?_c('div',{staticClass:\"reports-pagination\"},[_c('el-pagination',{attrs:{\"total\":_vm.totalReportsCount,\"current-page\":_vm.currentPage,\"page-size\":_vm.pageSize,\"background\":\"\",\"layout\":\"prev, pager, next\"},on:{\"current-change\":_vm.handlePageChange}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportsFilter.vue?vue&type=script&lang=js&\"","<template>\n  <el-select\n    v-model=\"filter\"\n    :placeholder=\"$t('reportsFilter.inputPlaceholder')\"\n    clearable\n    class=\"select-field\"\n    value-key=\"value\"\n    @change=\"toggleFilters\">\n    <el-option\n      v-for=\"item in options\"\n      :key=\"item.value\"\n      :label=\"item.label\"\n      :value=\"item.value\">{{ item.label }}</el-option>\n  </el-select>\n</template>\n\n<script>\nimport i18n from '@/lang'\n\nexport default {\n  data() {\n    return {\n      filter: 'open',\n      options: [\n        {\n          value: 'open',\n          label: i18n.t('reportsFilter.open')\n        },\n        {\n          value: 'closed',\n          label: i18n.t('reportsFilter.closed')\n        },\n        {\n          value: 'resolved',\n          label: i18n.t('reportsFilter.resolved')\n        }\n      ]\n    }\n  },\n  created() {\n    this.$store.dispatch('SetReportsFilter', this.$data.filter)\n  },\n  methods: {\n    toggleFilters() {\n      this.$store.dispatch('SetReportsFilter', this.$data.filter)\n      this.$store.dispatch('ClearFetchedReports')\n      this.$store.dispatch('FetchReports', 1)\n    }\n  }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.select-field {\n  width: 350px;\n}\n\n@media only screen and (max-width:480px) {\n  .select-field {\n    width: 100%;\n    margin-bottom: 5px;\n  }\n}\n\n@media only screen and (max-width:801px) and (min-width: 481px) {\n  .select-field {\n    width: 50%;\n  }\n}\n</style>\n","import { render, staticRenderFns } from \"./ReportsFilter.vue?vue&type=template&id=5ab7c15a&scoped=true&\"\nimport script from \"./ReportsFilter.vue?vue&type=script&lang=js&\"\nexport * from \"./ReportsFilter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ReportsFilter.vue?vue&type=style&index=0&id=5ab7c15a&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"5ab7c15a\",\n  null\n  \n)\n\ncomponent.options.__file = \"ReportsFilter.vue\"\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-select',{staticClass:\"select-field\",attrs:{\"placeholder\":_vm.$t('reportsFilter.inputPlaceholder'),\"clearable\":\"\",\"value-key\":\"value\"},on:{\"change\":_vm.toggleFilters},model:{value:(_vm.filter),callback:function ($$v) {_vm.filter=$$v},expression:\"filter\"}},_vm._l((_vm.options),function(item){return _c('el-option',{key:item.value,attrs:{\"label\":item.label,\"value\":item.value}},[_vm._v(_vm._s(item.label))])}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","<template>\n  <div class=\"reports-container\">\n    <div class=\"reports-header-container\">\n      <h1>\n        {{ $t('reports.reports') }}\n        <span class=\"report-count\">({{ normalizedReportsCount }})</span>\n      </h1>\n      <reboot-button/>\n    </div>\n    <div class=\"reports-filter-container\">\n      <reports-filter/>\n    </div>\n    <div class=\"block\">\n      <report v-loading=\"loading\" :reports=\"reports\"/>\n      <div v-if=\"reports.length === 0\" class=\"no-reports-message\">\n        <p>There are no reports to display</p>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nimport numeral from 'numeral'\nimport Report from './components/Report'\nimport ReportsFilter from './components/ReportsFilter'\nimport RebootButton from '@/components/RebootButton'\n\nexport default {\n  components: { RebootButton, Report, ReportsFilter },\n  computed: {\n    loading() {\n      return this.$store.state.reports.loading\n    },\n    normalizedReportsCount() {\n      return numeral(this.$store.state.reports.totalReportsCount).format('0a')\n    },\n    reports() {\n      return this.$store.state.reports.fetchedReports\n    }\n  },\n  mounted() {\n    this.$store.dispatch('GetNodeInfo')\n    this.$store.dispatch('NeedReboot')\n    this.$store.dispatch('FetchTagPolicySetting')\n    this.$store.dispatch('FetchReports', 1)\n  }\n}\n</script>\n\n<style rel='stylesheet/scss' lang='scss' scoped>\n.reports-container {\n  .reboot-button {\n    padding: 10px;\n    margin: 0;\n    width: 145px;\n  }\n  .reports-filter-container {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    margin: 15px 45px 22px 15px;\n    padding-bottom: 0\n  }\n  .reports-header-container {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    margin: 10px 15px;\n  }\n  h1 {\n    margin: 0;\n  }\n  .no-reports-message {\n    color: gray;\n    margin-left: 19px\n  }\n  .report-count {\n    color: gray;\n    font-size: 28px;\n  }\n}\n\n@media only screen and (max-width:480px) {\n  .reports-container {\n    h1 {\n      margin: 7px 10px 15px 10px;\n    }\n    .reboot-button {\n      margin: 0 0 5px 10px;\n      width: 145px;\n    }\n    .report-count {\n      font-size: 22px;\n    }\n    .reports-filter-container {\n      margin: 0 10px;\n    }\n  }\n}\n</style>\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=6ac87f34&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=6ac87f34&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"6ac87f34\",\n  null\n  \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=6ac87f34&rel=stylesheet%2Fscss&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../node_modules/css-loader/index.js??ref--11-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/lib/index.js??ref--11-2!../../../node_modules/sass-loader/lib/loader.js??ref--11-3!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=6ac87f34&rel=stylesheet%2Fscss&lang=scss&scoped=true&\""],"sourceRoot":""}