diff --git a/src/router/index.ts b/src/router/index.ts index 394b528..b1f6e9f 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -52,6 +52,12 @@ export const routes: RouteRecordRaw[] = [ component: () => import('../views/ScheduleView.vue'), props: castScheduleRouteParams }, + { + path: '/transactions/:seasonNumber?/:weekNumber?', + name: 'transactions', + component: () => import('../views/TransactionsView.vue'), + props: castTransactionsRouteParams + }, { path: '/managers/:managerName?', name: 'managers', @@ -87,6 +93,13 @@ function castScheduleRouteParams(route: { params: { seasonNumber: string, weekNu } } +function castTransactionsRouteParams(route: { params: { seasonNumber: string, weekNumber: string } }) { + return { + seasonNumber: Number.isNaN(Number.parseInt(route.params.seasonNumber)) ? undefined : Number(route.params.seasonNumber), + weekNumber: Number.isNaN(Number.parseInt(route.params.weekNumber)) ? undefined : Number(route.params.weekNumber) + } +} + function castManagersRouteParams(route: { params: { managerName: string } }) { return { managerName: route.params.managerName diff --git a/src/services/transactionsService.ts b/src/services/transactionsService.ts index 8a82599..a41b1ac 100644 --- a/src/services/transactionsService.ts +++ b/src/services/transactionsService.ts @@ -25,6 +25,17 @@ export async function fetchTransactionsByTeamAndWeek(seasonNumber: number, teamA return transactionsResponse.transactions } +export async function fetchTransactionsByWeek(seasonNumber: number, weekNumber: number): Promise { + const response = await fetch(`${SITE_URL}/api/v3/transactions?season=${seasonNumber}&week_start=${weekNumber}&week_end=${weekNumber}`) + + const transactionsResponse: { + count: number + transactions: Transaction[] + } = await response.json() + + return transactionsResponse.transactions +} + export async function fetchTransactionsForCurrentSeasonByPlayerName(playerName: string): Promise { const response = await fetch(`${SITE_URL}/api/v3/transactions?season=${CURRENT_SEASON}&player_name=${playerName}`) diff --git a/src/views/TransactionsView.vue b/src/views/TransactionsView.vue index e69de29..0d03b0f 100644 --- a/src/views/TransactionsView.vue +++ b/src/views/TransactionsView.vue @@ -0,0 +1,159 @@ + + +