summaryrefslogtreecommitdiff
path: root/src/lib/invoice/hooks
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/invoice/hooks')
-rw-r--r--src/lib/invoice/hooks/useInvoice.js13
-rw-r--r--src/lib/invoice/hooks/useInvoices.js15
2 files changed, 28 insertions, 0 deletions
diff --git a/src/lib/invoice/hooks/useInvoice.js b/src/lib/invoice/hooks/useInvoice.js
new file mode 100644
index 00000000..2de5e91e
--- /dev/null
+++ b/src/lib/invoice/hooks/useInvoice.js
@@ -0,0 +1,13 @@
+import { useQuery } from 'react-query'
+import invoiceApi from '../api/invoiceApi'
+
+const useInvoice = ({ id }) => {
+ const fetchInvoice = async () => await invoiceApi({ id })
+ const { data, isLoading, refetch } = useQuery(`invoice-${id}`, fetchInvoice)
+
+ return {
+ invoice: { data, isLoading, refetch }
+ }
+}
+
+export default useInvoice
diff --git a/src/lib/invoice/hooks/useInvoices.js b/src/lib/invoice/hooks/useInvoices.js
new file mode 100644
index 00000000..061626e4
--- /dev/null
+++ b/src/lib/invoice/hooks/useInvoices.js
@@ -0,0 +1,15 @@
+import { useQuery } from 'react-query'
+import invoicesApi from '../api/invoicesApi'
+import _ from 'lodash-contrib'
+
+const useInvoices = ({ query }) => {
+ const queryString = _.toQuery(query)
+ const fetchInvoices = async () => await invoicesApi({ query: queryString })
+ const { data, isLoading, refetch } = useQuery(`invoices-${queryString}`, fetchInvoices)
+
+ return {
+ invoices: { data, isLoading, refetch }
+ }
+}
+
+export default useInvoices