{"version":3,"file":"static/chunks/9420.fa90e46121a4c2b5.js","mappings":"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","sources":["webpack://_N_E/./utils/debounce.js","webpack://_N_E/./components/Outage/Outage.js","webpack://_N_E/./components/Outage/index.js","webpack://_N_E/./components/Spinner/Spinner.js","webpack://_N_E/./components/Spinner/index.js","webpack://_N_E/./components/Outage/Outage.module.scss","webpack://_N_E/./components/Spinner/Spinner.module.scss"],"sourcesContent":["export const debounce = (fn, delay) => {\n let timerId;\n return (...args) => {\n clearTimeout(timerId);\n timerId = setTimeout(() => fn(...args), delay);\n };\n};\n","import React, { useState, useEffect } from 'react';\nimport { debounce } from '../../utils/debounce';\nimport { useTranslation } from 'next-i18next';\nimport axios from 'axios';\n\nimport Spinner from '../Spinner';\nimport styles from './Outage.module.scss';\n\nconst Outage = ({hideOngoingPlanned}) => {\n const [results, setResults] = useState({\n ongoing: [],\n planned: [],\n historic: [],\n historicLatest: [],\n });\n const [isLoading, setIsLoading] = useState(true);\n const [hasError, setError] = useState(false);\n\n const { t } = useTranslation();\n\n useEffect(() => {\n loadOptions();\n debounceLoadOptions();\n }, []);\n\n const loadOptions = () => {\n axios({\n method: 'GET',\n url: `/api/outage`,\n headers: {\n Accept: 'application/json',\n },\n })\n .then((response) => {\n setIsLoading(false);\n handleResult(response.data.result.result);\n\n setError(false);\n })\n .catch((error) => {\n setError(true);\n console.log(error.message);\n });\n };\n\n const sortByDate = (array, order) => {\n array.sort(function (a, b) {\n if (order === 'ascending') {\n return (\n new Date(a.startDate).getTime() -\n new Date(b.startDate).getTime()\n );\n } else if (order === 'descending') {\n return (\n new Date(b.startDate).getTime() -\n new Date(a.startDate).getTime()\n );\n }\n });\n };\n\n const debounceLoadOptions = debounce(loadOptions, 1000 * 60);\n\n const isOlderThanThirtyDays = (item) => {\n const thirtyDaysInMilliseconds = 30 * 24 * 60 * 60 * 1000;\n const timeDiff =\n new Date().getTime() - new Date(item.startDate).getTime();\n\n return thirtyDaysInMilliseconds <= timeDiff;\n };\n\n const handleResult = (response) => {\n const ongoing = response.filter((item) => {\n return item.statusDescription === 'Körs';\n });\n\n const planned = response.filter((item) => {\n return item.statusDescription === 'Planerad';\n });\n\n const historic = response.filter((item) => {\n return (\n item.statusDescription === 'Över' &&\n !isOlderThanThirtyDays(item)\n );\n });\n\n const historicLatest = response.filter((item) => {\n return (\n item.statusDescription === 'Över' && isOlderThanThirtyDays(item)\n );\n });\n\n sortByDate(ongoing, 'descending');\n sortByDate(planned, 'ascending');\n sortByDate(historic, 'descending');\n sortByDate(historicLatest, 'descending');\n\n setResults({\n ongoing: ongoing,\n planned: planned,\n historic: historic,\n historicLatest: historicLatest,\n });\n };\n\n const formatDate = (data) => {\n const date = new Date(data);\n\n const formatted = date.toLocaleString('sv-SE', {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n });\n\n return formatted;\n };\n\n return (\n
\n {t('Outage.ongoingText')}\n
\n )}\n\n\n {t('Outage.plannedText')}\n
\n )}\n >\n )}\n\n\n