Fetch latest version on all pages
This commit is contained in:
parent
31f2bd075a
commit
fa4c4c5085
4 changed files with 34 additions and 1 deletions
|
|
@ -9,10 +9,13 @@ import InfiniteScroll from 'react-infinite-scroll-component'
|
||||||
import { serverSideTranslations } from 'next-i18next/serverSideTranslations'
|
import { serverSideTranslations } from 'next-i18next/serverSideTranslations'
|
||||||
|
|
||||||
import api from '~utils/api'
|
import api from '~utils/api'
|
||||||
|
|
||||||
import setUserToken from '~utils/setUserToken'
|
import setUserToken from '~utils/setUserToken'
|
||||||
import extractFilters from '~utils/extractFilters'
|
import extractFilters from '~utils/extractFilters'
|
||||||
|
import fetchLatestVersion from '~utils/fetchLatestVersion'
|
||||||
import organizeRaids from '~utils/organizeRaids'
|
import organizeRaids from '~utils/organizeRaids'
|
||||||
import useDidMountEffect from '~utils/useDidMountEffect'
|
import useDidMountEffect from '~utils/useDidMountEffect'
|
||||||
|
import { appState } from '~utils/appState'
|
||||||
import { elements, allElement } from '~data/elements'
|
import { elements, allElement } from '~data/elements'
|
||||||
import { emptyPaginationObject } from '~utils/emptyStates'
|
import { emptyPaginationObject } from '~utils/emptyStates'
|
||||||
import { printError } from '~utils/reportError'
|
import { printError } from '~utils/reportError'
|
||||||
|
|
@ -30,6 +33,7 @@ interface Props {
|
||||||
meta: PaginationObject
|
meta: PaginationObject
|
||||||
raids: Raid[]
|
raids: Raid[]
|
||||||
sortedRaids: Raid[][]
|
sortedRaids: Raid[][]
|
||||||
|
version: AppUpdate
|
||||||
}
|
}
|
||||||
|
|
||||||
const ProfileRoute: React.FC<Props> = (props: Props) => {
|
const ProfileRoute: React.FC<Props> = (props: Props) => {
|
||||||
|
|
@ -99,6 +103,7 @@ const ProfileRoute: React.FC<Props> = (props: Props) => {
|
||||||
setTotalPages(props.meta.totalPages)
|
setTotalPages(props.meta.totalPages)
|
||||||
setRecordCount(props.meta.count)
|
setRecordCount(props.meta.count)
|
||||||
replaceResults(props.meta.count, props.teams)
|
replaceResults(props.meta.count, props.teams)
|
||||||
|
appState.version = props.version
|
||||||
}
|
}
|
||||||
setCurrentPage(1)
|
setCurrentPage(1)
|
||||||
}, [])
|
}, [])
|
||||||
|
|
@ -352,6 +357,9 @@ export const getServerSideProps = async ({ req, res, locale, query }: { req: Nex
|
||||||
setUserToken(req, res)
|
setUserToken(req, res)
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
// Fetch latest version
|
||||||
|
const version = await fetchLatestVersion()
|
||||||
|
|
||||||
// Fetch and organize raids
|
// Fetch and organize raids
|
||||||
let { raids, sortedRaids } = await api.endpoints.raids
|
let { raids, sortedRaids } = await api.endpoints.raids
|
||||||
.getAll()
|
.getAll()
|
||||||
|
|
@ -393,6 +401,7 @@ export const getServerSideProps = async ({ req, res, locale, query }: { req: Nex
|
||||||
meta: meta,
|
meta: meta,
|
||||||
raids: raids,
|
raids: raids,
|
||||||
sortedRaids: sortedRaids,
|
sortedRaids: sortedRaids,
|
||||||
|
version: version,
|
||||||
...(await serverSideTranslations(locale, ['common', 'roadmap'])),
|
...(await serverSideTranslations(locale, ['common', 'roadmap'])),
|
||||||
// Will be passed to the page component as props
|
// Will be passed to the page component as props
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ import { serverSideTranslations } from 'next-i18next/serverSideTranslations'
|
||||||
import Party from '~components/Party'
|
import Party from '~components/Party'
|
||||||
|
|
||||||
import api from '~utils/api'
|
import api from '~utils/api'
|
||||||
|
import fetchLatestVersion from '~utils/fetchLatestVersion'
|
||||||
import organizeRaids from '~utils/organizeRaids'
|
import organizeRaids from '~utils/organizeRaids'
|
||||||
import setUserToken from '~utils/setUserToken'
|
import setUserToken from '~utils/setUserToken'
|
||||||
import { appState } from '~utils/appState'
|
import { appState } from '~utils/appState'
|
||||||
|
|
@ -21,6 +22,7 @@ interface Props {
|
||||||
raids: Raid[]
|
raids: Raid[]
|
||||||
sortedRaids: Raid[][]
|
sortedRaids: Raid[][]
|
||||||
weaponKeys: GroupedWeaponKeys
|
weaponKeys: GroupedWeaponKeys
|
||||||
|
version: AppUpdate
|
||||||
}
|
}
|
||||||
|
|
||||||
const NewRoute: React.FC<Props> = (props: Props) => {
|
const NewRoute: React.FC<Props> = (props: Props) => {
|
||||||
|
|
@ -41,6 +43,7 @@ const NewRoute: React.FC<Props> = (props: Props) => {
|
||||||
appState.jobs = props.jobs
|
appState.jobs = props.jobs
|
||||||
appState.jobSkills = props.jobSkills
|
appState.jobSkills = props.jobSkills
|
||||||
appState.weaponKeys = props.weaponKeys
|
appState.weaponKeys = props.weaponKeys
|
||||||
|
appState.version = props.version
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|
@ -84,6 +87,10 @@ export const getServerSideProps = async ({ req, res, locale, query }: { req: Nex
|
||||||
setUserToken(req, res)
|
setUserToken(req, res)
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
// Fetch latest version
|
||||||
|
const version = await fetchLatestVersion()
|
||||||
|
|
||||||
|
// Fetch and organize raids
|
||||||
let { raids, sortedRaids } = await api.endpoints.raids
|
let { raids, sortedRaids } = await api.endpoints.raids
|
||||||
.getAll()
|
.getAll()
|
||||||
.then((response) => organizeRaids(response.data))
|
.then((response) => organizeRaids(response.data))
|
||||||
|
|
@ -105,6 +112,7 @@ export const getServerSideProps = async ({ req, res, locale, query }: { req: Nex
|
||||||
raids: raids,
|
raids: raids,
|
||||||
sortedRaids: sortedRaids,
|
sortedRaids: sortedRaids,
|
||||||
weaponKeys: weaponKeys,
|
weaponKeys: weaponKeys,
|
||||||
|
version: version,
|
||||||
...(await serverSideTranslations(locale, ['common', 'roadmap'])),
|
...(await serverSideTranslations(locale, ['common', 'roadmap'])),
|
||||||
// Will be passed to the page component as props
|
// Will be passed to the page component as props
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -12,8 +12,10 @@ import clonedeep from 'lodash.clonedeep'
|
||||||
import api from '~utils/api'
|
import api from '~utils/api'
|
||||||
import setUserToken from '~utils/setUserToken'
|
import setUserToken from '~utils/setUserToken'
|
||||||
import extractFilters from '~utils/extractFilters'
|
import extractFilters from '~utils/extractFilters'
|
||||||
|
import fetchLatestVersion from '~utils/fetchLatestVersion'
|
||||||
import organizeRaids from '~utils/organizeRaids'
|
import organizeRaids from '~utils/organizeRaids'
|
||||||
import useDidMountEffect from '~utils/useDidMountEffect'
|
import useDidMountEffect from '~utils/useDidMountEffect'
|
||||||
|
import { appState } from '~utils/appState'
|
||||||
import { elements, allElement } from '~data/elements'
|
import { elements, allElement } from '~data/elements'
|
||||||
import { emptyPaginationObject } from '~utils/emptyStates'
|
import { emptyPaginationObject } from '~utils/emptyStates'
|
||||||
import { printError } from '~utils/reportError'
|
import { printError } from '~utils/reportError'
|
||||||
|
|
@ -30,6 +32,7 @@ interface Props {
|
||||||
meta: PaginationObject
|
meta: PaginationObject
|
||||||
raids: Raid[]
|
raids: Raid[]
|
||||||
sortedRaids: Raid[][]
|
sortedRaids: Raid[][]
|
||||||
|
version: AppUpdate
|
||||||
}
|
}
|
||||||
|
|
||||||
const SavedRoute: React.FC<Props> = (props: Props) => {
|
const SavedRoute: React.FC<Props> = (props: Props) => {
|
||||||
|
|
@ -98,6 +101,7 @@ const SavedRoute: React.FC<Props> = (props: Props) => {
|
||||||
setTotalPages(props.meta.totalPages)
|
setTotalPages(props.meta.totalPages)
|
||||||
setRecordCount(props.meta.count)
|
setRecordCount(props.meta.count)
|
||||||
replaceResults(props.meta.count, props.teams)
|
replaceResults(props.meta.count, props.teams)
|
||||||
|
appState.version = props.version
|
||||||
}
|
}
|
||||||
setCurrentPage(1)
|
setCurrentPage(1)
|
||||||
}, [])
|
}, [])
|
||||||
|
|
@ -354,6 +358,9 @@ export const getServerSideProps = async ({ req, res, locale, query }: { req: Nex
|
||||||
setUserToken(req, res)
|
setUserToken(req, res)
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
// Fetch latest version
|
||||||
|
const version = await fetchLatestVersion()
|
||||||
|
|
||||||
// Fetch and organize raids
|
// Fetch and organize raids
|
||||||
let { raids, sortedRaids } = await api.endpoints.raids
|
let { raids, sortedRaids } = await api.endpoints.raids
|
||||||
.getAll()
|
.getAll()
|
||||||
|
|
@ -384,6 +391,7 @@ export const getServerSideProps = async ({ req, res, locale, query }: { req: Nex
|
||||||
meta: meta,
|
meta: meta,
|
||||||
raids: raids,
|
raids: raids,
|
||||||
sortedRaids: sortedRaids,
|
sortedRaids: sortedRaids,
|
||||||
|
version: version,
|
||||||
...(await serverSideTranslations(locale, ['common', 'roadmap'])),
|
...(await serverSideTranslations(locale, ['common', 'roadmap'])),
|
||||||
// Will be passed to the page component as props
|
// Will be passed to the page component as props
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -12,8 +12,10 @@ import clonedeep from 'lodash.clonedeep'
|
||||||
import api from '~utils/api'
|
import api from '~utils/api'
|
||||||
import setUserToken from '~utils/setUserToken'
|
import setUserToken from '~utils/setUserToken'
|
||||||
import extractFilters from '~utils/extractFilters'
|
import extractFilters from '~utils/extractFilters'
|
||||||
|
import fetchLatestVersion from '~utils/fetchLatestVersion'
|
||||||
import organizeRaids from '~utils/organizeRaids'
|
import organizeRaids from '~utils/organizeRaids'
|
||||||
import useDidMountEffect from '~utils/useDidMountEffect'
|
import useDidMountEffect from '~utils/useDidMountEffect'
|
||||||
|
import { appState } from '~utils/appState'
|
||||||
import { elements, allElement } from '~data/elements'
|
import { elements, allElement } from '~data/elements'
|
||||||
import { emptyPaginationObject } from '~utils/emptyStates'
|
import { emptyPaginationObject } from '~utils/emptyStates'
|
||||||
import { printError } from '~utils/reportError'
|
import { printError } from '~utils/reportError'
|
||||||
|
|
@ -29,6 +31,7 @@ interface Props {
|
||||||
teams?: Party[]
|
teams?: Party[]
|
||||||
meta: PaginationObject
|
meta: PaginationObject
|
||||||
sortedRaids: Raid[][]
|
sortedRaids: Raid[][]
|
||||||
|
version: AppUpdate
|
||||||
}
|
}
|
||||||
|
|
||||||
const TeamsRoute: React.FC<Props> = (props: Props) => {
|
const TeamsRoute: React.FC<Props> = (props: Props) => {
|
||||||
|
|
@ -97,6 +100,7 @@ const TeamsRoute: React.FC<Props> = (props: Props) => {
|
||||||
setTotalPages(props.meta.totalPages)
|
setTotalPages(props.meta.totalPages)
|
||||||
setRecordCount(props.meta.count)
|
setRecordCount(props.meta.count)
|
||||||
replaceResults(props.meta.count, props.teams)
|
replaceResults(props.meta.count, props.teams)
|
||||||
|
appState.version = props.version
|
||||||
}
|
}
|
||||||
setCurrentPage(1)
|
setCurrentPage(1)
|
||||||
}, [])
|
}, [])
|
||||||
|
|
@ -364,8 +368,11 @@ export const getServerSideProps = async ({ req, res, locale, query }: { req: Nex
|
||||||
// Set headers for server-side requests
|
// Set headers for server-side requests
|
||||||
setUserToken(req, res)
|
setUserToken(req, res)
|
||||||
|
|
||||||
// Fetch and organize raids
|
|
||||||
try {
|
try {
|
||||||
|
// Fetch latest version
|
||||||
|
const version = await fetchLatestVersion()
|
||||||
|
|
||||||
|
// Fetch and organize raids
|
||||||
let { raids, sortedRaids } = await api.endpoints.raids
|
let { raids, sortedRaids } = await api.endpoints.raids
|
||||||
.getAll()
|
.getAll()
|
||||||
.then((response) => organizeRaids(response.data))
|
.then((response) => organizeRaids(response.data))
|
||||||
|
|
@ -395,6 +402,7 @@ export const getServerSideProps = async ({ req, res, locale, query }: { req: Nex
|
||||||
meta: meta,
|
meta: meta,
|
||||||
raids: raids,
|
raids: raids,
|
||||||
sortedRaids: sortedRaids,
|
sortedRaids: sortedRaids,
|
||||||
|
version: version,
|
||||||
...(await serverSideTranslations(locale, ['common', 'roadmap'])),
|
...(await serverSideTranslations(locale, ['common', 'roadmap'])),
|
||||||
// Will be passed to the page component as props
|
// Will be passed to the page component as props
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue