@mojito-inc/core-service
Version:
Mojito Core API service for auction, payment, token
53 lines (50 loc) • 3.19 kB
JavaScript
import { __awaiter } from '../_virtual/_tslib.js';
import { useCallback, useMemo } from 'react';
import { useApolloClient } from '@apollo/client';
import { createSignatureToListNFTForSaleMutation, submitProofOfApprovalMutation, removeListingMutation, initiateRemoveListingMutation, updateTokenListingMutation, editTokenListingMutation } from './Queries.js';
/**
* Returns list item service
*
* @remarks
* This method is part of the list item service
*
* @returns {@link ListItemService} list item service
*
*/
const useListItem = () => {
const client = useApolloClient();
const createSignatureToListNFTForSale = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () {
const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: createSignatureToListNFTForSaleMutation, variables: param }));
const responseData = response.data;
return { data: responseData };
}), [client]);
const submitProofOfApproval = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () {
const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: submitProofOfApprovalMutation, variables: param }));
const responseData = response.data;
return { data: responseData };
}), [client]);
const removeListing = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () {
const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: removeListingMutation, variables: param }));
const responseData = response.data;
return { data: responseData };
}), [client]);
const initiateRemoveListing = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () {
const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: initiateRemoveListingMutation, variables: param }));
const responseData = response.data;
return { data: responseData };
}), [client]);
const updateTokenListing = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () {
const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: updateTokenListingMutation, variables: param }));
const responseData = response.data;
return { data: responseData };
}), [client]);
const editTokenListing = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () {
const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: editTokenListingMutation, variables: param }));
const responseData = response.data;
return { data: responseData };
}), [client]);
return useMemo(() => {
return { createSignatureToListNFTForSale, submitProofOfApproval, removeListing, initiateRemoveListing, updateTokenListing, editTokenListing };
}, [createSignatureToListNFTForSale, submitProofOfApproval, removeListing, initiateRemoveListing, updateTokenListing, editTokenListing]);
};
export { useListItem as default };