121 lines
2.9 KiB
JavaScript
Executable File
121 lines
2.9 KiB
JavaScript
Executable File
import actions from './actions'
|
|
import { address } from './../../apiAddress'
|
|
|
|
const fetchGetChart = async () => {
|
|
const response = await
|
|
fetch (
|
|
address + '/index/exchange/' + 1800, {
|
|
method: 'GET',
|
|
credential: 'same-origin'
|
|
})
|
|
const json = await response.json()
|
|
return json
|
|
}
|
|
|
|
const fetchGetUserTriggers = async (userID) => {
|
|
const response = await
|
|
fetch (
|
|
address + '/index/user/' + userID + '/trigger', {
|
|
method: 'GET',
|
|
credential: 'same-origin'
|
|
})
|
|
const json = await response.json()
|
|
return json
|
|
}
|
|
|
|
const fetchGetUserTransactions = async (userID) => {
|
|
const response = await
|
|
fetch (
|
|
address + '/index/user/' + userID + '/transaction', {
|
|
method: 'GET',
|
|
credential: 'same-origin'
|
|
})
|
|
const json = await response.json()
|
|
return json
|
|
}
|
|
|
|
const fetchGetUserNotifications = async (userID) => {
|
|
const response = await
|
|
fetch (
|
|
address + '/index/user/' + userID + '/notification', {
|
|
method: 'GET',
|
|
credential: 'same-origin'
|
|
})
|
|
const json = await response.json()
|
|
return json
|
|
}
|
|
|
|
const fetchAddTrigger = async (data) => {
|
|
fetch (
|
|
address + '/index/user/' + data.user_id + '/trigger', {
|
|
method: 'POST',
|
|
credential: 'same-origin',
|
|
body: JSON.stringify(data)
|
|
}
|
|
)
|
|
}
|
|
|
|
const fetchPrognosis = async (data) => {
|
|
const response = await fetch (
|
|
address + '/index/exchange/1800/prognosis/' + data.price, {
|
|
method: 'GET',
|
|
credential: 'same-origin'
|
|
}
|
|
)
|
|
const json = response.json()
|
|
return json
|
|
}
|
|
|
|
const fetchDeleteNotification = async (data) => {
|
|
const response = await fetch (
|
|
address + '/index/notification/' + data.id, {
|
|
method: 'DELETE',
|
|
credential: 'same-origin',
|
|
body: JSON.stringify(data)
|
|
}
|
|
)
|
|
const json = response.json()
|
|
return json
|
|
}
|
|
|
|
export const getChart = () =>
|
|
async (dispatch) => {
|
|
const chart = await fetchGetChart()
|
|
dispatch(actions.setChart(chart))
|
|
}
|
|
|
|
export const getUserTriggers = (userID) =>
|
|
async (dispatch) => {
|
|
const triggers = await fetchGetUserTriggers(userID)
|
|
dispatch(actions.setTriggers(triggers))
|
|
}
|
|
|
|
export const getUserTransactions = (userID) =>
|
|
async (dispatch) => {
|
|
const transactions = await fetchGetUserTransactions(userID)
|
|
dispatch(actions.setTransactions(transactions))
|
|
}
|
|
|
|
export const getUserNotifications = (userID) =>
|
|
async (dispatch) => {
|
|
const notifications = await fetchGetUserNotifications(userID)
|
|
dispatch(actions.setNotifications(notifications))
|
|
}
|
|
|
|
export const addTrigger = (data) =>
|
|
async (dispatch) => {
|
|
await fetchAddTrigger(data)
|
|
}
|
|
|
|
export const checkPrognosis = (data) =>
|
|
async (dispatch) => {
|
|
const prognosis = await fetchPrognosis(data)
|
|
dispatch(actions.setNewPrognosis(prognosis))
|
|
}
|
|
|
|
export const deleteNotification = (data) =>
|
|
async (dispatch) => {
|
|
dispatch(actions.deleteOldNotification(data))
|
|
await fetchDeleteNotification(data)
|
|
}
|