UNPKG

@mojito-inc/core-service

Version:

Mojito Core API service for auction, payment, token

179 lines (176 loc) 10.4 kB
import { __awaiter } from '../_virtual/_tslib.js'; import { useCallback, useMemo } from 'react'; import { useApolloClient } from '@apollo/client'; import { getAllRegistryTokensQueries, getRegistryCollectionsV1Query, getAllRegistryTokensV2Query } from './Queries/AllRegistryTokenQueries.js'; import { initiateBuyNFTMutation, updateTransactionHashMutation, generateSecondaryInvoiceQueries, generatePrimaryInvoiceQueries, getUserOrderActivityQueries, completeOnchainBuyQueries, saveUserWalletSessionQueries } from './Queries/BuyNowQueries.js'; import { addNFTToFavoriteMutation, removeNFTFromFavoriteMutation, getNFTFavoriteListByUserQueries } from './Queries/FavoriteQueries.js'; import { getNFTDetailsQueries, getNFTHistoryQueries, getNFTAttributesRarityQueries } from './Queries/NFTDetailsQueries.js'; import { transferNFTMutation } from './Queries/TransferNFTQueries.js'; import { getAllInvoicesQueries, getMyInvoicesQueries } from './Queries/AllInvoicesQueries.js'; import { getFileSignedURLQuery } from './Queries/FileSignedUrlQueries.js'; import { getCollectionTraitsForSMPQuery } from './Queries/TraitsQueries.js'; /** * Returns NFT service * * @remarks * This method is part of the NFT service * * @returns {@link NFTService} NFT service * */ const useNFT = () => { const client = useApolloClient(); const addNFTToFavorite = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: addNFTToFavoriteMutation, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const removeNFTFromFavorite = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: removeNFTFromFavoriteMutation, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getNFTFavoriteListByUser = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getNFTFavoriteListByUserQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getAllRegistryTokens = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getAllRegistryTokensQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getRegistryCollections = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getRegistryCollectionsV1Query, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getAllRegistryTokensV2 = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getAllRegistryTokensV2Query, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getCollectionTraits = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getCollectionTraitsForSMPQuery, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getNFTDetails = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getNFTDetailsQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getNFTHistory = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getNFTHistoryQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getNFTAttributesRarity = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getNFTAttributesRarityQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const initiateBuyNFT = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: initiateBuyNFTMutation, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const updateTransactionHash = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: updateTransactionHashMutation, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const generateSecondaryInvoice = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: generateSecondaryInvoiceQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const generatePrimaryInvoice = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: generatePrimaryInvoiceQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const userOrderActivity = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getUserOrderActivityQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const transferNFT = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: transferNFTMutation, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getAllInvoices = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getAllInvoicesQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getMyInvoices = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getMyInvoicesQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const getFileSignedUrl = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.query(Object.assign(Object.assign({}, options), { query: getFileSignedURLQuery, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const completeOnchainBuy = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: completeOnchainBuyQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); const saveUserWalletSession = useCallback((param, options) => __awaiter(void 0, void 0, void 0, function* () { const response = yield client.mutate(Object.assign(Object.assign({}, options), { mutation: saveUserWalletSessionQueries, variables: param })); const responseData = response.data; return { data: responseData }; }), [client]); return useMemo(() => { return { addNFTToFavorite, removeNFTFromFavorite, getNFTFavoriteListByUser, getAllRegistryTokens, getNFTDetails, getNFTHistory, getNFTAttributesRarity, initiateBuyNFT, updateTransactionHash, generateSecondaryInvoice, generatePrimaryInvoice, userOrderActivity, transferNFT, getAllInvoices, getMyInvoices, getFileSignedUrl, completeOnchainBuy, saveUserWalletSession, getCollectionTraits, getAllRegistryTokensV2, getRegistryCollections, }; }, [ addNFTToFavorite, removeNFTFromFavorite, getNFTFavoriteListByUser, getAllRegistryTokens, getNFTDetails, getNFTHistory, getNFTAttributesRarity, initiateBuyNFT, updateTransactionHash, generateSecondaryInvoice, generatePrimaryInvoice, userOrderActivity, transferNFT, getAllInvoices, getMyInvoices, getFileSignedUrl, completeOnchainBuy, saveUserWalletSession, getCollectionTraits, getAllRegistryTokensV2, getRegistryCollections, ]); }; export { useNFT as default };