@smartbills/react-hooks-sdk 0.0.2-alpha.29 → 0.0.2-alpha.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/dist/@types/index.d.ts +19 -5
  2. package/dist/cjs/apis/SBApiKeys.cjs +4 -0
  3. package/dist/cjs/apis/SBApiKeys.cjs.map +1 -1
  4. package/dist/cjs/apis/customers/CustomerAPI.cjs +19 -20
  5. package/dist/cjs/apis/customers/CustomerAPI.cjs.map +1 -1
  6. package/dist/cjs/apis/customers/CustomerBalanceTransactionsAPI.cjs +26 -0
  7. package/dist/cjs/apis/customers/CustomerBalanceTransactionsAPI.cjs.map +1 -0
  8. package/dist/cjs/apis/customers/CustomerPaymentMethodsAPI.cjs +26 -0
  9. package/dist/cjs/apis/customers/CustomerPaymentMethodsAPI.cjs.map +1 -0
  10. package/dist/cjs/apis/vendors/VendorsAPI.cjs +106 -0
  11. package/dist/cjs/apis/vendors/VendorsAPI.cjs.map +1 -0
  12. package/dist/cjs/index.cjs +11 -1
  13. package/dist/cjs/index.cjs.map +1 -1
  14. package/dist/esm/apis/SBApiKeys.mjs +4 -0
  15. package/dist/esm/apis/SBApiKeys.mjs.map +1 -1
  16. package/dist/esm/apis/customers/CustomerAPI.mjs +20 -20
  17. package/dist/esm/apis/customers/CustomerAPI.mjs.map +1 -1
  18. package/dist/esm/apis/customers/CustomerBalanceTransactionsAPI.mjs +23 -0
  19. package/dist/esm/apis/customers/CustomerBalanceTransactionsAPI.mjs.map +1 -0
  20. package/dist/esm/apis/customers/CustomerPaymentMethodsAPI.mjs +23 -0
  21. package/dist/esm/apis/customers/CustomerPaymentMethodsAPI.mjs.map +1 -0
  22. package/dist/esm/apis/vendors/VendorsAPI.mjs +101 -0
  23. package/dist/esm/apis/vendors/VendorsAPI.mjs.map +1 -0
  24. package/dist/esm/index.mjs +4 -1
  25. package/dist/esm/index.mjs.map +1 -1
  26. package/dist/umd/index.js +158 -20
  27. package/dist/umd/index.js.map +1 -1
  28. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/api.tsx","../../src/apis/SBApiKeys.ts","../../src/apis/api-logs/LogsAPI.ts","../../src/apis/bank-accounts/BankAccountAPI.tsx","../../src/apis/bank-transactions/BankTransactionAPI.tsx","../../src/components/SmartbillsSDKProvider.tsx","../../src/apis/banks/BanksAPI.tsx","../../src/apis/cards/CardsAPI.tsx","../../src/apis/cards/CardSetupIntentsAPI.tsx","../../src/apis/documents/DocumentsAPI.tsx","../../src/apis/friends/FriendsAPI.ts","../../src/apis/merchants/MerchantAPI.tsx","../../src/apis/customers/CustomerAPI.ts","../../src/apis/domains/DomainAPI.tsx","../../src/apis/locations/LocationsAPI.ts","../../src/apis/oauth/OAuthAPI.tsx","../../src/apis/organizations/OrganizationsAPI.tsx","../../src/apis/payment-methods/PaymentMethodsAPI.tsx","../../src/apis/promo-codes/PromoCodesAPI.tsx","../../src/apis/receipts/ReceiptAPI.tsx","../../src/apis/reviews/ReviewsAPI.tsx","../../src/apis/taxes/TaxesAPI.tsx","../../src/apis/user/UserAPI.tsx","../../src/apis/users/UsersAPI.tsx"],"sourcesContent":["import { SBClient } from \"@smartbills/sdk\";\r\nimport React, { createContext, useContext, ReactNode } from \"react\";\r\n\r\nconst ApiClientContext = createContext<SBClient | undefined>(undefined);\r\n\r\ninterface ApiClientProviderProps {\r\n\tclient: SBClient;\r\n\tchildren: ReactNode;\r\n}\r\n\r\nexport const ApiClientProvider: React.FC<ApiClientProviderProps> = ({\r\n\tclient,\r\n\tchildren,\r\n}) => (\r\n\t<ApiClientContext.Provider value={client}>\r\n\t\t{children}\r\n\t</ApiClientContext.Provider>\r\n);\r\n\r\nexport const useApiClient = (): SBClient => {\r\n\tconst context = useContext(ApiClientContext);\r\n\tif (context === undefined) {\r\n\t\tthrow new Error(\r\n\t\t\t\"useApiClient must be used within an ApiClientProvider\",\r\n\t\t);\r\n\t}\r\n\treturn context;\r\n};\r\n","export enum SBApiKeys {\r\n\tBanks = \"BANKS\",\r\n\tBankAccounts = \"BANK_ACCOUNT\",\r\n\tBankAccountTransactions = \"BANK_ACCOUNT_TRANSACTIONS\",\r\n\tBankLinkToken = \"BANK_LINK_TOKEN\",\r\n\tBankLink = \"BANK_LINK\",\r\n\tBankTransactions = \"BANK_TRANSACTIONS\",\r\n\tBankInstitutions = \"BANK_INSTITUTIONS\",\r\n\tCards = \"CARDS\",\r\n\tCardSetupIntents = \"CARDS_SETUP_INTENTS\",\r\n\tDocuments = \"DOCUMENTS\",\r\n\tOrganizations = \"ORGANIZATIONS\",\r\n\tLogs = \"LOGS\",\r\n\tLocations = \"LOCATIONS\",\r\n\tMerchants = \"MERCHANTS\",\r\n\tPromoCodes = \"PROMO_CODES\",\r\n\tDomains = \"DOMAINS\",\r\n\tUser = \"USER\",\r\n\tUsers = \"USERS\",\r\n\tPaymentMethods = \"PAYMENT_METHODS\",\r\n\tTaxes = \"TAXES\",\r\n\tFriends = \"FRIENDS\",\r\n}\r\n","import { LogListRequest, SBRequestOptions } from \"@smartbills/sdk\";\r\nimport { useQuery } from \"@tanstack/react-query\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useGetLogById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.Logs, id],\r\n\t\tqueryFn: async () => await client.logs.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useListLogs = (\r\n\trequest: LogListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.Logs, request],\r\n\t\tqueryFn: async () => await client.logs.list(request, options, config),\r\n\t});\r\n};\r\n","import { useApiClient } from \"@/api\";\r\nimport {\r\n\tBankAccountListRequest,\r\n\tBankTransactionListRequest,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useInfiniteQuery, useQuery } from \"@tanstack/react-query\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\n\r\nexport const useGetBankAccountById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<BankTransactionListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.BankAccounts, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn client.bankAccounts.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetBankAccounts = (request: BankAccountListRequest) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.BankAccounts, request],\r\n\t\tqueryFn: async (request) => {\r\n\t\t\treturn client.bankAccounts.get(request);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListBankAccountTransanctions = (\r\n\tid: number,\r\n\trequest: BankTransactionListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<BankTransactionListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: request.page,\r\n\t\tqueryKey: [SBApiKeys.BankAccounts, id, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\trequest.page = pageParam;\r\n\t\t\treturn client.bankAccounts.listTransactions(\r\n\t\t\t\tid,\r\n\t\t\t\trequest,\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetPreviousPageParam: (firstPage) => {\r\n\t\t\tif (firstPage.pagination.currentPage === 1) {\r\n\t\t\t\treturn 1;\r\n\t\t\t}\r\n\t\t\treturn firstPage.pagination.currentPage - 1;\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n","import { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport {\r\n\tBankTransactionListRequest,\r\n\tPaginatedResult,\r\n\tSBBankTransaction,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\n\r\nexport const useListBankTransactions = (\r\n\trequest: BankTransactionListRequest,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: request.page,\r\n\t\tqueryKey: [\"bankTransactions\", request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn client.bankTransactions.list({\r\n\t\t\t\t...request,\r\n\t\t\t\tpage: pageParam,\r\n\t\t\t});\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage: PaginatedResult<SBBankTransaction>) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetBankTransaction = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBankTransaction, SBApiException>({\r\n\t\tqueryKey: [\"bankTransaction\", id],\r\n\t\tqueryFn: async () => await client.bankTransactions.getById(id),\r\n\t});\r\n};\r\n\r\n// export const useAssociateReceipt = () => {\r\n// \tconst client = useApiClient();\r\n// \treturn useMutation<\r\n// \t\tSBReceipt,\r\n// \t\tSBApiException,\r\n// \t\t{ id: number; receiptId: number }\r\n// \t>({\r\n// \t\tmutationFn: ({ id, receiptId }) => await,\r\n// \t\tonSuccess: (_, { id, receiptId }) => {\r\n// \t\t\tqueryClient.invalidateQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tqueryClient.invalidateQueries({ queryKey: [\"receipt\", receiptId] });\r\n// \t\t},\r\n// \t});\r\n// };\r\n\r\n// export const useLinkDocuments = () => {\r\n// \tconst client = useApiClient();\r\n// \treturn useMutation<\r\n// \t\tSBDocument[],\r\n// \t\tSBApiException,\r\n// \t\t{ id: number; documents: number[] }\r\n// \t>({\r\n// \t\tmutationFn: async({ id, documents }) => await client.bankAccounts,\r\n// \t\tonSuccess: (_, { id }) => {\r\n// \t\t\tqueryClient.invalidateQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tqueryClient.invalidateQueries({ queryKey: [\"pendingDocuments\"] });\r\n// \t\t},\r\n// \t});\r\n// };\r\n\r\n// export const useUnlinkDocument = () => {\r\n// \tconst client = useApiClient();\r\n// \treturn useMutation<SBDocument, SBApiException, { id: number; documentId: number }>({\r\n// \t\tmutationFn: ({ id, documentId }) => {\r\n// \t\t},\r\n// \t\tonMutate: async ({ id, documentId }) => {\r\n// \t\t\tawait queryClient.cancelQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tconst previousTransaction =\r\n// \t\t\t\tqueryClient.getQueryData<SBBankTransaction>([\r\n// \t\t\t\t\t\"bankTransaction\",\r\n// \t\t\t\t\tid,\r\n// \t\t\t\t]);\r\n// \t\t\tqueryClient.setQueryData<SBBankTransaction>(\r\n// \t\t\t\t[\"bankTransaction\", id],\r\n// \t\t\t\t(old) => {\r\n// \t\t\t\t\tif (old) {\r\n// \t\t\t\t\t\treturn {\r\n// \t\t\t\t\t\t\t...old,\r\n// \t\t\t\t\t\t\tdocuments: old.documents.filter(\r\n// \t\t\t\t\t\t\t\t(doc) => doc.id !== documentId,\r\n// \t\t\t\t\t\t\t),\r\n// \t\t\t\t\t\t};\r\n// \t\t\t\t\t}\r\n// \t\t\t\t\treturn old;\r\n// \t\t\t\t},\r\n// \t\t\t);\r\n// \t\t\treturn { previousTransaction };\r\n// \t\t},\r\n// \t\tonError: (_, __, context) => {\r\n// \t\t\tif (context?.previousTransaction) {\r\n// \t\t\t\tqueryClient.setQueryData(\r\n// \t\t\t\t\t[\"bankTransaction\", context.previousTransaction.id],\r\n// \t\t\t\t\tcontext.previousTransaction,\r\n// \t\t\t\t);\r\n// \t\t\t}\r\n// \t\t},\r\n// \t\tonSettled: (data, error, { id }) => {\r\n// \t\t\tqueryClient.invalidateQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tqueryClient.invalidateQueries({ queryKey: [\"pendingDocuments\"] });\r\n// \t\t},\r\n// \t});\r\n// };\r\n\r\n// export const useRenameDocument = () => {\r\n// \tconst client = useApiClient();\r\n// \treturn useMutation<SBDocument, SBApiException>({\r\n// \t\tmutationFn: (id: number, documentId, request) =>\r\n// \t\t\tclient.bankTransactions.renameDocument(id, documentId, request),\r\n// \t\tonMutate: async ({ id, documentId, request }) => {\r\n// \t\t\tawait queryClient.cancelQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tconst previousTransaction =\r\n// \t\t\t\tqueryClient.getQueryData<SBBankTransaction>([\r\n// \t\t\t\t\t\"bankTransaction\",\r\n// \t\t\t\t\tid,\r\n// \t\t\t\t]);\r\n// \t\t\tqueryClient.setQueryData<SBBankTransaction>(\r\n// \t\t\t\t[\"bankTransaction\", id],\r\n// \t\t\t\t(old) => {\r\n// \t\t\t\t\tif (old) {\r\n// \t\t\t\t\t\tconst index = old.documents.findIndex(\r\n// \t\t\t\t\t\t\t(doc) => doc.id === documentId,\r\n// \t\t\t\t\t\t);\r\n// \t\t\t\t\t\tif (index !== -1) {\r\n// \t\t\t\t\t\t\told.documents[index].name = request.name;\r\n// \t\t\t\t\t\t}\r\n// \t\t\t\t\t\treturn old;\r\n// \t\t\t\t\t}\r\n// \t\t\t\t\treturn old;\r\n// \t\t\t\t},\r\n// \t\t\t);\r\n// \t\t\treturn { previousTransaction };\r\n// \t\t},\r\n// \t\tonError: (_, __, context) => {\r\n// \t\t\tif (context?.previousTransaction) {\r\n// \t\t\t\tqueryClient.setQueryData(\r\n// \t\t\t\t\t[\"bankTransaction\", context.previousTransaction.id],\r\n// \t\t\t\t\tcontext.previousTransaction,\r\n// \t\t\t\t);\r\n// \t\t\t}\r\n// \t\t},\r\n// \t\tonSettled: (data, error, { id }) => {\r\n// \t\t\tqueryClient.invalidateQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tqueryClient.invalidateQueries({ queryKey: [\"pendingDocuments\"] });\r\n// \t\t},\r\n// \t});\r\n// };\r\n","import { ApiClientProvider } from \"@/api\";\r\nimport { SBClient } from \"@smartbills/sdk\";\r\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\r\nimport React, { PropsWithChildren } from \"react\";\r\n\r\nexport const queryClient = new QueryClient();\r\n\r\nexport function SmartbillsSDKProvider({\r\n\tclient,\r\n\tchildren,\r\n}: PropsWithChildren<{ client: SBClient }>) {\r\n\treturn (\r\n\t\t<ApiClientProvider client={client}>\r\n\t\t\t<QueryClientProvider client={queryClient}>\r\n\t\t\t\t{children}\r\n\t\t\t</QueryClientProvider>\r\n\t\t</ApiClientProvider>\r\n\t);\r\n}\r\n","import {\r\n\tQueryKey,\r\n\tuseInfiniteQuery,\r\n\tuseMutation,\r\n\tuseQuery,\r\n} from \"@tanstack/react-query\";\r\nimport {\r\n\tBankLinkResponse,\r\n\tBankLinkTokenResponse,\r\n\tBankCreateRequest,\r\n\tBankTransactionListRequest,\r\n\tListBanksRequest,\r\n\tPaginatedResult,\r\n\tSBApiException,\r\n\tSBBank,\r\n\tSBBankAccount,\r\n\tSBBankTransaction,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const BANKS_KEY = \"banks\";\r\nexport const BANK_ACCOUNTS_KEY = \"bankAccounts\";\r\nexport const BANK_TRANSACTIONS_KEY = \"bankTransactions\";\r\n\r\nexport const useGetBankById = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBank, SBApiException>({\r\n\t\tqueryKey: [BANKS_KEY, id],\r\n\t\tqueryFn: async () => await client.banks.getById(id),\r\n\t});\r\n};\r\n\r\nexport const useGetBankAccountForBank = (id: number, accountId: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBankAccount, SBApiException>({\r\n\t\tqueryKey: [BANK_ACCOUNTS_KEY, id, accountId],\r\n\t\tqueryFn: async () => await client.banks.getBankAccount(id, accountId),\r\n\t});\r\n};\r\n\r\nexport const useListBankAccountTransactions = (\r\n\tid: number,\r\n\taccountId: number,\r\n\trequest: BankTransactionListRequest,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery<\r\n\t\tPaginatedResult<SBBankTransaction>,\r\n\t\tSBApiException,\r\n\t\tSBBankTransaction,\r\n\t\tQueryKey,\r\n\t\tnumber\r\n\t>({\r\n\t\tinitialPageParam: request.page,\r\n\t\tqueryKey: [BANK_TRANSACTIONS_KEY, id, accountId],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.banks.listBankAccountTransactions(\r\n\t\t\t\tid,\r\n\t\t\t\taccountId,\r\n\t\t\t\t{\r\n\t\t\t\t\t...request,\r\n\t\t\t\t\tpage: pageParam,\r\n\t\t\t\t},\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage: PaginatedResult<SBBankTransaction>) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetBankLinkTokenMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<BankLinkTokenResponse, SBApiException>({\r\n\t\tmutationKey: [SBApiKeys.BankLinkToken],\r\n\t\tmutationFn: async () => await client.banks.getBankLinkToken(),\r\n\t});\r\n};\r\n\r\nexport const useGetBankLink = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<BankLinkResponse, SBApiException>({\r\n\t\tmutationKey: [SBApiKeys.BankLink],\r\n\t\tmutationFn: async () => await client.banks.getBankLink(),\r\n\t});\r\n};\r\n\r\nexport const useGetBanks = (request: ListBanksRequest) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBank[], SBApiException>({\r\n\t\tqueryKey: [BANKS_KEY, request],\r\n\t\tqueryFn: async () => await client.banks.get(request),\r\n\t});\r\n};\r\n\r\nexport const useCreateBankMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation({\r\n\t\tmutationFn: async (request: BankCreateRequest) =>\r\n\t\t\tawait client.banks.create(request),\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [BANKS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteBankMutation = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation({\r\n\t\tmutationFn: async () => await client.banks.delete(id),\r\n\t\tonMutate: async () => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [BANKS_KEY] });\r\n\t\t\tconst previousBanks = queryClient.getQueryData([BANKS_KEY]);\r\n\t\t\tqueryClient.setQueryData([BANKS_KEY], (old: any) => ({\r\n\t\t\t\t...old,\r\n\t\t\t\tdata: old.data.filter((bank: SBBank) => bank.id !== id),\r\n\t\t\t}));\r\n\t\t\treturn { previousBanks };\r\n\t\t},\r\n\t\tonError: (err, _, context) => {\r\n\t\t\tqueryClient.setQueryData([BANKS_KEY], context?.previousBanks);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [BANKS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tAttachCardRequest,\r\n\tCreateCardRequest,\r\n\tSBCard,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n\tListCardRequest,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useCreateCardMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCard, SBApiException, CreateCardRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: CreateCardRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<CreateCardRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Cards] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useAttachCardMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCard, SBApiException, AttachCardRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: AttachCardRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<AttachCardRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.attach(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Cards, id] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDetachCardMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCard, SBApiException, number>({\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.detach(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Cards, id] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetCards = (\r\n\trequest?: ListCardRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBCard[], SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Cards],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.cards.get(request, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetCardById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBCard, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Cards, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.cards.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tSBApiException,\r\n\tSBCardSetupIntent,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useCreateCardSetupIntentMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBCardSetupIntent,\r\n\t\tSBApiException,\r\n\t\t{ options?: SBRequestOptions; config?: AxiosRequestConfig }\r\n\t>({\r\n\t\tmutationKey: [SBApiKeys.CardSetupIntents],\r\n\t\tmutationFn: async ({ options, config }) => {\r\n\t\t\treturn await client.cards.createSetupIntent(options, config);\r\n\t\t},\r\n\t\tonSuccess: (data) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.CardSetupIntents, data.id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useConfirmCardSetupIntentMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCardSetupIntent, SBApiException, string>({\r\n\t\tmutationKey: [SBApiKeys.CardSetupIntents],\r\n\t\tmutationFn: async (\r\n\t\t\tid: string,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.confirmSetupIntent(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.CardSetupIntents, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCancelCardSetupIntentMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCardSetupIntent, SBApiException, string>({\r\n\t\tmutationKey: [SBApiKeys.CardSetupIntents],\r\n\t\tmutationFn: async (\r\n\t\t\tid: string,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.cancelSetupIntent(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.CardSetupIntents, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetCardSetupIntentById = (id: string) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBCardSetupIntent, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.CardSetupIntents, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.cards.getSetupIntent(id);\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tDocumentListRequest,\r\n\tPaginatedResult,\r\n\tSBDocument,\r\n\tDocumentUploadRequest,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListDocuments = (\r\n\trequest: DocumentListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<DocumentListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<PaginatedResult<SBDocument>, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Documents, request],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.documents.list(request, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetDocument = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBDocument, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Documents, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.documents.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUploadDocumentMutatioon = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBDocument,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\trequest: DocumentUploadRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<FormData>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ request, options, config }) => {\r\n\t\t\treturn await client.documents.upload(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Documents, data.id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteDocumentMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBDocument, SBApiException, number>({\r\n\t\tmutationFn: async (id) => {\r\n\t\t\treturn await client.documents.delete(id);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Documents, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tSBFriend,\r\n\tFriendListRequest,\r\n\tSBApiException,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListFriends = (\r\n\trequest: FriendListRequest,\r\n\toptions?: SBRequestOptions,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<PaginatedResult<SBFriend>, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Friends, request],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.friends.list(request, options);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListRecommandedFriends = (\r\n\trequest: FriendListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<FriendListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<PaginatedResult<SBFriend>, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Friends, request],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.friends.listRecommanded(\r\n\t\t\t\trequest,\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteFriendMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBFriend,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ id, options, config }) => {\r\n\t\t\treturn await client.friends.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Friends, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tMerchantCreateRequest,\r\n\tMerchantListRequest,\r\n\tSBMerchant,\r\n\tMerchantUpdateRequest,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListMerchants = (\r\n\trequest: MerchantListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<MerchantListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Merchants, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.merchants.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetMerchantById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBMerchant, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Merchants, id],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.merchants.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useCreateMerchantMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBMerchant, SBApiException, MerchantCreateRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: MerchantCreateRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<MerchantCreateRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.merchants.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\nexport const useDeleteMerchantMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBMerchant, SBApiException, number>({\r\n\t\tmutationKey: [SBApiKeys.Merchants],\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.merchants.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateMerchantMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBMerchant,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\trequest: MerchantUpdateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<MerchantUpdateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationKey: [SBApiKeys.Merchants],\r\n\t\tmutationFn: async ({ id, request, options, config }) => {\r\n\t\t\treturn await client.merchants.update(id, request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tCustomerCreateRequest,\r\n\tPaginatedResult,\r\n\tSBCustomer,\r\n\tSBRequestOptions,\r\n\tCustomerListRequest,\r\n} from \"@smartbills/sdk\";\r\n\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useQuery, useInfiniteQuery, useMutation } from \"@tanstack/react-query\";\r\nexport const CUSTOMER_KEY: string = \"customers\";\r\nexport const useGetCustomerById = (id: number, options?: SBRequestOptions) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBCustomer, Error>({\r\n\t\tqueryKey: [CUSTOMER_KEY, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.customers.getById(id, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListCustomers = (\r\n\trequest: CustomerListRequest,\r\n\toptions?: SBRequestOptions,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useInfiniteQuery({\r\n\t\tqueryKey: [CUSTOMER_KEY],\r\n\t\tqueryFn: client.customers.list,\r\n\t\tinitialPageParam: 1,\r\n\t\tgetNextPageParam: (\r\n\t\t\tlastPage: PaginatedResult<SBCustomer>,\r\n\t\t\tallPages,\r\n\t\t\tlastPageParam,\r\n\t\t) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPageParam + 1;\r\n\t\t},\r\n\t\tgetPreviousPageParam: (\r\n\t\t\tfirstPage: PaginatedResult<SBCustomer>,\r\n\t\t\tallPages,\r\n\t\t\tfirstPageParam,\r\n\t\t) => {\r\n\t\t\tif (firstPage.pagination.currentPage <= 1) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn firstPageParam - 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCreateCustomerMutation = () => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [CUSTOMER_KEY],\r\n\t\tmutationFn: client.customers.create,\r\n\t\tonMutate: async (customer) => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [CUSTOMER_KEY] });\r\n\t\t\tconst previousTodos = queryClient.getQueryData([CUSTOMER_KEY]);\r\n\t\t\t// queryClient.setQueryData([CUSTOMER_KEY], (old) => [...old, newTodo])\r\n\r\n\t\t\t// Return a context object with the snapshotted value\r\n\t\t\treturn { previousTodos };\r\n\t\t},\r\n\t\tonError: (err, newTodo, context) => {\r\n\t\t\tqueryClient.setQueryData([CUSTOMER_KEY], context.previousTodos);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [CUSTOMER_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteCustomerMutation = () => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [CUSTOMER_KEY],\r\n\t\tmutationFn: client.customers.delete,\r\n\t\tonSuccess: async (response, id) => {\r\n\t\t\tawait queryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [CUSTOMER_KEY, id],\r\n\t\t\t});\r\n\t\t\tqueryClient.removeQueries({ queryKey: [CUSTOMER_KEY, id] });\r\n\t\t},\r\n\t\tonMutate: async (Customer) => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [CUSTOMER_KEY] });\r\n\t\t\tconst previousTodos = queryClient.getQueryData([CUSTOMER_KEY]);\r\n\t\t\t// queryClient.setQueryData([CUSTOMER_KEY], (old) => [...old, newTodo])\r\n\r\n\t\t\t// Return a context object with the snapshotted value\r\n\t\t\treturn { previousTodos };\r\n\t\t},\r\n\t\tonError: (err, newTodo, context) => {\r\n\t\t\tqueryClient.setQueryData([CUSTOMER_KEY], context.previousTodos);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [CUSTOMER_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tSBDomain,\r\n\tGetDomainsRequest,\r\n\tCreateDomainsRequest,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListDomains = (\r\n\trequest: GetDomainsRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<GetDomainsRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Domains, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.domains.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetDomainById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBDomain, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Domains, id],\r\n\t\tqueryFn: async () => await client.domains.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useCreateDomainMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBDomain, SBApiException, CreateDomainsRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: CreateDomainsRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<CreateDomainsRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.domains.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Domains],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteDomainMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBDomain, SBApiException, number>({\r\n\t\tmutationKey: [SBApiKeys.Domains],\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.domains.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Domains],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Domains, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tLocationsListRequest,\r\n\tLocationCreateRequest,\r\n\tLocationUpdateRequest,\r\n\tSBLocation,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\n\r\nexport const useListLocations = (\r\n\trequest: LocationsListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<LocationsListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Locations, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.locations.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetLocationById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBLocation, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Locations, id],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.locations.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useCreateLocationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBLocation, SBApiException, LocationCreateRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: LocationCreateRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<LocationCreateRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.locations.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteLocationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBLocation, SBApiException, number>({\r\n\t\tmutationKey: [SBApiKeys.Locations],\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.locations.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateLocationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBLocation,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\trequest: LocationUpdateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<LocationUpdateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationKey: [SBApiKeys.Locations],\r\n\t\tmutationFn: async ({ id, request, options, config }) => {\r\n\t\t\treturn await client.locations.update(id, request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import { useMutation } from \"@tanstack/react-query\";\r\nimport { AxiosError } from \"axios\";\r\nimport { useApiClient } from \"@/api\";\r\nimport {\r\n\tAccessTokenResponse,\r\n\tGetTokenRequest,\r\n\tAuthorizationCodeResponse,\r\n\tAuthorizeRequest,\r\n\tRefreshTokenRequest,\r\n} from \"@smartbills/sdk\";\r\n\r\nexport const useGetTokenMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<AccessTokenResponse, AxiosError, GetTokenRequest>({\r\n\t\tmutationFn: async (request) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.oauth.getToken(request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error as AxiosError;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetAuthorizationCodeMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<AuthorizationCodeResponse, AxiosError, AuthorizeRequest>(\r\n\t\t{\r\n\t\t\tmutationFn: async (request) => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\treturn await client.oauth.getAuthorizationCode(request);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthrow error as AxiosError;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t},\r\n\t);\r\n};\r\n\r\nexport const useRefreshTokenMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<AccessTokenResponse, AxiosError, RefreshTokenRequest>({\r\n\t\tmutationFn: async (request) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.oauth.refreshToken(request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error as AxiosError;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n","import { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport {\r\n\tOrganizationCreateRequest,\r\n\tOrganizationListRequest,\r\n\tSBOrganization,\r\n\tOrganizationUpdateRequest,\r\n\tOrganizationMemberListRequest,\r\n\tSBOrganizationMember,\r\n\tSBApiException,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\n\r\nexport const useListOrganizations = (\r\n\trequest: OrganizationListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<OrganizationListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Organizations, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn client.organizations.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetPreviousPageParam: (firstPage) => {\r\n\t\t\tif (firstPage.pagination.currentPage === 1) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn firstPage.pagination.currentPage - 1;\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetOrganizationById = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBOrganization, SBApiException>({\r\n\t\tqueryKey: [\"organization\", id],\r\n\t\tqueryFn: async () => await client.organizations.getById(id),\r\n\t});\r\n};\r\n\r\nexport const useCreateOrganizationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBOrganization,\r\n\t\tSBApiException,\r\n\t\tOrganizationCreateRequest\r\n\t>({\r\n\t\tmutationFn: async (request: OrganizationCreateRequest) => {\r\n\t\t\treturn client.organizations.create(request);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Organizations],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateOrganizationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBOrganization,\r\n\t\tSBApiException,\r\n\t\t{ id: number; request: OrganizationUpdateRequest }\r\n\t>({\r\n\t\tmutationFn: async ({ id, request }) => {\r\n\t\t\treturn client.organizations.update(id, request);\r\n\t\t},\r\n\t\tonSuccess: (_, { id }) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [\"organization\", id] });\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Organizations],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteOrganizationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBOrganization, SBApiException, number>({\r\n\t\tmutationFn: async (id: number) => {\r\n\t\t\treturn client.organizations.delete(id);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Organizations],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [\"organization\", id] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListOrganizationMembers = (\r\n\torganizationId: number,\r\n\trequest: OrganizationMemberListRequest,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBOrganizationMember[], SBApiException>({\r\n\t\tqueryKey: [\"organizationMembers\", organizationId, request],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn client.organizations.listMembers(organizationId, request);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetOrganizationMemberById = (\r\n\torganizationId: number,\r\n\tid: number,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBOrganizationMember, SBApiException>({\r\n\t\tqueryKey: [\"organizationMember\", organizationId, id],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.organizations.getMemberById(organizationId, id),\r\n\t});\r\n};\r\n\r\nexport const useDeleteOrganizationMember = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBOrganizationMember,\r\n\t\tSBApiException,\r\n\t\t{ organizationId: number; id: number }\r\n\t>({\r\n\t\tmutationFn: async ({ organizationId, id }) => {\r\n\t\t\treturn client.organizations.deleteMember(organizationId, id);\r\n\t\t},\r\n\t\tonSuccess: (_, { organizationId, id }) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [\"organizationMembers\", organizationId],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [\"organizationMember\", organizationId, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaymentMethodCreateRequest,\r\n\tPaymentMethodListRequest,\r\n\tSBPaymentMethod,\r\n\tSBPaymentMethodSetup,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useCreatePaymentMethodMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBPaymentMethod,\r\n\t\tSBApiException,\r\n\t\tPaymentMethodCreateRequest\r\n\t>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: PaymentMethodCreateRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<PaymentMethodCreateRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.paymentMethods.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PaymentMethods],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetPaymentMethods = (\r\n\trequest: PaymentMethodListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBPaymentMethod[], SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.PaymentMethods],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.paymentMethods.get(request, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetPaymentMethodById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBPaymentMethod, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.PaymentMethods, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.paymentMethods.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeletePaymentMethodMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBPaymentMethod, SBApiException, number>({\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.paymentMethods.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PaymentMethods, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useSetupPaymentMethodMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBPaymentMethodSetup, SBApiException, void>({\r\n\t\tmutationFn: async (\r\n\t\t\t_,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.paymentMethods.setup(options, config);\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPromoCodeCreateRequest,\r\n\tPromoCodeListRequest,\r\n\tPromoCodeUpdateRequest,\r\n\tSBPromoCode,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListPromoCodes = (\r\n\trequest: PromoCodeListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<PromoCodeListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.PromoCodes, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.promoCodes.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetPromoCodeById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBPromoCode, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.PromoCodes, id],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.promoCodes.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useCreatePromoCodeMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBPromoCode, SBApiException, PromoCodeCreateRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: PromoCodeCreateRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<PromoCodeCreateRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.promoCodes.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeletePromoCodeMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBPromoCode, SBApiException, number>({\r\n\t\tmutationKey: [SBApiKeys.PromoCodes],\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.promoCodes.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdatePromoCodeMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBPromoCode,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\trequest: PromoCodeUpdateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<PromoCodeUpdateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationKey: [SBApiKeys.PromoCodes],\r\n\t\tmutationFn: async ({ id, request, options, config }) => {\r\n\t\t\treturn await client.promoCodes.update(id, request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tReceiptListRequest,\r\n\tSBApiException,\r\n\tSBReceipt,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\n\r\nexport const RECEIPTS_KEY: string = \"receipts\";\r\n\r\nexport const useGetReceiptById = (id: number, options?: SBRequestOptions) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBReceipt, SBApiException>({\r\n\t\tqueryKey: [RECEIPTS_KEY, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.receipts.getById(id, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListReceipts = (\r\n\trequest: ReceiptListRequest,\r\n\toptions?: SBRequestOptions,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useInfiniteQuery({\r\n\t\tqueryKey: [RECEIPTS_KEY],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.receipts.list(request, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t\tinitialPageParam: 1,\r\n\t\tgetNextPageParam: (\r\n\t\t\tlastPage: PaginatedResult<SBReceipt>,\r\n\t\t\tallPages,\r\n\t\t\tlastPageParam,\r\n\t\t) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPageParam + 1;\r\n\t\t},\r\n\t\tgetPreviousPageParam: (\r\n\t\t\tfirstPage: PaginatedResult<SBReceipt>,\r\n\t\t\tallPages,\r\n\t\t\tfirstPageParam,\r\n\t\t) => {\r\n\t\t\tif (firstPage.pagination.currentPage == 1) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn firstPageParam - 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteReceiptMutation = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [RECEIPTS_KEY, id],\r\n\t\tmutationFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.receipts.delete(id, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonMutate: async (receipt) => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [RECEIPTS_KEY] });\r\n\t\t\tconst previousTodos = queryClient.getQueryData([RECEIPTS_KEY]);\r\n\t\t\t// queryClient.setQueryData([RECEIPTS_KEY], (old) => [...old, newTodo])\r\n\r\n\t\t\t// Return a context object with the snapshotted value\r\n\t\t\treturn { previousTodos };\r\n\t\t},\r\n\t\tonError: (err, newTodo, context) => {\r\n\t\t\tqueryClient.setQueryData([RECEIPTS_KEY], context.previousTodos);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [RECEIPTS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tReviewCreateRequest,\r\n\tReviewUpdateRequest,\r\n\tSBReview,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\n\r\nexport const REVIEWS_KEY: string = \"REVIEWS\";\r\nexport const useListReviews = (request: any) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [REVIEWS_KEY, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.list({\r\n\t\t\t\t\t...request,\r\n\t\t\t\t\tpage: pageParam,\r\n\t\t\t\t});\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage: PaginatedResult<SBReview>) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetReviewById = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBReview, SBApiException>({\r\n\t\tqueryKey: [REVIEWS_KEY, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.getById(id);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCreateReviewMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation({\r\n\t\tmutationKey: [REVIEWS_KEY],\r\n\t\tmutationFn: async (request: ReviewCreateRequest) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.create(request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [REVIEWS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteReviewMutation = (id: number) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [REVIEWS_KEY, id],\r\n\t\tmutationFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.delete(id);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonMutate: async () => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [REVIEWS_KEY] });\r\n\t\t\tconst previousReviews = queryClient.getQueryData([REVIEWS_KEY]);\r\n\t\t\treturn { previousReviews };\r\n\t\t},\r\n\t\tonError: (err, _, context) => {\r\n\t\t\tqueryClient.setQueryData([REVIEWS_KEY], context?.previousReviews);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [REVIEWS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateReviewMutation = () => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [REVIEWS_KEY],\r\n\t\tmutationFn: async ([id, request]: [number, ReviewUpdateRequest]) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.update(id, request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonSettled: (data, SBApiException, [id]) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [REVIEWS_KEY, id] });\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tSBApiException,\r\n\tSBRequestOptions,\r\n\tSBTax,\r\n\tTaxCreateRequest,\r\n\tTaxListRequest,\r\n\tTaxUpdateRequest,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListTaxes = (\r\n\trequest: TaxListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<TaxListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<PaginatedResult<SBTax>, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Taxes],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.taxes.list(request, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetTaxById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<TaxListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBTax, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Taxes, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.taxes.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCreateTaxMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBTax,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\trequest: TaxCreateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<TaxCreateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ request, options, config }) => {\r\n\t\t\treturn await client.taxes.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Taxes, data.id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteTaxMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBTax,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<TaxCreateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ id, options, config }) => {\r\n\t\t\treturn await client.taxes.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, request) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [(SBApiKeys.Taxes, request.id)],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateTaxMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBTax,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\trequest: TaxUpdateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<TaxUpdateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ id, request, options, config }) => {\r\n\t\t\treturn await client.taxes.update(id, request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, { id }) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Taxes, id] });\r\n\t\t},\r\n\t});\r\n};\r\n","import { SBRequestOptions } from \"@smartbills/sdk\";\r\nimport { useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nimport { useApiClient } from \"@/api\";\r\n\r\nexport const useGetCurrentUser = (\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst smartbillsClient = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.User],\r\n\t\tqueryFn: async () => await smartbillsClient.user.get(options, config),\r\n\t});\r\n};\r\n","import { SearchUsersRequest, SBRequestOptions } from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { useInfiniteQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useSearchUsers = (\r\n\trequest: SearchUsersRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<SearchUsersRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Users, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.users.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n"],"names":["ApiClientContext","createContext","undefined","ApiClientProvider","client","children","React","createElement","Provider","value","useApiClient","context","useContext","Error","SBApiKeys","useGetLogById","id","options","config","useQuery","queryKey","Logs","queryFn","logs","getById","useListLogs","request","list","useGetBankAccountById","BankAccounts","bankAccounts","useGetBankAccounts","get","useListBankAccountTransanctions","useInfiniteQuery","initialPageParam","page","pageParam","listTransactions","getPreviousPageParam","firstPage","pagination","currentPage","getNextPageParam","lastPage","pageCount","useListBankTransactions","bankTransactions","useGetBankTransaction","queryClient","QueryClient","SmartbillsSDKProvider","QueryClientProvider","BANKS_KEY","BANK_ACCOUNTS_KEY","BANK_TRANSACTIONS_KEY","useGetBankById","banks","useGetBankAccountForBank","accountId","getBankAccount","useListBankAccountTransactions","listBankAccountTransactions","useGetBankLinkTokenMutation","useMutation","mutationKey","BankLinkToken","mutationFn","getBankLinkToken","useGetBankLink","BankLink","getBankLink","useGetBanks","useCreateBankMutation","create","onSuccess","invalidateQueries","useDeleteBankMutation","delete","onMutate","cancelQueries","previousBanks","getQueryData","setQueryData","old","data","filter","bank","onError","err","_","onSettled","useCreateCardMutation","cards","Cards","useAttachCardMutation","attach","useDetachCardMutation","detach","useGetCards","useGetCardById","useCreateCardSetupIntentMutation","CardSetupIntents","createSetupIntent","useConfirmCardSetupIntentMutation","confirmSetupIntent","useCancelCardSetupIntentMutation","cancelSetupIntent","useGetCardSetupIntentById","getSetupIntent","useListDocuments","Documents","documents","useGetDocument","useUploadDocumentMutatioon","upload","useDeleteDocumentMutation","useListFriends","Friends","friends","useListRecommandedFriends","listRecommanded","useDeleteFriendMutation","useListMerchants","Merchants","merchants","useGetMerchantById","useCreateMerchantMutation","useDeleteMerchantMutation","useUpdateMerchantMutation","update","CUSTOMER_KEY","useGetCustomerById","customers","exception","useListCustomers","allPages","lastPageParam","firstPageParam","useCreateCustomerMutation","customer","previousTodos","newTodo","useDeleteCustomerMutation","response","removeQueries","Customer","useListDomains","Domains","domains","useGetDomainById","useCreateDomainMutation","useDeleteDomainMutation","useListLocations","Locations","locations","useGetLocationById","useCreateLocationMutation","useDeleteLocationMutation","useUpdateLocationMutation","useGetTokenMutation","oauth","getToken","error","useGetAuthorizationCodeMutation","getAuthorizationCode","useRefreshTokenMutation","refreshToken","useListOrganizations","Organizations","organizations","useGetOrganizationById","useCreateOrganizationMutation","useUpdateOrganizationMutation","useDeleteOrganizationMutation","useListOrganizationMembers","organizationId","listMembers","useGetOrganizationMemberById","getMemberById","useDeleteOrganizationMember","deleteMember","useCreatePaymentMethodMutation","paymentMethods","PaymentMethods","useGetPaymentMethods","useGetPaymentMethodById","useDeletePaymentMethodMutation","useSetupPaymentMethodMutation","setup","useListPromoCodes","PromoCodes","promoCodes","useGetPromoCodeById","useCreatePromoCodeMutation","useDeletePromoCodeMutation","useUpdatePromoCodeMutation","RECEIPTS_KEY","useGetReceiptById","receipts","useListReceipts","useDeleteReceiptMutation","receipt","REVIEWS_KEY","useListReviews","reviews","useGetReviewById","useCreateReviewMutation","useDeleteReviewMutation","previousReviews","useUpdateReviewMutation","SBApiException","useListTaxes","Taxes","taxes","useGetTaxById","useCreateTaxMutation","useDeleteTaxMutation","useUpdateTaxMutation","useGetCurrentUser","smartbillsClient","User","user","useSearchUsers","Users","users"],"mappings":"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ACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;UCpKaiC,WAAW,GAAG,IAAIC,sBAAW,GAAE;aAE5BC,qBAAqBA,CAAC;MACrC/C,MAAM;IACNC,EAAAA,QAAAA;IACyC,CAAA,EAAA;IACzC,EAAA,oBACCC,KAAC,CAAAC,aAAA,CAAAJ,iBAAiB,EAAC;IAAAC,IAAAA,MAAM,EAAEA,MAAAA;IAAM,GAAA,eAChCE,KAAC,CAAAC,aAAA,CAAA6C,8BAAmB,EAAC;IAAAhD,IAAAA,MAAM,EAAE6C,WAAAA;SAC3B5C,QAAQ,CACY,CACH,CAAA;IAEtB;;ACIO,UAAMgD,SAAS,GAAG,QAAO;AACzB,UAAMC,iBAAiB,GAAG,eAAc;AACxC,UAAMC,qBAAqB,GAAG,mBAAkB;AAE1CC,UAAAA,cAAc,GAAIxC,EAAU,IAAI;IAC5C,EAAA,MAAMZ,MAAM,GAAGM,YAAY,EAAE,CAAA;IAC7B,EAAA,OAAOS,mBAAQ,CAAyB;IACvCC,IAAAA,QAAQ,EAAE,CAACiC,SAAS,EAAErC,EAAE,CAAC;QACzBM,OAAO,EAAE,YAAY,MAAMlB,MAAM,CAACqD,KAAK,CAACjC,OAAO,CAACR,EAAE,CAAA;IAClD,GAAA,CAAC,CAAA;IACH,EAAC;UAEY0C,wBAAwB,GAAG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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/api.tsx","../../src/apis/SBApiKeys.ts","../../src/apis/api-logs/LogsAPI.ts","../../src/apis/bank-accounts/BankAccountAPI.tsx","../../src/apis/bank-transactions/BankTransactionAPI.tsx","../../src/components/SmartbillsSDKProvider.tsx","../../src/apis/banks/BanksAPI.tsx","../../src/apis/cards/CardsAPI.tsx","../../src/apis/cards/CardSetupIntentsAPI.tsx","../../src/apis/documents/DocumentsAPI.tsx","../../src/apis/friends/FriendsAPI.ts","../../src/apis/merchants/MerchantAPI.tsx","../../src/apis/customers/CustomerAPI.ts","../../src/apis/customers/CustomerPaymentMethodsAPI.ts","../../src/apis/customers/CustomerBalanceTransactionsAPI.ts","../../src/apis/domains/DomainAPI.tsx","../../src/apis/locations/LocationsAPI.ts","../../src/apis/oauth/OAuthAPI.tsx","../../src/apis/organizations/OrganizationsAPI.tsx","../../src/apis/payment-methods/PaymentMethodsAPI.tsx","../../src/apis/promo-codes/PromoCodesAPI.tsx","../../src/apis/receipts/ReceiptAPI.tsx","../../src/apis/reviews/ReviewsAPI.tsx","../../src/apis/taxes/TaxesAPI.tsx","../../src/apis/user/UserAPI.tsx","../../src/apis/users/UsersAPI.tsx","../../src/apis/vendors/VendorsAPI.ts"],"sourcesContent":["import { SBClient } from \"@smartbills/sdk\";\r\nimport React, { createContext, useContext, ReactNode } from \"react\";\r\n\r\nconst ApiClientContext = createContext<SBClient | undefined>(undefined);\r\n\r\ninterface ApiClientProviderProps {\r\n\tclient: SBClient;\r\n\tchildren: ReactNode;\r\n}\r\n\r\nexport const ApiClientProvider: React.FC<ApiClientProviderProps> = ({\r\n\tclient,\r\n\tchildren,\r\n}) => (\r\n\t<ApiClientContext.Provider value={client}>\r\n\t\t{children}\r\n\t</ApiClientContext.Provider>\r\n);\r\n\r\nexport const useApiClient = (): SBClient => {\r\n\tconst context = useContext(ApiClientContext);\r\n\tif (context === undefined) {\r\n\t\tthrow new Error(\r\n\t\t\t\"useApiClient must be used within an ApiClientProvider\",\r\n\t\t);\r\n\t}\r\n\treturn context;\r\n};\r\n","export enum SBApiKeys {\r\n\tBanks = \"BANKS\",\r\n\tBankAccounts = \"BANK_ACCOUNT\",\r\n\tBankAccountTransactions = \"BANK_ACCOUNT_TRANSACTIONS\",\r\n\tBankLinkToken = \"BANK_LINK_TOKEN\",\r\n\tBankLink = \"BANK_LINK\",\r\n\tBankTransactions = \"BANK_TRANSACTIONS\",\r\n\tBankInstitutions = \"BANK_INSTITUTIONS\",\r\n\tCards = \"CARDS\",\r\n\tCustomers = \"CUSTOMERS\",\r\n\tCustomerPaymentMethods = \"CUSTOMER_PAYMENT_METHODS\",\r\n\tCustomerBalanceTransactions = \"CUSTOMER_BALANCE_TRANSACTIONS\",\r\n\tCardSetupIntents = \"CARDS_SETUP_INTENTS\",\r\n\tDocuments = \"DOCUMENTS\",\r\n\tOrganizations = \"ORGANIZATIONS\",\r\n\tLogs = \"LOGS\",\r\n\tLocations = \"LOCATIONS\",\r\n\tMerchants = \"MERCHANTS\",\r\n\tPromoCodes = \"PROMO_CODES\",\r\n\tDomains = \"DOMAINS\",\r\n\tUser = \"USER\",\r\n\tUsers = \"USERS\",\r\n\tPaymentMethods = \"PAYMENT_METHODS\",\r\n\tTaxes = \"TAXES\",\r\n\tFriends = \"FRIENDS\",\r\n\tVendors = \"VENDORS\",\r\n}\r\n","import { LogListRequest, SBRequestOptions } from \"@smartbills/sdk\";\r\nimport { useQuery } from \"@tanstack/react-query\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useGetLogById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.Logs, id],\r\n\t\tqueryFn: async () => await client.logs.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useListLogs = (\r\n\trequest: LogListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.Logs, request],\r\n\t\tqueryFn: async () => await client.logs.list(request, options, config),\r\n\t});\r\n};\r\n","import { useApiClient } from \"@/api\";\r\nimport {\r\n\tBankAccountListRequest,\r\n\tBankTransactionListRequest,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useInfiniteQuery, useQuery } from \"@tanstack/react-query\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\n\r\nexport const useGetBankAccountById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<BankTransactionListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.BankAccounts, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn client.bankAccounts.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetBankAccounts = (request: BankAccountListRequest) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.BankAccounts, request],\r\n\t\tqueryFn: async (request) => {\r\n\t\t\treturn client.bankAccounts.get(request);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListBankAccountTransanctions = (\r\n\tid: number,\r\n\trequest: BankTransactionListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<BankTransactionListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: request.page,\r\n\t\tqueryKey: [SBApiKeys.BankAccounts, id, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\trequest.page = pageParam;\r\n\t\t\treturn client.bankAccounts.listTransactions(\r\n\t\t\t\tid,\r\n\t\t\t\trequest,\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetPreviousPageParam: (firstPage) => {\r\n\t\t\tif (firstPage.pagination.currentPage === 1) {\r\n\t\t\t\treturn 1;\r\n\t\t\t}\r\n\t\t\treturn firstPage.pagination.currentPage - 1;\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n","import { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport {\r\n\tBankTransactionListRequest,\r\n\tPaginatedResult,\r\n\tSBBankTransaction,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\n\r\nexport const useListBankTransactions = (\r\n\trequest: BankTransactionListRequest,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: request.page,\r\n\t\tqueryKey: [\"bankTransactions\", request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn client.bankTransactions.list({\r\n\t\t\t\t...request,\r\n\t\t\t\tpage: pageParam,\r\n\t\t\t});\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage: PaginatedResult<SBBankTransaction>) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetBankTransaction = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBankTransaction, SBApiException>({\r\n\t\tqueryKey: [\"bankTransaction\", id],\r\n\t\tqueryFn: async () => await client.bankTransactions.getById(id),\r\n\t});\r\n};\r\n\r\n// export const useAssociateReceipt = () => {\r\n// \tconst client = useApiClient();\r\n// \treturn useMutation<\r\n// \t\tSBReceipt,\r\n// \t\tSBApiException,\r\n// \t\t{ id: number; receiptId: number }\r\n// \t>({\r\n// \t\tmutationFn: ({ id, receiptId }) => await,\r\n// \t\tonSuccess: (_, { id, receiptId }) => {\r\n// \t\t\tqueryClient.invalidateQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tqueryClient.invalidateQueries({ queryKey: [\"receipt\", receiptId] });\r\n// \t\t},\r\n// \t});\r\n// };\r\n\r\n// export const useLinkDocuments = () => {\r\n// \tconst client = useApiClient();\r\n// \treturn useMutation<\r\n// \t\tSBDocument[],\r\n// \t\tSBApiException,\r\n// \t\t{ id: number; documents: number[] }\r\n// \t>({\r\n// \t\tmutationFn: async({ id, documents }) => await client.bankAccounts,\r\n// \t\tonSuccess: (_, { id }) => {\r\n// \t\t\tqueryClient.invalidateQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tqueryClient.invalidateQueries({ queryKey: [\"pendingDocuments\"] });\r\n// \t\t},\r\n// \t});\r\n// };\r\n\r\n// export const useUnlinkDocument = () => {\r\n// \tconst client = useApiClient();\r\n// \treturn useMutation<SBDocument, SBApiException, { id: number; documentId: number }>({\r\n// \t\tmutationFn: ({ id, documentId }) => {\r\n// \t\t},\r\n// \t\tonMutate: async ({ id, documentId }) => {\r\n// \t\t\tawait queryClient.cancelQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tconst previousTransaction =\r\n// \t\t\t\tqueryClient.getQueryData<SBBankTransaction>([\r\n// \t\t\t\t\t\"bankTransaction\",\r\n// \t\t\t\t\tid,\r\n// \t\t\t\t]);\r\n// \t\t\tqueryClient.setQueryData<SBBankTransaction>(\r\n// \t\t\t\t[\"bankTransaction\", id],\r\n// \t\t\t\t(old) => {\r\n// \t\t\t\t\tif (old) {\r\n// \t\t\t\t\t\treturn {\r\n// \t\t\t\t\t\t\t...old,\r\n// \t\t\t\t\t\t\tdocuments: old.documents.filter(\r\n// \t\t\t\t\t\t\t\t(doc) => doc.id !== documentId,\r\n// \t\t\t\t\t\t\t),\r\n// \t\t\t\t\t\t};\r\n// \t\t\t\t\t}\r\n// \t\t\t\t\treturn old;\r\n// \t\t\t\t},\r\n// \t\t\t);\r\n// \t\t\treturn { previousTransaction };\r\n// \t\t},\r\n// \t\tonError: (_, __, context) => {\r\n// \t\t\tif (context?.previousTransaction) {\r\n// \t\t\t\tqueryClient.setQueryData(\r\n// \t\t\t\t\t[\"bankTransaction\", context.previousTransaction.id],\r\n// \t\t\t\t\tcontext.previousTransaction,\r\n// \t\t\t\t);\r\n// \t\t\t}\r\n// \t\t},\r\n// \t\tonSettled: (data, error, { id }) => {\r\n// \t\t\tqueryClient.invalidateQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tqueryClient.invalidateQueries({ queryKey: [\"pendingDocuments\"] });\r\n// \t\t},\r\n// \t});\r\n// };\r\n\r\n// export const useRenameDocument = () => {\r\n// \tconst client = useApiClient();\r\n// \treturn useMutation<SBDocument, SBApiException>({\r\n// \t\tmutationFn: (id: number, documentId, request) =>\r\n// \t\t\tclient.bankTransactions.renameDocument(id, documentId, request),\r\n// \t\tonMutate: async ({ id, documentId, request }) => {\r\n// \t\t\tawait queryClient.cancelQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tconst previousTransaction =\r\n// \t\t\t\tqueryClient.getQueryData<SBBankTransaction>([\r\n// \t\t\t\t\t\"bankTransaction\",\r\n// \t\t\t\t\tid,\r\n// \t\t\t\t]);\r\n// \t\t\tqueryClient.setQueryData<SBBankTransaction>(\r\n// \t\t\t\t[\"bankTransaction\", id],\r\n// \t\t\t\t(old) => {\r\n// \t\t\t\t\tif (old) {\r\n// \t\t\t\t\t\tconst index = old.documents.findIndex(\r\n// \t\t\t\t\t\t\t(doc) => doc.id === documentId,\r\n// \t\t\t\t\t\t);\r\n// \t\t\t\t\t\tif (index !== -1) {\r\n// \t\t\t\t\t\t\told.documents[index].name = request.name;\r\n// \t\t\t\t\t\t}\r\n// \t\t\t\t\t\treturn old;\r\n// \t\t\t\t\t}\r\n// \t\t\t\t\treturn old;\r\n// \t\t\t\t},\r\n// \t\t\t);\r\n// \t\t\treturn { previousTransaction };\r\n// \t\t},\r\n// \t\tonError: (_, __, context) => {\r\n// \t\t\tif (context?.previousTransaction) {\r\n// \t\t\t\tqueryClient.setQueryData(\r\n// \t\t\t\t\t[\"bankTransaction\", context.previousTransaction.id],\r\n// \t\t\t\t\tcontext.previousTransaction,\r\n// \t\t\t\t);\r\n// \t\t\t}\r\n// \t\t},\r\n// \t\tonSettled: (data, error, { id }) => {\r\n// \t\t\tqueryClient.invalidateQueries({\r\n// \t\t\t\tqueryKey: [\"bankTransaction\", id],\r\n// \t\t\t});\r\n// \t\t\tqueryClient.invalidateQueries({ queryKey: [\"pendingDocuments\"] });\r\n// \t\t},\r\n// \t});\r\n// };\r\n","import { ApiClientProvider } from \"@/api\";\r\nimport { SBClient } from \"@smartbills/sdk\";\r\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\r\nimport React, { PropsWithChildren } from \"react\";\r\n\r\nexport const queryClient = new QueryClient();\r\n\r\nexport function SmartbillsSDKProvider({\r\n\tclient,\r\n\tchildren,\r\n}: PropsWithChildren<{ client: SBClient }>) {\r\n\treturn (\r\n\t\t<ApiClientProvider client={client}>\r\n\t\t\t<QueryClientProvider client={queryClient}>\r\n\t\t\t\t{children}\r\n\t\t\t</QueryClientProvider>\r\n\t\t</ApiClientProvider>\r\n\t);\r\n}\r\n","import {\r\n\tQueryKey,\r\n\tuseInfiniteQuery,\r\n\tuseMutation,\r\n\tuseQuery,\r\n} from \"@tanstack/react-query\";\r\nimport {\r\n\tBankLinkResponse,\r\n\tBankLinkTokenResponse,\r\n\tBankCreateRequest,\r\n\tBankTransactionListRequest,\r\n\tListBanksRequest,\r\n\tPaginatedResult,\r\n\tSBApiException,\r\n\tSBBank,\r\n\tSBBankAccount,\r\n\tSBBankTransaction,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const BANKS_KEY = \"banks\";\r\nexport const BANK_ACCOUNTS_KEY = \"bankAccounts\";\r\nexport const BANK_TRANSACTIONS_KEY = \"bankTransactions\";\r\n\r\nexport const useGetBankById = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBank, SBApiException>({\r\n\t\tqueryKey: [BANKS_KEY, id],\r\n\t\tqueryFn: async () => await client.banks.getById(id),\r\n\t});\r\n};\r\n\r\nexport const useGetBankAccountForBank = (id: number, accountId: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBankAccount, SBApiException>({\r\n\t\tqueryKey: [BANK_ACCOUNTS_KEY, id, accountId],\r\n\t\tqueryFn: async () => await client.banks.getBankAccount(id, accountId),\r\n\t});\r\n};\r\n\r\nexport const useListBankAccountTransactions = (\r\n\tid: number,\r\n\taccountId: number,\r\n\trequest: BankTransactionListRequest,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery<\r\n\t\tPaginatedResult<SBBankTransaction>,\r\n\t\tSBApiException,\r\n\t\tSBBankTransaction,\r\n\t\tQueryKey,\r\n\t\tnumber\r\n\t>({\r\n\t\tinitialPageParam: request.page,\r\n\t\tqueryKey: [BANK_TRANSACTIONS_KEY, id, accountId],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.banks.listBankAccountTransactions(\r\n\t\t\t\tid,\r\n\t\t\t\taccountId,\r\n\t\t\t\t{\r\n\t\t\t\t\t...request,\r\n\t\t\t\t\tpage: pageParam,\r\n\t\t\t\t},\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage: PaginatedResult<SBBankTransaction>) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetBankLinkTokenMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<BankLinkTokenResponse, SBApiException>({\r\n\t\tmutationKey: [SBApiKeys.BankLinkToken],\r\n\t\tmutationFn: async () => await client.banks.getBankLinkToken(),\r\n\t});\r\n};\r\n\r\nexport const useGetBankLink = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<BankLinkResponse, SBApiException>({\r\n\t\tmutationKey: [SBApiKeys.BankLink],\r\n\t\tmutationFn: async () => await client.banks.getBankLink(),\r\n\t});\r\n};\r\n\r\nexport const useGetBanks = (request: ListBanksRequest) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBank[], SBApiException>({\r\n\t\tqueryKey: [BANKS_KEY, request],\r\n\t\tqueryFn: async () => await client.banks.get(request),\r\n\t});\r\n};\r\n\r\nexport const useCreateBankMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation({\r\n\t\tmutationFn: async (request: BankCreateRequest) =>\r\n\t\t\tawait client.banks.create(request),\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [BANKS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteBankMutation = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation({\r\n\t\tmutationFn: async () => await client.banks.delete(id),\r\n\t\tonMutate: async () => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [BANKS_KEY] });\r\n\t\t\tconst previousBanks = queryClient.getQueryData([BANKS_KEY]);\r\n\t\t\tqueryClient.setQueryData([BANKS_KEY], (old: any) => ({\r\n\t\t\t\t...old,\r\n\t\t\t\tdata: old.data.filter((bank: SBBank) => bank.id !== id),\r\n\t\t\t}));\r\n\t\t\treturn { previousBanks };\r\n\t\t},\r\n\t\tonError: (err, _, context) => {\r\n\t\t\tqueryClient.setQueryData([BANKS_KEY], context?.previousBanks);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [BANKS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tAttachCardRequest,\r\n\tCreateCardRequest,\r\n\tSBCard,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n\tListCardRequest,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useCreateCardMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCard, SBApiException, CreateCardRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: CreateCardRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<CreateCardRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Cards] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useAttachCardMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCard, SBApiException, AttachCardRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: AttachCardRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<AttachCardRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.attach(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Cards, id] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDetachCardMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCard, SBApiException, number>({\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.detach(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Cards, id] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetCards = (\r\n\trequest?: ListCardRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBCard[], SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Cards],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.cards.get(request, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetCardById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBCard, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Cards, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.cards.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tSBApiException,\r\n\tSBCardSetupIntent,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useCreateCardSetupIntentMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBCardSetupIntent,\r\n\t\tSBApiException,\r\n\t\t{ options?: SBRequestOptions; config?: AxiosRequestConfig }\r\n\t>({\r\n\t\tmutationKey: [SBApiKeys.CardSetupIntents],\r\n\t\tmutationFn: async ({ options, config }) => {\r\n\t\t\treturn await client.cards.createSetupIntent(options, config);\r\n\t\t},\r\n\t\tonSuccess: (data) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.CardSetupIntents, data.id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useConfirmCardSetupIntentMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCardSetupIntent, SBApiException, string>({\r\n\t\tmutationKey: [SBApiKeys.CardSetupIntents],\r\n\t\tmutationFn: async (\r\n\t\t\tid: string,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.confirmSetupIntent(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.CardSetupIntents, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCancelCardSetupIntentMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBCardSetupIntent, SBApiException, string>({\r\n\t\tmutationKey: [SBApiKeys.CardSetupIntents],\r\n\t\tmutationFn: async (\r\n\t\t\tid: string,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.cards.cancelSetupIntent(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.CardSetupIntents, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetCardSetupIntentById = (id: string) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBCardSetupIntent, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.CardSetupIntents, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.cards.getSetupIntent(id);\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tDocumentListRequest,\r\n\tPaginatedResult,\r\n\tSBDocument,\r\n\tDocumentUploadRequest,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListDocuments = (\r\n\trequest: DocumentListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<DocumentListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<PaginatedResult<SBDocument>, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Documents, request],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.documents.list(request, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetDocument = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBDocument, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Documents, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.documents.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUploadDocumentMutatioon = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBDocument,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\trequest: DocumentUploadRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<FormData>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ request, options, config }) => {\r\n\t\t\treturn await client.documents.upload(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Documents, data.id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteDocumentMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBDocument, SBApiException, number>({\r\n\t\tmutationFn: async (id) => {\r\n\t\t\treturn await client.documents.delete(id);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Documents, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tSBFriend,\r\n\tFriendListRequest,\r\n\tSBApiException,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListFriends = (\r\n\trequest: FriendListRequest,\r\n\toptions?: SBRequestOptions,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<PaginatedResult<SBFriend>, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Friends, request],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.friends.list(request, options);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListRecommandedFriends = (\r\n\trequest: FriendListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<FriendListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<PaginatedResult<SBFriend>, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Friends, request],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.friends.listRecommanded(\r\n\t\t\t\trequest,\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteFriendMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBFriend,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ id, options, config }) => {\r\n\t\t\treturn await client.friends.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Friends, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tMerchantCreateRequest,\r\n\tMerchantListRequest,\r\n\tSBMerchant,\r\n\tMerchantUpdateRequest,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListMerchants = (\r\n\trequest: MerchantListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<MerchantListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Merchants, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.merchants.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetMerchantById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBMerchant, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Merchants, id],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.merchants.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useCreateMerchantMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBMerchant, SBApiException, MerchantCreateRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: MerchantCreateRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<MerchantCreateRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.merchants.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\nexport const useDeleteMerchantMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBMerchant, SBApiException, number>({\r\n\t\tmutationKey: [SBApiKeys.Merchants],\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.merchants.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateMerchantMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBMerchant,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\trequest: MerchantUpdateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<MerchantUpdateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationKey: [SBApiKeys.Merchants],\r\n\t\tmutationFn: async ({ id, request, options, config }) => {\r\n\t\t\treturn await client.merchants.update(id, request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Merchants, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tCustomerCreateRequest,\r\n\tPaginatedResult,\r\n\tSBCustomer,\r\n\tSBRequestOptions,\r\n\tCustomerListRequest,\r\n} from \"@smartbills/sdk\";\r\n\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useQuery, useInfiniteQuery, useMutation } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nexport const useGetCustomerById = (id: number, options?: SBRequestOptions) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBCustomer, Error>({\r\n\t\tqueryKey: [SBApiKeys.Customers, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.customers.getById(id, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListCustomers = (\r\n\trequest: CustomerListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<CustomerListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useInfiniteQuery({\r\n\t\tqueryKey: [SBApiKeys.Customers],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.customers.list(request, options, config),\r\n\t\tinitialPageParam: 1,\r\n\t\tgetNextPageParam: (\r\n\t\t\tlastPage: PaginatedResult<SBCustomer>,\r\n\t\t\tallPages,\r\n\t\t\tlastPageParam,\r\n\t\t) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPageParam + 1;\r\n\t\t},\r\n\t\tgetPreviousPageParam: (\r\n\t\t\tfirstPage: PaginatedResult<SBCustomer>,\r\n\t\t\tallPages,\r\n\t\t\tfirstPageParam,\r\n\t\t) => {\r\n\t\t\tif (firstPage.pagination.currentPage <= 1) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn firstPageParam - 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCreateCustomerMutation = () => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [SBApiKeys.Customers],\r\n\t\tmutationFn: client.customers.create,\r\n\t\tonMutate: async (customer) => {\r\n\t\t\tawait queryClient.cancelQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Customers],\r\n\t\t\t});\r\n\t\t\tconst previousTodos = queryClient.getQueryData([\r\n\t\t\t\tSBApiKeys.Customers,\r\n\t\t\t]);\r\n\t\t\t// queryClient.setQueryData([SBApiKeys.Customers], (old) => [...old, newTodo])\r\n\r\n\t\t\t// Return a context object with the snapshotted value\r\n\t\t\treturn { previousTodos };\r\n\t\t},\r\n\t\tonError: (err, newTodo, context) => {\r\n\t\t\tqueryClient.setQueryData(\r\n\t\t\t\t[SBApiKeys.Customers],\r\n\t\t\t\tcontext.previousTodos,\r\n\t\t\t);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Customers] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteCustomerMutation = () => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [SBApiKeys.Customers],\r\n\t\tmutationFn: client.customers.delete,\r\n\t\tonSuccess: async (response, id) => {\r\n\t\t\tawait queryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Customers, id],\r\n\t\t\t});\r\n\t\t\tqueryClient.removeQueries({ queryKey: [SBApiKeys.Customers, id] });\r\n\t\t},\r\n\t\tonMutate: async (Customer) => {\r\n\t\t\tawait queryClient.cancelQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Customers],\r\n\t\t\t});\r\n\t\t\tconst previousTodos = queryClient.getQueryData([\r\n\t\t\t\tSBApiKeys.Customers,\r\n\t\t\t]);\r\n\t\t\t// queryClient.setQueryData([SBApiKeys.Customers], (old) => [...old, newTodo])\r\n\r\n\t\t\t// Return a context object with the snapshotted value\r\n\t\t\treturn { previousTodos };\r\n\t\t},\r\n\t\tonError: (err, newTodo, context) => {\r\n\t\t\tqueryClient.setQueryData(\r\n\t\t\t\t[SBApiKeys.Customers],\r\n\t\t\t\tcontext.previousTodos,\r\n\t\t\t);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Customers] });\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tCustomerCreateRequest,\r\n\tPaginatedResult,\r\n\tSBCustomer,\r\n\tSBRequestOptions,\r\n\tCustomerListRequest,\r\n\tCustomerPaymentMethodListRequest,\r\n} from \"@smartbills/sdk\";\r\n\r\nimport { useApiClient } from \"@/api\";\r\nimport {\r\n\tDefinedInitialDataOptions,\r\n\tQueryKey,\r\n\tqueryOptions as reactQueryOptions,\r\n\tuseInfiniteQuery,\r\n\tuseQuery,\r\n} from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListCustomerPaymentMethods = (\r\n\tcustomerId: number,\r\n\trequest: CustomerPaymentMethodListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<CustomerListRequest>,\r\n\tqueryOptions?: DefinedInitialDataOptions<unknown, Error, unknown, QueryKey>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useQuery({\r\n\t\tqueryKey: [\r\n\t\t\tSBApiKeys.Customers,\r\n\t\t\tcustomerId,\r\n\t\t\tSBApiKeys.CustomerPaymentMethods,\r\n\t\t],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.customers.listPaymentMethods(\r\n\t\t\t\tcustomerId,\r\n\t\t\t\trequest,\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t),\r\n\t\t...queryOptions,\r\n\t});\r\n};\r\n\r\nexport const useGetCustomerPaymentMethodById = (\r\n\tcustomerId: number,\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<CustomerListRequest>,\r\n\tqueryOptions?: DefinedInitialDataOptions<unknown, Error, unknown, QueryKey>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useQuery({\r\n\t\tqueryKey: [\r\n\t\t\tSBApiKeys.Customers,\r\n\t\t\tcustomerId,\r\n\t\t\tSBApiKeys.CustomerPaymentMethods,\r\n\t\t\tid,\r\n\t\t],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.customers.retrievePaymentMethod(\r\n\t\t\t\tcustomerId,\r\n\t\t\t\tid,\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t),\r\n\t\t...queryOptions,\r\n\t});\r\n};\r\n","import {\r\n\tCustomerCreateRequest,\r\n\tPaginatedResult,\r\n\tSBCustomer,\r\n\tSBRequestOptions,\r\n\tCustomerListRequest,\r\n\tCustomerBalanceTransactionListRequest,\r\n} from \"@smartbills/sdk\";\r\n\r\nimport { useApiClient } from \"@/api\";\r\nimport {\r\n\tDefinedInitialDataOptions,\r\n\tQueryKey,\r\n\tqueryOptions as reactQueryOptions,\r\n\tuseInfiniteQuery,\r\n\tuseQuery,\r\n} from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListCustomerBalanceTransactions = (\r\n\tcustomerId: number,\r\n\trequest: CustomerBalanceTransactionListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<CustomerListRequest>,\r\n\tqueryOptions?: DefinedInitialDataOptions<unknown, Error, unknown, QueryKey>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useQuery({\r\n\t\tqueryKey: [\r\n\t\t\tSBApiKeys.Customers,\r\n\t\t\tcustomerId,\r\n\t\t\tSBApiKeys.CustomerBalanceTransactions,\r\n\t\t],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.customers.listBalanceTransactions(\r\n\t\t\t\tcustomerId,\r\n\t\t\t\trequest,\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t),\r\n\t\t...queryOptions,\r\n\t});\r\n};\r\n\r\nexport const useRetrieveCustomerBalanceTransaction = (\r\n\tcustomerId: number,\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<CustomerListRequest>,\r\n\tqueryOptions?: DefinedInitialDataOptions<unknown, Error, unknown, QueryKey>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useQuery({\r\n\t\tqueryKey: [\r\n\t\t\tSBApiKeys.Customers,\r\n\t\t\tcustomerId,\r\n\t\t\tSBApiKeys.CustomerBalanceTransactions,\r\n\t\t\tid,\r\n\t\t],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.customers.retrieveBalanceTransaction(\r\n\t\t\t\tcustomerId,\r\n\t\t\t\tid,\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t),\r\n\t\t...queryOptions,\r\n\t});\r\n};\r\n","import {\r\n\tSBDomain,\r\n\tGetDomainsRequest,\r\n\tCreateDomainsRequest,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListDomains = (\r\n\trequest: GetDomainsRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<GetDomainsRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Domains, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.domains.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetDomainById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBDomain, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Domains, id],\r\n\t\tqueryFn: async () => await client.domains.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useCreateDomainMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBDomain, SBApiException, CreateDomainsRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: CreateDomainsRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<CreateDomainsRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.domains.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Domains],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteDomainMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBDomain, SBApiException, number>({\r\n\t\tmutationKey: [SBApiKeys.Domains],\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.domains.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Domains],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Domains, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tLocationsListRequest,\r\n\tLocationCreateRequest,\r\n\tLocationUpdateRequest,\r\n\tSBLocation,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\n\r\nexport const useListLocations = (\r\n\trequest: LocationsListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<LocationsListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Locations, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.locations.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetLocationById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBLocation, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Locations, id],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.locations.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useCreateLocationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBLocation, SBApiException, LocationCreateRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: LocationCreateRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<LocationCreateRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.locations.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteLocationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBLocation, SBApiException, number>({\r\n\t\tmutationKey: [SBApiKeys.Locations],\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.locations.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateLocationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBLocation,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\trequest: LocationUpdateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<LocationUpdateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationKey: [SBApiKeys.Locations],\r\n\t\tmutationFn: async ({ id, request, options, config }) => {\r\n\t\t\treturn await client.locations.update(id, request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Locations, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import { useMutation } from \"@tanstack/react-query\";\r\nimport { AxiosError } from \"axios\";\r\nimport { useApiClient } from \"@/api\";\r\nimport {\r\n\tAccessTokenResponse,\r\n\tGetTokenRequest,\r\n\tAuthorizationCodeResponse,\r\n\tAuthorizeRequest,\r\n\tRefreshTokenRequest,\r\n} from \"@smartbills/sdk\";\r\n\r\nexport const useGetTokenMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<AccessTokenResponse, AxiosError, GetTokenRequest>({\r\n\t\tmutationFn: async (request) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.oauth.getToken(request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error as AxiosError;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetAuthorizationCodeMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<AuthorizationCodeResponse, AxiosError, AuthorizeRequest>(\r\n\t\t{\r\n\t\t\tmutationFn: async (request) => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\treturn await client.oauth.getAuthorizationCode(request);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthrow error as AxiosError;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t},\r\n\t);\r\n};\r\n\r\nexport const useRefreshTokenMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<AccessTokenResponse, AxiosError, RefreshTokenRequest>({\r\n\t\tmutationFn: async (request) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.oauth.refreshToken(request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error as AxiosError;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n","import { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport {\r\n\tOrganizationCreateRequest,\r\n\tOrganizationListRequest,\r\n\tSBOrganization,\r\n\tOrganizationUpdateRequest,\r\n\tOrganizationMemberListRequest,\r\n\tSBOrganizationMember,\r\n\tSBApiException,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\n\r\nexport const useListOrganizations = (\r\n\trequest: OrganizationListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<OrganizationListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Organizations, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn client.organizations.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetPreviousPageParam: (firstPage) => {\r\n\t\t\tif (firstPage.pagination.currentPage === 1) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn firstPage.pagination.currentPage - 1;\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetOrganizationById = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBOrganization, SBApiException>({\r\n\t\tqueryKey: [\"organization\", id],\r\n\t\tqueryFn: async () => await client.organizations.getById(id),\r\n\t});\r\n};\r\n\r\nexport const useCreateOrganizationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBOrganization,\r\n\t\tSBApiException,\r\n\t\tOrganizationCreateRequest\r\n\t>({\r\n\t\tmutationFn: async (request: OrganizationCreateRequest) => {\r\n\t\t\treturn client.organizations.create(request);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Organizations],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateOrganizationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBOrganization,\r\n\t\tSBApiException,\r\n\t\t{ id: number; request: OrganizationUpdateRequest }\r\n\t>({\r\n\t\tmutationFn: async ({ id, request }) => {\r\n\t\t\treturn client.organizations.update(id, request);\r\n\t\t},\r\n\t\tonSuccess: (_, { id }) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [\"organization\", id] });\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Organizations],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteOrganizationMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBOrganization, SBApiException, number>({\r\n\t\tmutationFn: async (id: number) => {\r\n\t\t\treturn client.organizations.delete(id);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Organizations],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [\"organization\", id] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListOrganizationMembers = (\r\n\torganizationId: number,\r\n\trequest: OrganizationMemberListRequest,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBOrganizationMember[], SBApiException>({\r\n\t\tqueryKey: [\"organizationMembers\", organizationId, request],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn client.organizations.listMembers(organizationId, request);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetOrganizationMemberById = (\r\n\torganizationId: number,\r\n\tid: number,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBOrganizationMember, SBApiException>({\r\n\t\tqueryKey: [\"organizationMember\", organizationId, id],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.organizations.getMemberById(organizationId, id),\r\n\t});\r\n};\r\n\r\nexport const useDeleteOrganizationMember = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBOrganizationMember,\r\n\t\tSBApiException,\r\n\t\t{ organizationId: number; id: number }\r\n\t>({\r\n\t\tmutationFn: async ({ organizationId, id }) => {\r\n\t\t\treturn client.organizations.deleteMember(organizationId, id);\r\n\t\t},\r\n\t\tonSuccess: (_, { organizationId, id }) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [\"organizationMembers\", organizationId],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [\"organizationMember\", organizationId, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaymentMethodCreateRequest,\r\n\tPaymentMethodListRequest,\r\n\tSBPaymentMethod,\r\n\tSBPaymentMethodSetup,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useCreatePaymentMethodMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBPaymentMethod,\r\n\t\tSBApiException,\r\n\t\tPaymentMethodCreateRequest\r\n\t>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: PaymentMethodCreateRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<PaymentMethodCreateRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.paymentMethods.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PaymentMethods],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetPaymentMethods = (\r\n\trequest: PaymentMethodListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBPaymentMethod[], SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.PaymentMethods],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.paymentMethods.get(request, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetPaymentMethodById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBPaymentMethod, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.PaymentMethods, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.paymentMethods.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeletePaymentMethodMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBPaymentMethod, SBApiException, number>({\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.paymentMethods.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PaymentMethods, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useSetupPaymentMethodMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBPaymentMethodSetup, SBApiException, void>({\r\n\t\tmutationFn: async (\r\n\t\t\t_,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.paymentMethods.setup(options, config);\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPromoCodeCreateRequest,\r\n\tPromoCodeListRequest,\r\n\tPromoCodeUpdateRequest,\r\n\tSBPromoCode,\r\n\tSBRequestOptions,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListPromoCodes = (\r\n\trequest: PromoCodeListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<PromoCodeListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.PromoCodes, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.promoCodes.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetPromoCodeById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBPromoCode, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.PromoCodes, id],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.promoCodes.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useCreatePromoCodeMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBPromoCode, SBApiException, PromoCodeCreateRequest>({\r\n\t\tmutationFn: async (\r\n\t\t\trequest: PromoCodeCreateRequest,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig<PromoCodeCreateRequest>,\r\n\t\t) => {\r\n\t\t\treturn await client.promoCodes.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeletePromoCodeMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<SBPromoCode, SBApiException, number>({\r\n\t\tmutationKey: [SBApiKeys.PromoCodes],\r\n\t\tmutationFn: async (\r\n\t\t\tid: number,\r\n\t\t\toptions?: SBRequestOptions,\r\n\t\t\tconfig?: AxiosRequestConfig,\r\n\t\t) => {\r\n\t\t\treturn await client.promoCodes.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdatePromoCodeMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBPromoCode,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\trequest: PromoCodeUpdateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<PromoCodeUpdateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationKey: [SBApiKeys.PromoCodes],\r\n\t\tmutationFn: async ({ id, request, options, config }) => {\r\n\t\t\treturn await client.promoCodes.update(id, request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, id) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes],\r\n\t\t\t});\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.PromoCodes, id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tReceiptListRequest,\r\n\tSBApiException,\r\n\tSBReceipt,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\n\r\nexport const RECEIPTS_KEY: string = \"receipts\";\r\n\r\nexport const useGetReceiptById = (id: number, options?: SBRequestOptions) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBReceipt, SBApiException>({\r\n\t\tqueryKey: [RECEIPTS_KEY, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.receipts.getById(id, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListReceipts = (\r\n\trequest: ReceiptListRequest,\r\n\toptions?: SBRequestOptions,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useInfiniteQuery({\r\n\t\tqueryKey: [RECEIPTS_KEY],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.receipts.list(request, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t\tinitialPageParam: 1,\r\n\t\tgetNextPageParam: (\r\n\t\t\tlastPage: PaginatedResult<SBReceipt>,\r\n\t\t\tallPages,\r\n\t\t\tlastPageParam,\r\n\t\t) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPageParam + 1;\r\n\t\t},\r\n\t\tgetPreviousPageParam: (\r\n\t\t\tfirstPage: PaginatedResult<SBReceipt>,\r\n\t\t\tallPages,\r\n\t\t\tfirstPageParam,\r\n\t\t) => {\r\n\t\t\tif (firstPage.pagination.currentPage == 1) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn firstPageParam - 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteReceiptMutation = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [RECEIPTS_KEY, id],\r\n\t\tmutationFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.receipts.delete(id, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonMutate: async (receipt) => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [RECEIPTS_KEY] });\r\n\t\t\tconst previousTodos = queryClient.getQueryData([RECEIPTS_KEY]);\r\n\t\t\t// queryClient.setQueryData([RECEIPTS_KEY], (old) => [...old, newTodo])\r\n\r\n\t\t\t// Return a context object with the snapshotted value\r\n\t\t\treturn { previousTodos };\r\n\t\t},\r\n\t\tonError: (err, newTodo, context) => {\r\n\t\t\tqueryClient.setQueryData([RECEIPTS_KEY], context.previousTodos);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [RECEIPTS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tReviewCreateRequest,\r\n\tReviewUpdateRequest,\r\n\tSBReview,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\n\r\nexport const REVIEWS_KEY: string = \"REVIEWS\";\r\nexport const useListReviews = (request: any) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [REVIEWS_KEY, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.list({\r\n\t\t\t\t\t...request,\r\n\t\t\t\t\tpage: pageParam,\r\n\t\t\t\t});\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage: PaginatedResult<SBReview>) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetReviewById = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBReview, SBApiException>({\r\n\t\tqueryKey: [REVIEWS_KEY, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.getById(id);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCreateReviewMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation({\r\n\t\tmutationKey: [REVIEWS_KEY],\r\n\t\tmutationFn: async (request: ReviewCreateRequest) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.create(request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [REVIEWS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteReviewMutation = (id: number) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [REVIEWS_KEY, id],\r\n\t\tmutationFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.delete(id);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonMutate: async () => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [REVIEWS_KEY] });\r\n\t\t\tconst previousReviews = queryClient.getQueryData([REVIEWS_KEY]);\r\n\t\t\treturn { previousReviews };\r\n\t\t},\r\n\t\tonError: (err, _, context) => {\r\n\t\t\tqueryClient.setQueryData([REVIEWS_KEY], context?.previousReviews);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [REVIEWS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateReviewMutation = () => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [REVIEWS_KEY],\r\n\t\tmutationFn: async ([id, request]: [number, ReviewUpdateRequest]) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.update(id, request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonSettled: (data, SBApiException, [id]) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [REVIEWS_KEY, id] });\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tSBApiException,\r\n\tSBRequestOptions,\r\n\tSBTax,\r\n\tTaxCreateRequest,\r\n\tTaxListRequest,\r\n\tTaxUpdateRequest,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useListTaxes = (\r\n\trequest: TaxListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<TaxListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<PaginatedResult<SBTax>, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Taxes],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.taxes.list(request, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetTaxById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<TaxListRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBTax, SBApiException>({\r\n\t\tqueryKey: [SBApiKeys.Taxes, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\treturn await client.taxes.getById(id, options, config);\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCreateTaxMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBTax,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\trequest: TaxCreateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<TaxCreateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ request, options, config }) => {\r\n\t\t\treturn await client.taxes.create(request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (data) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Taxes, data.id],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteTaxMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBTax,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<TaxCreateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ id, options, config }) => {\r\n\t\t\treturn await client.taxes.delete(id, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, request) => {\r\n\t\t\tqueryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [(SBApiKeys.Taxes, request.id)],\r\n\t\t\t});\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateTaxMutation = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<\r\n\t\tSBTax,\r\n\t\tSBApiException,\r\n\t\t{\r\n\t\t\tid: number;\r\n\t\t\trequest: TaxUpdateRequest;\r\n\t\t\toptions?: SBRequestOptions;\r\n\t\t\tconfig?: AxiosRequestConfig<TaxUpdateRequest>;\r\n\t\t}\r\n\t>({\r\n\t\tmutationFn: async ({ id, request, options, config }) => {\r\n\t\t\treturn await client.taxes.update(id, request, options, config);\r\n\t\t},\r\n\t\tonSuccess: (_, { id }) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Taxes, id] });\r\n\t\t},\r\n\t});\r\n};\r\n","import { SBRequestOptions } from \"@smartbills/sdk\";\r\nimport { useQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nimport { useApiClient } from \"@/api\";\r\n\r\nexport const useGetCurrentUser = (\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst smartbillsClient = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [SBApiKeys.User],\r\n\t\tqueryFn: async () => await smartbillsClient.user.get(options, config),\r\n\t});\r\n};\r\n","import { SearchUsersRequest, SBRequestOptions } from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { useInfiniteQuery } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\n\r\nexport const useSearchUsers = (\r\n\trequest: SearchUsersRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<SearchUsersRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [SBApiKeys.Users, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.users.list(\r\n\t\t\t\t{ ...request, page: pageParam },\r\n\t\t\t\toptions,\r\n\t\t\t\tconfig,\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.pagination.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tVendorCreateRequest,\r\n\tPaginatedResult,\r\n\tSBVendor,\r\n\tSBRequestOptions,\r\n\tPaginationRequest,\r\n} from \"@smartbills/sdk\";\r\n\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\nimport { useQuery, useInfiniteQuery, useMutation } from \"@tanstack/react-query\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\nimport { SBApiKeys } from \"../SBApiKeys\";\r\nexport const useGetVendorById = (id: number, options?: SBRequestOptions) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBVendor, Error>({\r\n\t\tqueryKey: [SBApiKeys.Vendors, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.vendors.getById(id, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useListVendors = (\r\n\trequest: PaginationRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig<PaginationRequest>,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useInfiniteQuery({\r\n\t\tqueryKey: [SBApiKeys.Vendors],\r\n\t\tqueryFn: async () =>\r\n\t\t\tawait client.vendors.list(request, options, config),\r\n\t\tinitialPageParam: 1,\r\n\t\tgetNextPageParam: (\r\n\t\t\tlastPage: PaginatedResult<SBVendor>,\r\n\t\t\tallPages,\r\n\t\t\tlastPageParam,\r\n\t\t) => {\r\n\t\t\tif (\r\n\t\t\t\tlastPage.pagination.currentPage ===\r\n\t\t\t\tlastPage.pagination.pageCount\r\n\t\t\t) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPageParam + 1;\r\n\t\t},\r\n\t\tgetPreviousPageParam: (\r\n\t\t\tfirstPage: PaginatedResult<SBVendor>,\r\n\t\t\tallPages,\r\n\t\t\tfirstPageParam,\r\n\t\t) => {\r\n\t\t\tif (firstPage.pagination.currentPage <= 1) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn firstPageParam - 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCreateVendorMutation = () => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [SBApiKeys.Vendors],\r\n\t\tmutationFn: client.vendors.create,\r\n\t\tonMutate: async (vendor) => {\r\n\t\t\tawait queryClient.cancelQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Vendors],\r\n\t\t\t});\r\n\t\t\tconst previousTodos = queryClient.getQueryData([SBApiKeys.Vendors]);\r\n\t\t\t// queryClient.setQueryData([SBApiKeys.Vendors], (old) => [...old, newTodo])\r\n\r\n\t\t\t// Return a context object with the snapshotted value\r\n\t\t\treturn { previousTodos };\r\n\t\t},\r\n\t\tonError: (err, newTodo, context) => {\r\n\t\t\tqueryClient.setQueryData(\r\n\t\t\t\t[SBApiKeys.Vendors],\r\n\t\t\t\tcontext.previousTodos,\r\n\t\t\t);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Vendors] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteVendorMutation = () => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [SBApiKeys.Vendors],\r\n\t\tmutationFn: client.vendors.delete,\r\n\t\tonSuccess: async (response, id) => {\r\n\t\t\tawait queryClient.invalidateQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Vendors, id],\r\n\t\t\t});\r\n\t\t\tqueryClient.removeQueries({ queryKey: [SBApiKeys.Vendors, id] });\r\n\t\t},\r\n\t\tonMutate: async (Vendor) => {\r\n\t\t\tawait queryClient.cancelQueries({\r\n\t\t\t\tqueryKey: [SBApiKeys.Vendors],\r\n\t\t\t});\r\n\t\t\tconst previousTodos = queryClient.getQueryData([SBApiKeys.Vendors]);\r\n\t\t\t// queryClient.setQueryData([SBApiKeys.Vendors], (old) => [...old, newTodo])\r\n\r\n\t\t\t// Return a context object with the snapshotted value\r\n\t\t\treturn { previousTodos };\r\n\t\t},\r\n\t\tonError: (err, newTodo, context) => {\r\n\t\t\tqueryClient.setQueryData(\r\n\t\t\t\t[SBApiKeys.Vendors],\r\n\t\t\t\tcontext.previousTodos,\r\n\t\t\t);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Vendors] });\r\n\t\t},\r\n\t});\r\n};\r\n"],"names":["ApiClientContext","createContext","undefined","ApiClientProvider","client","children","React","createElement","Provider","value","useApiClient","context","useContext","Error","SBApiKeys","useGetLogById","id","options","config","useQuery","queryKey","Logs","queryFn","logs","getById","useListLogs","request","list","useGetBankAccountById","BankAccounts","bankAccounts","useGetBankAccounts","get","useListBankAccountTransanctions","useInfiniteQuery","initialPageParam","page","pageParam","listTransactions","getPreviousPageParam","firstPage","pagination","currentPage","getNextPageParam","lastPage","pageCount","useListBankTransactions","bankTransactions","useGetBankTransaction","queryClient","QueryClient","SmartbillsSDKProvider","QueryClientProvider","BANKS_KEY","BANK_ACCOUNTS_KEY","BANK_TRANSACTIONS_KEY","useGetBankById","banks","useGetBankAccountForBank","accountId","getBankAccount","useListBankAccountTransactions","listBankAccountTransactions","useGetBankLinkTokenMutation","useMutation","mutationKey","BankLinkToken","mutationFn","getBankLinkToken","useGetBankLink","BankLink","getBankLink","useGetBanks","useCreateBankMutation","create","onSuccess","invalidateQueries","useDeleteBankMutation","delete","onMutate","cancelQueries","previousBanks","getQueryData","setQueryData","old","data","filter","bank","onError","err","_","onSettled","useCreateCardMutation","cards","Cards","useAttachCardMutation","attach","useDetachCardMutation","detach","useGetCards","useGetCardById","useCreateCardSetupIntentMutation","CardSetupIntents","createSetupIntent","useConfirmCardSetupIntentMutation","confirmSetupIntent","useCancelCardSetupIntentMutation","cancelSetupIntent","useGetCardSetupIntentById","getSetupIntent","useListDocuments","Documents","documents","useGetDocument","useUploadDocumentMutatioon","upload","useDeleteDocumentMutation","useListFriends","Friends","friends","useListRecommandedFriends","listRecommanded","useDeleteFriendMutation","useListMerchants","Merchants","merchants","useGetMerchantById","useCreateMerchantMutation","useDeleteMerchantMutation","useUpdateMerchantMutation","update","useGetCustomerById","Customers","customers","exception","useListCustomers","allPages","lastPageParam","firstPageParam","useCreateCustomerMutation","customer","previousTodos","newTodo","useDeleteCustomerMutation","response","removeQueries","Customer","useListCustomerPaymentMethods","customerId","queryOptions","CustomerPaymentMethods","listPaymentMethods","useGetCustomerPaymentMethodById","retrievePaymentMethod","useListCustomerBalanceTransactions","CustomerBalanceTransactions","listBalanceTransactions","useRetrieveCustomerBalanceTransaction","retrieveBalanceTransaction","useListDomains","Domains","domains","useGetDomainById","useCreateDomainMutation","useDeleteDomainMutation","useListLocations","Locations","locations","useGetLocationById","useCreateLocationMutation","useDeleteLocationMutation","useUpdateLocationMutation","useGetTokenMutation","oauth","getToken","error","useGetAuthorizationCodeMutation","getAuthorizationCode","useRefreshTokenMutation","refreshToken","useListOrganizations","Organizations","organizations","useGetOrganizationById","useCreateOrganizationMutation","useUpdateOrganizationMutation","useDeleteOrganizationMutation","useListOrganizationMembers","organizationId","listMembers","useGetOrganizationMemberById","getMemberById","useDeleteOrganizationMember","deleteMember","useCreatePaymentMethodMutation","paymentMethods","PaymentMethods","useGetPaymentMethods","useGetPaymentMethodById","useDeletePaymentMethodMutation","useSetupPaymentMethodMutation","setup","useListPromoCodes","PromoCodes","promoCodes","useGetPromoCodeById","useCreatePromoCodeMutation","useDeletePromoCodeMutation","useUpdatePromoCodeMutation","RECEIPTS_KEY","useGetReceiptById","receipts","useListReceipts","useDeleteReceiptMutation","receipt","REVIEWS_KEY","useListReviews","reviews","useGetReviewById","useCreateReviewMutation","useDeleteReviewMutation","previousReviews","useUpdateReviewMutation","SBApiException","useListTaxes","Taxes","taxes","useGetTaxById","useCreateTaxMutation","useDeleteTaxMutation","useUpdateTaxMutation","useGetCurrentUser","smartbillsClient","User","user","useSearchUsers","Users","users","useGetVendorById","Vendors","vendors","useListVendors","useCreateVendorMutation","vendor","useDeleteVendorMutation","Vendor"],"mappings":"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jCM,OAAO,EAAE,YAAY,MAAMlB,MAAM,CAAC2C,gBAAgB,CAACvB,OAAO,CAACR,EAAE,CAAA;IAC7D,GAAA,CAAC,CAAA;IACH,EAAC;IAED;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;UCpKaiC,WAAW,GAAG,IAAIC,sBAAW,GAAE;aAE5BC,qBAAqBA,CAAC;MACrC/C,MAAM;IACNC,EAAAA,QAAAA;IACyC,CAAA,EAAA;IACzC,EAAA,oBACCC,KAAC,CAAAC,aAAA,CAAAJ,iBAAiB,EAAC;IAAAC,IAAAA,MAAM,EAAEA,MAAAA;IAAM,GAAA,eAChCE,KAAC,CAAAC,aAAA,CAAA6C,8BAAmB,EAAC;IAAAhD,IAAAA,MAAM,EAAE6C,WAAAA;SAC3B5C,QAAQ,CACY,CACH,CAAA;IAEtB;;ACIO,UAAMgD,SAAS,GAAG,QAAO;AACzB,UAAMC,iBAAiB,GAAG,eAAc;AACxC,UAAMC,qBAAqB,GAAG,mBAAkB;AAE1CC,UAAAA,cAAc,GAAIxC,EAAU,IAAI;IAC5C,EAAA,MAAMZ,MAAM,GAAGM,YAAY,EAAE,CAAA;IAC7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"}