generated from alphane/template
Adding in flashcard's and decks
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
import http from "@/api/http-client"
|
||||
import { type FiltersOptions, type ModelOrder, type Policy, type WhereOptions } from "@/api/base-api"
|
||||
|
||||
export type Flashcard = {
|
||||
id: number
|
||||
flashcardDeckId: number
|
||||
creatorId: number
|
||||
cardType: string
|
||||
front: string
|
||||
back: string | null
|
||||
createdAt: string
|
||||
updatedAt: string
|
||||
}
|
||||
|
||||
export type FlashcardWhereOptions = WhereOptions<Flashcard, "flashcardDeckId" | "creatorId" | "cardType">
|
||||
|
||||
export type FlashcardFiltersOptions = FiltersOptions<{
|
||||
search: string | string[]
|
||||
}>
|
||||
|
||||
export type FlashcardQueryOptions = {
|
||||
where?: FlashcardWhereOptions
|
||||
filters?: FlashcardFiltersOptions
|
||||
order?: ModelOrder[]
|
||||
page?: number
|
||||
perPage?: number
|
||||
}
|
||||
|
||||
export const flashcardsApi = {
|
||||
async list(params: FlashcardQueryOptions = {}): Promise<{
|
||||
flashcards: Flashcard[]
|
||||
totalCount: number
|
||||
}> {
|
||||
const { data } = await http.get("/api/flashcards", { params })
|
||||
return data
|
||||
},
|
||||
async get(flashcardId: number): Promise<{
|
||||
flashcard: Flashcard
|
||||
policy: Policy
|
||||
}> {
|
||||
const { data } = await http.get(`/api/flashcards/${flashcardId}`)
|
||||
return data
|
||||
},
|
||||
async create(attributes: Partial<Flashcard>): Promise<{
|
||||
flashcard: Flashcard
|
||||
}> {
|
||||
const { data } = await http.post("/api/flashcards", attributes)
|
||||
return data
|
||||
},
|
||||
async update(
|
||||
flashcardId: number,
|
||||
attributes: Partial<Flashcard>
|
||||
): Promise<{
|
||||
flashcard: Flashcard
|
||||
}> {
|
||||
const { data } = await http.patch(`/api/flashcards/${flashcardId}`, attributes)
|
||||
return data
|
||||
},
|
||||
async delete(flashcardId: number): Promise<void> {
|
||||
const { data } = await http.delete(`/api/flashcards/${flashcardId}`)
|
||||
return data
|
||||
},
|
||||
}
|
||||
|
||||
export default flashcardsApi
|
||||
Reference in New Issue
Block a user