Newer
Older
import {
APIListPaginated,
APIRemove,
APIRetrieve,
APIUpdate,
createExtendableAPI,
} from '@rokoli/bnb/drf'
import { defineStore } from 'pinia'
import { createSteeringURL } from '@/api'
import { steeringAuthInit } from '@/stores/auth'
import { Schedule } from '@/types'
import { components } from '@/steering-types'
type ScheduleCreateUpdateRequest = components['schemas']['ScheduleCreateUpdateRequest']
export const useScheduleStore = defineStore('schedules', () => {
const endpoint = createSteeringURL.prefix('schedules')
const { api, base } = createExtendableAPI<Schedule>(endpoint, steeringAuthInit)
const { update } = APIUpdate<Schedule, ScheduleCreateUpdateRequest>(api)
return {
...base,
update,
...APIListPaginated(api),
...APIRetrieve(api),
...APIRemove(api),
}
})