{"version":3,"sources":["webpack:///./src/views/laborForce/PvtGrossJobGainLoss.vue?3781","webpack:///./src/views/laborForce/PvtGrossJobGainLoss.vue","webpack:///./src/views/laborForce/PvtGrossJobGainLoss.vue?b16d","webpack:///./src/components/MetricGrid.vue?4222","webpack:///./src/components/MetricGrid.vue","webpack:///./src/components/MetricGrid.vue?b52e","webpack:///./src/components/Chart/FilterTabs.vue?b0a3","webpack:///./src/components/Chart/FilterTabs.vue","webpack:///./src/components/Chart/FilterTabs.vue?b77d","webpack:///./src/components/MetricStat.vue?30b3","webpack:///./src/components/MetricStat.vue","webpack:///./src/components/MetricStat.vue?6415","webpack:///./src/components/MetricSource.vue?5afe","webpack:///./src/components/MetricSource.vue","webpack:///./src/components/MetricSource.vue?a4a9","webpack:///./src/components/MetricHighlight.vue?bc0a","webpack:///./src/components/MetricHighlight.vue","webpack:///./src/components/MetricHighlight.vue?9b35","webpack:///./src/components/MetricSource.vue?da49","webpack:///./src/components/MetricTitle.vue?85b8","webpack:///./src/components/MetricTitle.vue","webpack:///./src/components/MetricTitle.vue?02f0","webpack:///./src/components/Chart/FilterTabs.vue?57ea","webpack:///./src/components/MetricStat.vue?0823","webpack:///./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///./src/components/SectionTitle.vue?8763","webpack:///./src/components/SectionTitle.vue","webpack:///./src/components/SectionTitle.vue?47b1"],"names":["_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","render","_ctx","_cache","$props","$setup","$data","$options","_component_Spinner","_component_MetricTitle","_component_FilterTabs","_component_LineChart","_component_MetricSource","_component_SectionTitle","_component_MetricStat","_component_MetricHighlight","_component_MetricGrid","selectedData","length","key","title","metric","filterTabs","options","filterOptions","onHandleClick","$event","handleFilter","chart","metricData","dataLabels","dataProps","dateLabel","dateProp","href","sourceUrl","summaryTitle","metricStats","label","value","latestNumbersGain","yearChangeGain","yearPercentChangeGain","latestNumbersLoss","yearChangeLoss","yearPercentChangeLoss","content","highlight","_","data","summaryDate","Date","rank","components","Spinner","LineChart","MetricGrid","MetricTitle","SectionTitle","FilterTabs","MetricStat","MetricSource","MetricHighlight","methods","option","this","limitData","years","count","slice","beforeMount","topic","router","currentRoute","name","scales","yAxis","ticks","callback","lastItem","date","__exports__","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","$slots","props","type","onClick","handleClick","active","$emit","Array","featured","String","Boolean","target","source","Object","_defineProperties","i","descriptor","enumerable","configurable","writable","defineProperty","_createClass","Constructor","protoProps","staticProps","prototype"],"mappings":"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","file":"js/chunk-9d4380ae.c1128a48.js","sourcesContent":["import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, createElementVNode as _createElementVNode, withCtx as _withCtx } from \"vue\"\n\nconst _hoisted_1 = { class: \"col\" }\nconst _hoisted_2 = /*#__PURE__*/_createElementVNode(\"div\", { class: \"col\" }, null, -1)\nconst _hoisted_3 = { class: \"col\" }\nconst _hoisted_4 = { class: \"col\" }\nconst _hoisted_5 = { class: \"col\" }\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"div\", { class: \"col\" }, null, -1)\nconst _hoisted_7 = { class: \"col\" }\nconst _hoisted_8 = { class: \"col\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Spinner = _resolveComponent(\"Spinner\")!\n const _component_MetricTitle = _resolveComponent(\"MetricTitle\")!\n const _component_FilterTabs = _resolveComponent(\"FilterTabs\")!\n const _component_LineChart = _resolveComponent(\"LineChart\")!\n const _component_MetricSource = _resolveComponent(\"MetricSource\")!\n const _component_SectionTitle = _resolveComponent(\"SectionTitle\")!\n const _component_MetricStat = _resolveComponent(\"MetricStat\")!\n const _component_MetricHighlight = _resolveComponent(\"MetricHighlight\")!\n const _component_MetricGrid = _resolveComponent(\"MetricGrid\")!\n\n return (_ctx.selectedData.length == 0)\n ? (_openBlock(), _createBlock(_component_Spinner, { key: 0 }))\n : (_openBlock(), _createBlock(_component_MetricGrid, { key: 1 }, {\n \"metric-title\": _withCtx(() => [\n _createVNode(_component_MetricTitle, {\n title: _ctx.metric.metric\n }, null, 8, [\"title\"])\n ]),\n filterTabs: _withCtx(() => [\n _createVNode(_component_FilterTabs, {\n options: _ctx.filterOptions,\n onHandleClick: _cache[0] || (_cache[0] = ($event: any) => (_ctx.handleFilter($event)))\n }, null, 8, [\"options\"])\n ]),\n chart: _withCtx(() => [\n _createVNode(_component_LineChart, {\n metricData: _ctx.selectedData,\n dataLabels: _ctx.dataLabels,\n dataProps: _ctx.dataProps,\n options: _ctx.options,\n dateLabel: _ctx.metric.dateProp\n }, null, 8, [\"metricData\", \"dataLabels\", \"dataProps\", \"options\", \"dateLabel\"]),\n _createVNode(_component_MetricSource, {\n metric: _ctx.metric,\n href: _ctx.sourceUrl()\n }, null, 8, [\"metric\", \"href\"])\n ]),\n summaryTitle: _withCtx(() => [\n _createVNode(_component_SectionTitle, {\n title: _ctx.summaryTitle()\n }, null, 8, [\"title\"])\n ]),\n metricStats: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_1, [\n _createVNode(_component_MetricStat, {\n label: \"Gross Job Gains\",\n value: _ctx.latestNumbersGain\n }, null, 8, [\"value\"])\n ]),\n _hoisted_2,\n _createElementVNode(\"div\", _hoisted_3, [\n _createVNode(_component_MetricStat, {\n label: \"Yearly Change\",\n value: _ctx.yearChangeGain\n }, null, 8, [\"value\"])\n ]),\n _createElementVNode(\"div\", _hoisted_4, [\n _createVNode(_component_MetricStat, {\n label: \"Yearly % Change\",\n value: _ctx.yearPercentChangeGain\n }, null, 8, [\"value\"])\n ]),\n _createElementVNode(\"div\", _hoisted_5, [\n _createVNode(_component_MetricStat, {\n label: \"Gross Job Losses\",\n value: _ctx.latestNumbersLoss\n }, null, 8, [\"value\"])\n ]),\n _hoisted_6,\n _createElementVNode(\"div\", _hoisted_7, [\n _createVNode(_component_MetricStat, {\n label: \"Yearly Change\",\n value: _ctx.yearChangeLoss\n }, null, 8, [\"value\"])\n ]),\n _createElementVNode(\"div\", _hoisted_8, [\n _createVNode(_component_MetricStat, {\n label: \"Yearly % Change\",\n value: _ctx.yearPercentChangeLoss\n }, null, 8, [\"value\"])\n ])\n ]),\n \"metric-highlight\": _withCtx(() => [\n _createVNode(_component_MetricHighlight, { content: _ctx.highlight }, null, 8, [\"content\"])\n ]),\n _: 1\n }))\n}","\r\nimport { defineComponent } from \"vue\";\r\nimport router from \"@/router\";\r\nimport {\r\n GetMetricData,\r\n GetMetric,\r\n SummaryTitleByQuarter,\r\n GetHighlight,\r\n ChangeOverTime,\r\n SourceURL,\r\n NumberWithCommas,\r\n} from \"@/utils\";\r\nimport Spinner from \"@/components/Spinner.vue\";\r\nimport MetricGrid from \"@/components/MetricGrid.vue\";\r\nimport LineChart from \"@/components/Chart/LineChart.vue\";\r\nimport ChartOptions from \"@/types/chartOptions\";\r\nimport FilterTabs from \"@/components/Chart/FilterTabs.vue\";\r\nimport MetricTitle from \"@/components/MetricTitle.vue\";\r\nimport SectionTitle from \"@/components/SectionTitle.vue\";\r\nimport MetricStat from \"@/components/MetricStat.vue\";\r\nimport MetricSource from \"@/components/MetricSource.vue\";\r\nimport MetricHighlight from \"@/components/MetricHighlight.vue\";\r\n\r\nexport default defineComponent({\r\n data() {\r\n return {\r\n data: [],\r\n selectedData: [],\r\n metric: {},\r\n summaryDate: new Date(),\r\n latestNumbersGain: \"\",\r\n latestNumbersLoss: \"\",\r\n yearChangeGain: \"\",\r\n yearPercentChangeGain: \"\",\r\n yearChangeLoss: \"\",\r\n yearPercentChangeLoss: \"\",\r\n rank: \"\",\r\n highlight: \"\",\r\n filterOptions: [1, 5, 10, 0],\r\n\r\n //Chart setup\r\n options: new ChartOptions(),\r\n dataLabels: [\"Job Gains\", \"Job Losses\"],\r\n dataProps: [\"gross_job_gains\", \"gross_job_losses\"],\r\n };\r\n },\r\n components: {\r\n Spinner,\r\n LineChart,\r\n MetricGrid,\r\n MetricTitle,\r\n SectionTitle,\r\n FilterTabs,\r\n MetricStat,\r\n MetricSource,\r\n MetricHighlight,\r\n },\r\n methods: {\r\n handleFilter(option: any) {\r\n this.limitData(option);\r\n },\r\n limitData(years: number) {\r\n /* This is going to be custom for each metric, you need to cin some cases \r\n convert the lable to a date. Then limit the date to the intended range */\r\n\r\n if (years == 0) {\r\n this.selectedData = this.data;\r\n } else {\r\n let count = -1 * (4 * years);\r\n this.selectedData = this.data.slice(count);\r\n }\r\n },\r\n summaryTitle() {\r\n return SummaryTitleByQuarter(this.summaryDate);\r\n },\r\n sourceUrl() {\r\n return SourceURL(this.metric);\r\n },\r\n },\r\n async beforeMount() {\r\n const topic = router.currentRoute.value.name; // Get which metric by the route\r\n this.data = await GetMetricData(topic); // Get raw data from Socrata\r\n this.metric = GetMetric(topic); // Get metric configuration\r\n this.selectedData = this.data; // initialize this to \"lifetime\" and update this variable when a range is selected\r\n\r\n //Add custom chart options\r\n this.options.scales.yAxis.ticks.callback = (label: any) => {\r\n return NumberWithCommas(label);\r\n };\r\n\r\n // Get summary data and hightlights\r\n const lastItem: any = this.data[this.data.length - 1];\r\n this.summaryDate = lastItem.date;\r\n this.latestNumbersGain = NumberWithCommas(lastItem[this.dataProps[0]]);\r\n this.latestNumbersLoss = NumberWithCommas(lastItem[this.dataProps[1]]);\r\n this.yearChangeGain = NumberWithCommas(\r\n ChangeOverTime(this.data, 4, this.dataProps[0], false)\r\n );\r\n this.yearPercentChangeGain = ChangeOverTime(\r\n this.data,\r\n 4,\r\n this.dataProps[0],\r\n true\r\n );\r\n this.yearChangeLoss = NumberWithCommas(\r\n ChangeOverTime(this.data, 4, this.dataProps[1], false)\r\n );\r\n this.yearPercentChangeLoss = ChangeOverTime(\r\n this.data,\r\n 4,\r\n this.dataProps[1],\r\n true\r\n );\r\n this.highlight = GetHighlight(this.data);\r\n },\r\n});\r\n","import { render } from \"./PvtGrossJobGainLoss.vue?vue&type=template&id=e9aaf590&ts=true\"\nimport script from \"./PvtGrossJobGainLoss.vue?vue&type=script&lang=ts\"\nexport * from \"./PvtGrossJobGainLoss.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { renderSlot as _renderSlot, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"row h-xxl-100\" }\nconst _hoisted_2 = { class: \"col-12 col-xxl-7 chart-wrapper px-sm-2 px-md-4 pb-2_5 h-100\" }\nconst _hoisted_3 = { class: \"row\" }\nconst _hoisted_4 = { class: \"col\" }\nconst _hoisted_5 = {\n key: 0,\n class: \"row mt-2\"\n}\nconst _hoisted_6 = { class: \"col\" }\nconst _hoisted_7 = { class: \"row\" }\nconst _hoisted_8 = { class: \"col\" }\nconst _hoisted_9 = { class: \"col-12 col-xxl-5 px-sm-2 px-md-4 mt-0 mt-xxl-2_5 h-100 mb-2_5\" }\nconst _hoisted_10 = {\n key: 0,\n class: \"row mt-2_5 mt-xxl-0\"\n}\nconst _hoisted_11 = { class: \"col\" }\nconst _hoisted_12 = {\n key: 1,\n class: \"row row-cols-2\"\n}\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _renderSlot(_ctx.$slots, \"metric-title\")\n ])\n ]),\n (_ctx.$slots.filterTabs)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n _createElementVNode(\"div\", _hoisted_6, [\n _renderSlot(_ctx.$slots, \"filterTabs\")\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_7, [\n _createElementVNode(\"div\", _hoisted_8, [\n _renderSlot(_ctx.$slots, \"chart\")\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_9, [\n (_ctx.$slots.summaryTitle)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_10, [\n _createElementVNode(\"div\", _hoisted_11, [\n _renderSlot(_ctx.$slots, \"summaryTitle\")\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.$slots.metricStats)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_12, [\n _renderSlot(_ctx.$slots, \"metricStats\")\n ]))\n : _createCommentVNode(\"\", true),\n _renderSlot(_ctx.$slots, \"metric-highlight\")\n ])\n ]))\n}","\r\nimport { Options, Vue } from \"vue-class-component\";\r\n\r\n@Options({\r\n props: {},\r\n})\r\nexport default class MetricGrid extends Vue {}\r\n","import { render } from \"./MetricGrid.vue?vue&type=template&id=21d667ac&ts=true\"\nimport script from \"./MetricGrid.vue?vue&type=script&lang=ts\"\nexport * from \"./MetricGrid.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, withModifiers as _withModifiers, normalizeClass as _normalizeClass, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\n_pushScopeId(\"data-v-25184b14\")\nconst _hoisted_1 = { class: \"filter-bar\" }\nconst _hoisted_2 = [\"onClick\"]\n_popScopeId()\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.options, (option) => {\n return (_openBlock(), _createElementBlock(\"button\", {\n type: \"button\",\n key: option,\n onClick: _withModifiers(($event: any) => (_ctx.handleClick(option)), [\"prevent\"]),\n class: _normalizeClass([\"btn-tab\", { active: _ctx.active == option }])\n }, _toDisplayString(option === 0 ? \"Lifetime\" : (option === 1) ? \"1 Year\" : option + \" Years\"), 11, _hoisted_2))\n }), 128))\n ]))\n}","\r\nimport { Options, Vue } from \"vue-class-component\";\r\n\r\n@Options({\r\n props: {\r\n options: Array,\r\n },\r\n})\r\nexport default class FilterTabs extends Vue {\r\n active = 0;\r\n\r\n handleClick(option: number) {\r\n this.active = option;\r\n this.$emit(\"handleClick\", option);\r\n }\r\n}\r\n","import { render } from \"./FilterTabs.vue?vue&type=template&id=25184b14&scoped=true&ts=true\"\nimport script from \"./FilterTabs.vue?vue&type=script&lang=ts\"\nexport * from \"./FilterTabs.vue?vue&type=script&lang=ts\"\n\nimport \"./FilterTabs.vue?vue&type=style&index=0&id=25184b14&scoped=true&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-25184b14\"]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"p\", {\n class: _normalizeClass([\"text-body mb-0_5\", _ctx.featured ? 'text-type-5-bold ' : 'text-type-7-bold '])\n }, _toDisplayString(_ctx.label), 3),\n _createElementVNode(\"p\", {\n class: _normalizeClass(_ctx.featured ? 'display-title' : 'text-type-2-bold')\n }, _toDisplayString(_ctx.value), 3)\n ], 64))\n}","\r\nimport { Options, Vue } from \"vue-class-component\";\r\n\r\n@Options({\r\n props: {\r\n label: String,\r\n value: String,\r\n featured: Boolean,\r\n },\r\n})\r\nexport default class MetricStat extends Vue {}\r\n","import { render } from \"./MetricStat.vue?vue&type=template&id=47f6cf4a&ts=true\"\nimport script from \"./MetricStat.vue?vue&type=script&lang=ts\"\nexport * from \"./MetricStat.vue?vue&type=script&lang=ts\"\n\nimport \"./MetricStat.vue?vue&type=style&index=0&id=47f6cf4a&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"text-type-7-bold text-right mb-0 mt-1\" }\nconst _hoisted_2 = /*#__PURE__*/_createTextVNode(\" Source: \")\nconst _hoisted_3 = [\"href\", \"aria-label\"]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"p\", _hoisted_1, [\n _hoisted_2,\n _createElementVNode(\"a\", {\n href: _ctx.href,\n target: \"_blank\",\n class: \"metric-source text-type-7\",\n \"aria-label\": `Open ${_ctx.metric.metric} source data`\n }, _toDisplayString(_ctx.metric.source), 9, _hoisted_3)\n ]))\n}","\r\nimport { Options, Vue } from \"vue-class-component\";\r\n\r\n@Options({\r\n props: {\r\n metric: Object,\r\n href: String,\r\n },\r\n})\r\nexport default class MetricSource extends Vue {\r\n handleClick() {\r\n this.$emit(\"handleClick\", null);\r\n }\r\n}\r\n","import { render } from \"./MetricSource.vue?vue&type=template&id=618700b8&ts=true\"\nimport script from \"./MetricSource.vue?vue&type=script&lang=ts\"\nexport * from \"./MetricSource.vue?vue&type=script&lang=ts\"\n\nimport \"./MetricSource.vue?vue&type=style&index=0&id=618700b8&lang=scss\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"row mt-2\" }\nconst _hoisted_2 = { class: \"col\" }\nconst _hoisted_3 = /*#__PURE__*/_createElementVNode(\"p\", { class: \"text-type-3-bold\" }, \"Highlights\", -1)\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _hoisted_3,\n _createElementVNode(\"p\", null, _toDisplayString(_ctx.content), 1)\n ])\n ]))\n}","\r\nimport { Options, Vue } from \"vue-class-component\";\r\n\r\n@Options({\r\n props: {\r\n content: String,\r\n },\r\n})\r\nexport default class MetricHighlight extends Vue {\r\n title!: string;\r\n}\r\n","import { render } from \"./MetricHighlight.vue?vue&type=template&id=4d996ded&ts=true\"\nimport script from \"./MetricHighlight.vue?vue&type=script&lang=ts\"\nexport * from \"./MetricHighlight.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./MetricSource.vue?vue&type=style&index=0&id=618700b8&lang=scss\"","import { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"text-type-2-bold\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"h1\", _hoisted_1, _toDisplayString(_ctx.title), 1))\n}","\r\nimport { Options, Vue } from 'vue-class-component';\r\n\r\n@Options({\r\n props: {\r\n title: String\r\n }\r\n})\r\nexport default class MetricTitle extends Vue {\r\n title!: string\r\n}\r\n","import { render } from \"./MetricTitle.vue?vue&type=template&id=43161482&ts=true\"\nimport script from \"./MetricTitle.vue?vue&type=script&lang=ts\"\nexport * from \"./MetricTitle.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./FilterTabs.vue?vue&type=style&index=0&id=25184b14&scoped=true&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./MetricStat.vue?vue&type=style&index=0&id=47f6cf4a&lang=scss\"","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}","import { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"section-title mb-1_5\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"h2\", _hoisted_1, _toDisplayString(_ctx.title), 1))\n}","\r\nimport { Options, Vue } from \"vue-class-component\";\r\n\r\n@Options({\r\n props: {\r\n title: String,\r\n },\r\n})\r\nexport default class SectionTitle extends Vue {\r\n title!: string;\r\n}\r\n","import { render } from \"./SectionTitle.vue?vue&type=template&id=af6d4d54&ts=true\"\nimport script from \"./SectionTitle.vue?vue&type=script&lang=ts\"\nexport * from \"./SectionTitle.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"D:\\\\a\\\\1\\\\s\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"sourceRoot":""}