Revize a7264b57
Přidáno uživatelem Fantič před téměř 2 roky(ů)
src/stores/actions/itemThunks.ts | ||
---|---|---|
1 | 1 |
import { createAsyncThunk } from "@reduxjs/toolkit" |
2 | 2 |
import { getItemRequest } from "../../api/itemservice" |
3 | 3 |
import { getItemNotesRequest } from "../../api/notesservice" |
4 |
import { ItemState } from "../../types/item"; |
|
4 |
import { ItemViewState } from "../../types/item";
|
|
5 | 5 |
|
6 | 6 |
|
7 | 7 |
export const getItem = createAsyncThunk( |
... | ... | |
17 | 17 |
// data with image |
18 | 18 |
if (response.status === 200 && response.data.object.length > 1) { |
19 | 19 |
return { |
20 |
id: itemId, |
|
20 | 21 |
fullView: true, |
21 | 22 |
|
22 | 23 |
concordances: response.data.concordances, |
... | ... | |
47 | 48 |
// data without image |
48 | 49 |
else if (response.status === 200 && response.data.object.length == 1) { |
49 | 50 |
return { |
51 |
id: itemId, |
|
50 | 52 |
fullView: false, |
51 |
|
|
52 | 53 |
concordances: response.data.concordances, |
53 | 54 |
|
54 |
authorName: response.data.object[0].name[0].getty_data.display_name, |
|
55 |
authorDisplayName: response.data.object[0].name[0].getty_data.display_name,
|
|
55 | 56 |
workName: response.data.object[0].caption, |
57 |
inventoryItem: response.data.text, |
|
58 |
searchSubjects: response.data.search_subject, |
|
56 | 59 |
} |
57 | 60 |
} { |
58 | 61 |
return Promise.reject(response.data ? response.data : "Error") |
... | ... | |
66 | 69 |
export const getNextConcordance = createAsyncThunk( |
67 | 70 |
"item/getNextConcordance", |
68 | 71 |
async (_, { getState, dispatch }) => { |
69 |
const state = getState() as ItemState; |
|
72 |
const state = getState() as ItemViewState;
|
|
70 | 73 |
|
71 | 74 |
const nextIndex = (state.selectedConcordance + 1) % state.concordances.length; |
72 | 75 |
|
... | ... | |
81 | 84 |
export const getPreviousConcordance = createAsyncThunk( |
82 | 85 |
"item/getPreviousConcordance", |
83 | 86 |
async (_, { getState, dispatch }) => { |
84 |
const state = getState() as ItemState; |
|
87 |
const state = getState() as ItemViewState;
|
|
85 | 88 |
const previousIndex = (state.selectedConcordance - 1 + state.concordances.length) % state.concordances.length; |
86 | 89 |
await dispatch(getItem(state.concordances[previousIndex].id)); |
87 | 90 |
return previousIndex; |
Také k dispozici: Unified diff
re #10454: ItemView: minor api call update