@smartbills/react-hooks-sdk 0.0.2-alpha.44 → 0.0.2-alpha.46

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 (161) hide show
  1. package/dist/@types/index.d.ts +1447 -0
  2. package/dist/@types/index.d.ts.map +1 -0
  3. package/dist/cjs/apis/SBApiKeys.cjs +56 -0
  4. package/dist/cjs/apis/SBApiKeys.cjs.map +1 -0
  5. package/dist/cjs/apis/api-logs/LogsAPI.cjs +42 -0
  6. package/dist/cjs/apis/api-logs/LogsAPI.cjs.map +1 -0
  7. package/dist/cjs/apis/attachments/AttachmentsAPI.cjs +147 -0
  8. package/dist/cjs/apis/attachments/AttachmentsAPI.cjs.map +1 -0
  9. package/dist/cjs/apis/banks/accounts/BankAccountAPI.cjs +88 -0
  10. package/dist/cjs/apis/banks/accounts/BankAccountAPI.cjs.map +1 -0
  11. package/dist/cjs/apis/banks/bank-institutions/BankInstitutionsAPI.cjs +58 -0
  12. package/dist/cjs/apis/banks/bank-institutions/BankInstitutionsAPI.cjs.map +1 -0
  13. package/dist/cjs/apis/banks/bank-transactions/BankTransactionAPI.cjs +57 -0
  14. package/dist/cjs/apis/banks/bank-transactions/BankTransactionAPI.cjs.map +1 -0
  15. package/dist/cjs/apis/business/BusinessAPI.cjs +172 -0
  16. package/dist/cjs/apis/business/BusinessAPI.cjs.map +1 -0
  17. package/dist/cjs/apis/business/customers/CustomerAPI.cjs +161 -0
  18. package/dist/cjs/apis/business/customers/CustomerAPI.cjs.map +1 -0
  19. package/dist/cjs/apis/business/customers/CustomerBalanceTransactionsAPI.cjs +71 -0
  20. package/dist/cjs/apis/business/customers/CustomerBalanceTransactionsAPI.cjs.map +1 -0
  21. package/dist/cjs/apis/business/customers/CustomerPaymentMethodsAPI.cjs +176 -0
  22. package/dist/cjs/apis/business/customers/CustomerPaymentMethodsAPI.cjs.map +1 -0
  23. package/dist/cjs/apis/business/departments/DepartmentApi.cjs +168 -0
  24. package/dist/cjs/apis/business/departments/DepartmentApi.cjs.map +1 -0
  25. package/dist/cjs/apis/business/departments/employees/DepartmentEmployeesAPI.cjs +137 -0
  26. package/dist/cjs/apis/business/departments/employees/DepartmentEmployeesAPI.cjs.map +1 -0
  27. package/dist/cjs/apis/business/fees/FeesAPI.cjs +167 -0
  28. package/dist/cjs/apis/business/fees/FeesAPI.cjs.map +1 -0
  29. package/dist/cjs/apis/business/locations/LocationsAPI.cjs +133 -0
  30. package/dist/cjs/apis/business/locations/LocationsAPI.cjs.map +1 -0
  31. package/dist/cjs/apis/business/products/ProductsAPI.cjs +184 -0
  32. package/dist/cjs/apis/business/products/ProductsAPI.cjs.map +1 -0
  33. package/dist/cjs/apis/business/products/images/ProductImagesAPI.cjs +195 -0
  34. package/dist/cjs/apis/business/products/images/ProductImagesAPI.cjs.map +1 -0
  35. package/dist/cjs/apis/business/products/modifiers/ModifiersAPI.cjs +169 -0
  36. package/dist/cjs/apis/business/products/modifiers/ModifiersAPI.cjs.map +1 -0
  37. package/dist/cjs/apis/business/products/options/ProductOptionsAPI.cjs +183 -0
  38. package/dist/cjs/apis/business/products/options/ProductOptionsAPI.cjs.map +1 -0
  39. package/dist/cjs/apis/business/products/variants/ProductVariantsAPI.cjs +185 -0
  40. package/dist/cjs/apis/business/products/variants/ProductVariantsAPI.cjs.map +1 -0
  41. package/dist/cjs/apis/business/promo-codes/PromoCodesAPI.cjs +139 -0
  42. package/dist/cjs/apis/business/promo-codes/PromoCodesAPI.cjs.map +1 -0
  43. package/dist/cjs/apis/business/reviews/ReviewsAPI.cjs +143 -0
  44. package/dist/cjs/apis/business/reviews/ReviewsAPI.cjs.map +1 -0
  45. package/dist/cjs/apis/business/tables/TablesAPI.cjs +75 -0
  46. package/dist/cjs/apis/business/tables/TablesAPI.cjs.map +1 -0
  47. package/dist/cjs/apis/business/taxes/TaxesAPI.cjs +140 -0
  48. package/dist/cjs/apis/business/taxes/TaxesAPI.cjs.map +1 -0
  49. package/dist/cjs/apis/business/team/TeamMemberInvitationsAPI.cjs +161 -0
  50. package/dist/cjs/apis/business/team/TeamMemberInvitationsAPI.cjs.map +1 -0
  51. package/dist/cjs/apis/business/team/TeamMembersAPI.cjs +93 -0
  52. package/dist/cjs/apis/business/team/TeamMembersAPI.cjs.map +1 -0
  53. package/dist/cjs/apis/business/vendors/VendorsAPI.cjs +237 -0
  54. package/dist/cjs/apis/business/vendors/VendorsAPI.cjs.map +1 -0
  55. package/dist/cjs/apis/documents/DocumentsAPI.cjs +87 -0
  56. package/dist/cjs/apis/documents/DocumentsAPI.cjs.map +1 -0
  57. package/dist/cjs/apis/expenses/ExpensesAPI.cjs +62 -0
  58. package/dist/cjs/apis/expenses/ExpensesAPI.cjs.map +1 -0
  59. package/dist/cjs/apis/friends/FriendsAPI.cjs +150 -0
  60. package/dist/cjs/apis/friends/FriendsAPI.cjs.map +1 -0
  61. package/dist/cjs/apis/integrations/IntegrationsAPI.cjs +55 -0
  62. package/dist/cjs/apis/integrations/IntegrationsAPI.cjs.map +1 -0
  63. package/dist/cjs/apis/invoices/InvoicesAPI.cjs +168 -0
  64. package/dist/cjs/apis/invoices/InvoicesAPI.cjs.map +1 -0
  65. package/dist/cjs/apis/loyalty/LoyaltyProgramAPI.cjs +484 -0
  66. package/dist/cjs/apis/loyalty/LoyaltyProgramAPI.cjs.map +1 -0
  67. package/dist/cjs/apis/notifications/NotificationAPI.cjs +103 -0
  68. package/dist/cjs/apis/notifications/NotificationAPI.cjs.map +1 -0
  69. package/dist/cjs/apis/payment-methods/PaymentMethodsAPI.cjs +125 -0
  70. package/dist/cjs/apis/payment-methods/PaymentMethodsAPI.cjs.map +1 -0
  71. package/dist/cjs/apis/receipts/ReceiptAPI.cjs +135 -0
  72. package/dist/cjs/apis/receipts/ReceiptAPI.cjs.map +1 -0
  73. package/dist/cjs/apis/user/UserAPI.cjs +130 -0
  74. package/dist/cjs/apis/user/UserAPI.cjs.map +1 -0
  75. package/dist/cjs/apis/vendors/VendorsAPI.cjs +215 -0
  76. package/dist/cjs/apis/vendors/VendorsAPI.cjs.map +1 -0
  77. package/dist/cjs/context/ApiContext.cjs +94 -0
  78. package/dist/cjs/context/ApiContext.cjs.map +1 -0
  79. package/dist/cjs/index.cjs +224 -0
  80. package/dist/cjs/index.cjs.map +1 -0
  81. package/dist/esm/apis/SBApiKeys.mjs +56 -0
  82. package/dist/esm/apis/SBApiKeys.mjs.map +1 -0
  83. package/dist/esm/apis/api-logs/LogsAPI.mjs +39 -0
  84. package/dist/esm/apis/api-logs/LogsAPI.mjs.map +1 -0
  85. package/dist/esm/apis/attachments/AttachmentsAPI.mjs +142 -0
  86. package/dist/esm/apis/attachments/AttachmentsAPI.mjs.map +1 -0
  87. package/dist/esm/apis/banks/accounts/BankAccountAPI.mjs +84 -0
  88. package/dist/esm/apis/banks/accounts/BankAccountAPI.mjs.map +1 -0
  89. package/dist/esm/apis/banks/bank-institutions/BankInstitutionsAPI.mjs +55 -0
  90. package/dist/esm/apis/banks/bank-institutions/BankInstitutionsAPI.mjs.map +1 -0
  91. package/dist/esm/apis/banks/bank-transactions/BankTransactionAPI.mjs +54 -0
  92. package/dist/esm/apis/banks/bank-transactions/BankTransactionAPI.mjs.map +1 -0
  93. package/dist/esm/apis/business/BusinessAPI.mjs +165 -0
  94. package/dist/esm/apis/business/BusinessAPI.mjs.map +1 -0
  95. package/dist/esm/apis/business/customers/CustomerAPI.mjs +155 -0
  96. package/dist/esm/apis/business/customers/CustomerAPI.mjs.map +1 -0
  97. package/dist/esm/apis/business/customers/CustomerBalanceTransactionsAPI.mjs +68 -0
  98. package/dist/esm/apis/business/customers/CustomerBalanceTransactionsAPI.mjs.map +1 -0
  99. package/dist/esm/apis/business/customers/CustomerPaymentMethodsAPI.mjs +170 -0
  100. package/dist/esm/apis/business/customers/CustomerPaymentMethodsAPI.mjs.map +1 -0
  101. package/dist/esm/apis/business/departments/DepartmentApi.mjs +161 -0
  102. package/dist/esm/apis/business/departments/DepartmentApi.mjs.map +1 -0
  103. package/dist/esm/apis/business/departments/employees/DepartmentEmployeesAPI.mjs +132 -0
  104. package/dist/esm/apis/business/departments/employees/DepartmentEmployeesAPI.mjs.map +1 -0
  105. package/dist/esm/apis/business/fees/FeesAPI.mjs +161 -0
  106. package/dist/esm/apis/business/fees/FeesAPI.mjs.map +1 -0
  107. package/dist/esm/apis/business/locations/LocationsAPI.mjs +127 -0
  108. package/dist/esm/apis/business/locations/LocationsAPI.mjs.map +1 -0
  109. package/dist/esm/apis/business/products/ProductsAPI.mjs +177 -0
  110. package/dist/esm/apis/business/products/ProductsAPI.mjs.map +1 -0
  111. package/dist/esm/apis/business/products/images/ProductImagesAPI.mjs +188 -0
  112. package/dist/esm/apis/business/products/images/ProductImagesAPI.mjs.map +1 -0
  113. package/dist/esm/apis/business/products/modifiers/ModifiersAPI.mjs +163 -0
  114. package/dist/esm/apis/business/products/modifiers/ModifiersAPI.mjs.map +1 -0
  115. package/dist/esm/apis/business/products/options/ProductOptionsAPI.mjs +177 -0
  116. package/dist/esm/apis/business/products/options/ProductOptionsAPI.mjs.map +1 -0
  117. package/dist/esm/apis/business/products/variants/ProductVariantsAPI.mjs +179 -0
  118. package/dist/esm/apis/business/products/variants/ProductVariantsAPI.mjs.map +1 -0
  119. package/dist/esm/apis/business/promo-codes/PromoCodesAPI.mjs +133 -0
  120. package/dist/esm/apis/business/promo-codes/PromoCodesAPI.mjs.map +1 -0
  121. package/dist/esm/apis/business/reviews/ReviewsAPI.mjs +137 -0
  122. package/dist/esm/apis/business/reviews/ReviewsAPI.mjs.map +1 -0
  123. package/dist/esm/apis/business/tables/TablesAPI.mjs +70 -0
  124. package/dist/esm/apis/business/tables/TablesAPI.mjs.map +1 -0
  125. package/dist/esm/apis/business/taxes/TaxesAPI.mjs +134 -0
  126. package/dist/esm/apis/business/taxes/TaxesAPI.mjs.map +1 -0
  127. package/dist/esm/apis/business/team/TeamMemberInvitationsAPI.mjs +153 -0
  128. package/dist/esm/apis/business/team/TeamMemberInvitationsAPI.mjs.map +1 -0
  129. package/dist/esm/apis/business/team/TeamMembersAPI.mjs +88 -0
  130. package/dist/esm/apis/business/team/TeamMembersAPI.mjs.map +1 -0
  131. package/dist/esm/apis/business/vendors/VendorsAPI.mjs +228 -0
  132. package/dist/esm/apis/business/vendors/VendorsAPI.mjs.map +1 -0
  133. package/dist/esm/apis/documents/DocumentsAPI.mjs +82 -0
  134. package/dist/esm/apis/documents/DocumentsAPI.mjs.map +1 -0
  135. package/dist/esm/apis/expenses/ExpensesAPI.mjs +58 -0
  136. package/dist/esm/apis/expenses/ExpensesAPI.mjs.map +1 -0
  137. package/dist/esm/apis/friends/FriendsAPI.mjs +144 -0
  138. package/dist/esm/apis/friends/FriendsAPI.mjs.map +1 -0
  139. package/dist/esm/apis/integrations/IntegrationsAPI.mjs +52 -0
  140. package/dist/esm/apis/integrations/IntegrationsAPI.mjs.map +1 -0
  141. package/dist/esm/apis/invoices/InvoicesAPI.mjs +161 -0
  142. package/dist/esm/apis/invoices/InvoicesAPI.mjs.map +1 -0
  143. package/dist/esm/apis/loyalty/LoyaltyProgramAPI.mjs +482 -0
  144. package/dist/esm/apis/loyalty/LoyaltyProgramAPI.mjs.map +1 -0
  145. package/dist/esm/apis/notifications/NotificationAPI.mjs +98 -0
  146. package/dist/esm/apis/notifications/NotificationAPI.mjs.map +1 -0
  147. package/dist/esm/apis/payment-methods/PaymentMethodsAPI.mjs +117 -0
  148. package/dist/esm/apis/payment-methods/PaymentMethodsAPI.mjs.map +1 -0
  149. package/dist/esm/apis/receipts/ReceiptAPI.mjs +129 -0
  150. package/dist/esm/apis/receipts/ReceiptAPI.mjs.map +1 -0
  151. package/dist/esm/apis/user/UserAPI.mjs +123 -0
  152. package/dist/esm/apis/user/UserAPI.mjs.map +1 -0
  153. package/dist/esm/apis/vendors/VendorsAPI.mjs +204 -0
  154. package/dist/esm/apis/vendors/VendorsAPI.mjs.map +1 -0
  155. package/dist/esm/context/ApiContext.mjs +86 -0
  156. package/dist/esm/context/ApiContext.mjs.map +1 -0
  157. package/dist/esm/index.mjs +39 -0
  158. package/dist/esm/index.mjs.map +1 -0
  159. package/dist/umd/index.js +5099 -0
  160. package/dist/umd/index.js.map +1 -0
  161. package/package.json +3 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocumentsAPI.cjs","sources":["../../../../src/apis/documents/DocumentsAPI.tsx"],"sourcesContent":["import {\n\tDocumentListRequest,\n\tSBList,\n\tSBDocument,\n\tDocumentUploadRequest,\n\tSBRequestOptions,\n\tSBApiException,\n} from \"@smartbills/sdk\";\nimport { useApiClient } from \"@/context\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport {\n\tuseInfiniteQuery,\n\tuseMutation,\n\tuseQuery,\n\tQueryKey,\n\tInfiniteData,\n} from \"@tanstack/react-query\";\nimport { AxiosRequestConfig } from \"axios\";\nimport { SBApiKeys } from \"@/apis/SBApiKeys\";\n\nexport function useListDocumentsInfiniteQuery(\n\trequest: DocumentListRequest = { page: 1, pageSize: 25 },\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig<DocumentListRequest>,\n) {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useInfiniteQuery<\n\t\tSBList<SBDocument>,\n\t\tSBApiException,\n\t\tInfiniteData<SBList<SBDocument>>,\n\t\tQueryKey,\n\t\tnumber\n\t>({\n\t\tinitialPageParam: request.page || 1,\n\t\tqueryKey: [SBApiKeys.Documents, request, options],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\tconst paginatedRequest = { ...request, page: pageParam };\n\t\t\treturn await client.documents.listAsync(\n\t\t\t\tpaginatedRequest,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tgetNextPageParam: (lastPage) => {\n\t\t\tif (\n\t\t\t\tlastPage.pagination &&\n\t\t\t\tlastPage.pagination.currentPage < lastPage.pagination.pageCount\n\t\t\t) {\n\t\t\t\treturn lastPage.pagination.currentPage + 1;\n\t\t\t}\n\t\t\treturn undefined;\n\t\t},\n\t});\n}\n\nexport const useGetDocumentByIdQuery = (\n\tid: number,\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useQuery<SBDocument, SBApiException>({\n\t\tqueryKey: [SBApiKeys.Documents, id, options],\n\t\tqueryFn: async () => {\n\t\t\treturn await client.documents.getByIdAsync(id, options, config);\n\t\t},\n\t});\n};\n\nexport const useUploadDocumentMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useMutation<\n\t\tSBDocument,\n\t\tSBApiException,\n\t\t{\n\t\t\trequest: DocumentUploadRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig<DocumentUploadRequest>;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ request, options, config }) => {\n\t\t\treturn await client.documents.upload(request, options);\n\t\t},\n\t\tonSuccess: () => {\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Documents] });\n\t\t},\n\t});\n};\n\nexport const useDeleteDocumentMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useMutation<\n\t\tvoid,\n\t\tSBApiException,\n\t\t{\n\t\t\tid: number;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ id, options, config }) => {\n\t\t\tawait client.documents.deleteAsync(id, options, config);\n\t\t},\n\t\tonSuccess: (_, variables) => {\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.Documents] });\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Documents, variables.id],\n\t\t\t});\n\t\t},\n\t});\n};\n"],"names":["useListDocumentsInfiniteQuery","request","page","pageSize","options","config","client","useApiClient","useQueryClient","useInfiniteQuery","initialPageParam","queryKey","SBApiKeys","Documents","queryFn","pageParam","paginatedRequest","documents","listAsync","getNextPageParam","lastPage","pagination","currentPage","pageCount","undefined","useGetDocumentByIdQuery","id","useQuery","getByIdAsync","useUploadDocumentMutation","queryClient","useMutation","mutationFn","upload","onSuccess","invalidateQueries","useDeleteDocumentMutation","deleteAsync","_","variables"],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ 'use strict';
2
+
3
+ var ApiContext = require('../../context/ApiContext.cjs');
4
+ var reactQuery = require('@tanstack/react-query');
5
+ var SBApiKeys = require('../SBApiKeys.cjs');
6
+
7
+ function useUploadMutation() {
8
+ const client = ApiContext.useApiClient();
9
+ return reactQuery.useMutation({
10
+ mutationKey: [SBApiKeys.SBApiKeys.Expenses, "upload"],
11
+ mutationFn: async ({
12
+ data,
13
+ options,
14
+ config
15
+ }) => {
16
+ return await client.expenses.uploadAsync(data, options, config);
17
+ }
18
+ });
19
+ }
20
+ function useValidateExpenseFilesMutation() {
21
+ const client = ApiContext.useApiClient();
22
+ return reactQuery.useMutation({
23
+ mutationKey: [SBApiKeys.SBApiKeys.Expenses, "validate"],
24
+ mutationFn: async ({
25
+ data,
26
+ options,
27
+ config
28
+ }) => {
29
+ return await client.expenses.validateAsync(data, options, config);
30
+ }
31
+ });
32
+ }
33
+ function useListJobInfiniteQuery(page = 1, pageSize = 150) {
34
+ const client = ApiContext.useApiClient();
35
+ return reactQuery.useInfiniteQuery({
36
+ queryKey: [SBApiKeys.SBApiKeys.Expenses, "jobs", {
37
+ page,
38
+ pageSize
39
+ }],
40
+ queryFn: async ({
41
+ pageParam = 1
42
+ }) => {
43
+ const request = {
44
+ page: pageParam,
45
+ pageSize
46
+ };
47
+ return await client.expenses.getProcessingJobsAsync(request);
48
+ },
49
+ getNextPageParam: lastPage => {
50
+ if (lastPage?.pagination?.currentPage === lastPage?.pagination?.pageCount) {
51
+ return undefined;
52
+ }
53
+ return lastPage?.pagination?.currentPage + 1;
54
+ },
55
+ initialPageParam: 1
56
+ });
57
+ }
58
+
59
+ exports.useListJobInfiniteQuery = useListJobInfiniteQuery;
60
+ exports.useUploadMutation = useUploadMutation;
61
+ exports.useValidateExpenseFilesMutation = useValidateExpenseFilesMutation;
62
+ //# sourceMappingURL=ExpensesAPI.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpensesAPI.cjs","sources":["../../../../src/apis/expenses/ExpensesAPI.tsx"],"sourcesContent":["import {\n\tExpenseUploadRequest,\n\tSBApiException,\n\tSBRequestOptions,\n\tListRequest,\n} from \"@smartbills/sdk\";\nimport { useApiClient } from \"@/context\";\nimport {\n\tuseMutation,\n\tuseInfiniteQuery,\n\tuseQueryClient,\n} from \"@tanstack/react-query\";\nimport { AxiosRequestConfig } from \"axios\";\nimport { SBApiKeys } from \"@/apis/SBApiKeys\";\n\nexport function useUploadMutation() {\n\tconst client = useApiClient();\n\treturn useMutation<\n\t\tany,\n\t\tSBApiException,\n\t\t{\n\t\t\tdata: ExpenseUploadRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationKey: [SBApiKeys.Expenses, \"upload\"],\n\t\tmutationFn: async ({ data, options, config }) => {\n\t\t\treturn await client.expenses.uploadAsync(data, options, config);\n\t\t},\n\t});\n}\n\nexport function useValidateExpenseFilesMutation() {\n\tconst client = useApiClient();\n\treturn useMutation<\n\t\tany,\n\t\tSBApiException,\n\t\t{\n\t\t\tdata: ExpenseUploadRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationKey: [SBApiKeys.Expenses, \"validate\"],\n\t\tmutationFn: async ({ data, options, config }) => {\n\t\t\treturn await client.expenses.validateAsync(data, options, config);\n\t\t},\n\t});\n}\n\nexport function useListJobInfiniteQuery(\n\tpage: number = 1,\n\tpageSize: number = 150,\n) {\n\tconst client = useApiClient();\n\treturn useInfiniteQuery({\n\t\tqueryKey: [SBApiKeys.Expenses, \"jobs\", { page, pageSize }],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\tconst request: ListRequest = {\n\t\t\t\tpage: pageParam,\n\t\t\t\tpageSize,\n\t\t\t};\n\t\t\treturn await client.expenses.getProcessingJobsAsync(request);\n\t\t},\n\t\tgetNextPageParam: (lastPage) => {\n\t\t\tif (\n\t\t\t\tlastPage?.pagination?.currentPage ===\n\t\t\t\tlastPage?.pagination?.pageCount\n\t\t\t) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t\treturn lastPage?.pagination?.currentPage + 1;\n\t\t},\n\t\tinitialPageParam: 1,\n\t});\n}\n"],"names":["useUploadMutation","client","useApiClient","useMutation","mutationKey","SBApiKeys","Expenses","mutationFn","data","options","config","expenses","uploadAsync","useValidateExpenseFilesMutation","validateAsync","useListJobInfiniteQuery","page","pageSize","useInfiniteQuery","queryKey","queryFn","pageParam","request","getProcessingJobsAsync","getNextPageParam","lastPage","pagination","currentPage","pageCount","undefined","initialPageParam"],"mappings":";;;;;;SAegBA,iBAAiBA,GAAA;AAChC,EAAA,MAAMC,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAA,OAAOC,sBAAW,CAQhB;AACDC,IAAAA,WAAW,EAAE,CAACC,mBAAS,CAACC,QAAQ,EAAE,QAAQ,CAAC;IAC3CC,UAAU,EAAE,OAAO;MAAEC,IAAI;MAAEC,OAAO;AAAEC,MAAAA;AAAQ,KAAA,KAAI;AAC/C,MAAA,OAAO,MAAMT,MAAM,CAACU,QAAQ,CAACC,WAAW,CAACJ,IAAI,EAAEC,OAAO,EAAEC,MAAM,CAAC;AAChE;AACA,GAAA,CAAC;AACH;SAEgBG,+BAA+BA,GAAA;AAC9C,EAAA,MAAMZ,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAA,OAAOC,sBAAW,CAQhB;AACDC,IAAAA,WAAW,EAAE,CAACC,mBAAS,CAACC,QAAQ,EAAE,UAAU,CAAC;IAC7CC,UAAU,EAAE,OAAO;MAAEC,IAAI;MAAEC,OAAO;AAAEC,MAAAA;AAAQ,KAAA,KAAI;AAC/C,MAAA,OAAO,MAAMT,MAAM,CAACU,QAAQ,CAACG,aAAa,CAACN,IAAI,EAAEC,OAAO,EAAEC,MAAM,CAAC;AAClE;AACA,GAAA,CAAC;AACH;SAEgBK,uBAAuBA,CACtCC,OAAe,CAAC,EAChBC,WAAmB,GAAG,EAAA;AAEtB,EAAA,MAAMhB,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAA,OAAOgB,2BAAgB,CAAC;AACvBC,IAAAA,QAAQ,EAAE,CAACd,mBAAS,CAACC,QAAQ,EAAE,MAAM,EAAE;MAAEU,IAAI;AAAEC,MAAAA;KAAU,CAAC;IAC1DG,OAAO,EAAE,OAAO;AAAEC,MAAAA,SAAS,GAAG;AAAG,KAAA,KAAI;AACpC,MAAA,MAAMC,OAAO,GAAgB;AAC5BN,QAAAA,IAAI,EAAEK,SAAS;AACfJ,QAAAA;OACA;MACD,OAAO,MAAMhB,MAAM,CAACU,QAAQ,CAACY,sBAAsB,CAACD,OAAO,CAAC;KAC5D;IACDE,gBAAgB,EAAGC,QAAQ,IAAI;MAC9B,IACCA,QAAQ,EAAEC,UAAU,EAAEC,WAAW,KACjCF,QAAQ,EAAEC,UAAU,EAAEE,SAAS,EAC9B;AACD,QAAA,OAAOC,SAAS;AACjB;AACA,MAAA,OAAOJ,QAAQ,EAAEC,UAAU,EAAEC,WAAW,GAAG,CAAC;KAC5C;AACDG,IAAAA,gBAAgB,EAAE;AAClB,GAAA,CAAC;AACH;;;;;;"}
@@ -0,0 +1,150 @@
1
+ 'use strict';
2
+
3
+ var ApiContext = require('../../context/ApiContext.cjs');
4
+ var reactQuery = require('@tanstack/react-query');
5
+ var SBApiKeys = require('../SBApiKeys.cjs');
6
+
7
+ /**
8
+ * Hook for listing friends with infinite pagination
9
+ * @param request - Request parameters for listing friends
10
+ * @param options - Optional request options
11
+ * @param config - Optional Axios request configuration
12
+ * @returns Infinite query result for implementing infinite scrolling with friends data
13
+ */
14
+ const useListFriendsInfiniteQuery = (request = {
15
+ page: 1,
16
+ pageSize: 25
17
+ }, options, config) => {
18
+ const client = ApiContext.useApiClient();
19
+ reactQuery.useQueryClient();
20
+ return reactQuery.useInfiniteQuery({
21
+ initialPageParam: request.page || 1,
22
+ queryKey: [SBApiKeys.SBApiKeys.Friends, request, options],
23
+ queryFn: async ({
24
+ pageParam = 1
25
+ }) => {
26
+ const paginatedRequest = {
27
+ ...request,
28
+ page: pageParam
29
+ };
30
+ return await client.friends.listAsync(paginatedRequest, options, config);
31
+ },
32
+ getNextPageParam: lastPage => {
33
+ if (lastPage.pagination && lastPage.pagination.currentPage < lastPage.pagination.pageCount) {
34
+ return lastPage.pagination.currentPage + 1;
35
+ }
36
+ return undefined;
37
+ }
38
+ });
39
+ };
40
+ /**
41
+ * Hook for listing recommended friends with infinite pagination
42
+ * @param request - Request parameters for listing recommended friends
43
+ * @param options - Optional request options
44
+ * @param config - Optional Axios request configuration
45
+ * @returns Infinite query result for implementing infinite scrolling with recommended friends data
46
+ */
47
+ const useListRecommendedFriendsInfiniteQuery = (request = {
48
+ page: 1,
49
+ pageSize: 25
50
+ }, options, config) => {
51
+ const client = ApiContext.useApiClient();
52
+ reactQuery.useQueryClient();
53
+ return reactQuery.useInfiniteQuery({
54
+ initialPageParam: request.page || 1,
55
+ queryKey: [SBApiKeys.SBApiKeys.Friends, "recommended", request, options],
56
+ queryFn: async ({
57
+ pageParam = 1
58
+ }) => {
59
+ const paginatedRequest = {
60
+ ...request,
61
+ page: pageParam
62
+ };
63
+ return await client.friends.listRecommanded(paginatedRequest, options, config);
64
+ },
65
+ getNextPageParam: lastPage => {
66
+ if (lastPage.pagination && lastPage.pagination.currentPage < lastPage.pagination.pageCount) {
67
+ return lastPage.pagination.currentPage + 1;
68
+ }
69
+ return undefined;
70
+ }
71
+ });
72
+ };
73
+ /**
74
+ * Hook for retrieving a friend by ID
75
+ * @param id - The ID of the friend to retrieve
76
+ * @param options - Optional request options
77
+ * @param config - Optional Axios request configuration
78
+ * @returns Query result containing the friend data
79
+ */
80
+ const useGetFriendByIdQuery = (id, options, config) => {
81
+ const client = ApiContext.useApiClient();
82
+ reactQuery.useQueryClient();
83
+ return reactQuery.useQuery({
84
+ queryKey: [SBApiKeys.SBApiKeys.Friends, id],
85
+ queryFn: async () => {
86
+ return await client.friends.getByIdAsync(id, options, config);
87
+ }
88
+ });
89
+ };
90
+ /**
91
+ * Hook for deleting a friend
92
+ * @returns Mutation function for deleting friends
93
+ */
94
+ const useDeleteFriendMutation = () => {
95
+ const client = ApiContext.useApiClient();
96
+ const queryClient = reactQuery.useQueryClient();
97
+ return reactQuery.useMutation({
98
+ mutationFn: async ({
99
+ id,
100
+ options,
101
+ config
102
+ }) => {
103
+ return await client.friends.deleteAsync(id, options, config);
104
+ },
105
+ onSuccess: (_, variables) => {
106
+ queryClient.invalidateQueries({
107
+ queryKey: [SBApiKeys.SBApiKeys.Friends, variables.id]
108
+ });
109
+ queryClient.invalidateQueries({
110
+ queryKey: [SBApiKeys.SBApiKeys.Friends, "list"]
111
+ });
112
+ queryClient.invalidateQueries({
113
+ queryKey: [SBApiKeys.SBApiKeys.Friends, "recommended"]
114
+ });
115
+ }
116
+ });
117
+ };
118
+ function useListFriendRequestsInfiniteQuery(request = {
119
+ page: 1,
120
+ pageSize: 25
121
+ }, options, config) {
122
+ const client = ApiContext.useApiClient();
123
+ reactQuery.useQueryClient();
124
+ return reactQuery.useInfiniteQuery({
125
+ initialPageParam: request.page || 1,
126
+ queryKey: [SBApiKeys.SBApiKeys.Friends, SBApiKeys.SBApiKeys.Friends, request, options],
127
+ queryFn: async ({
128
+ pageParam = 1
129
+ }) => {
130
+ const paginatedRequest = {
131
+ ...request,
132
+ page: pageParam
133
+ };
134
+ return await client.friends.listAsync(paginatedRequest, options, config);
135
+ },
136
+ getNextPageParam: lastPage => {
137
+ if (lastPage.pagination && lastPage.pagination.currentPage < lastPage.pagination.pageCount) {
138
+ return lastPage.pagination.currentPage + 1;
139
+ }
140
+ return undefined;
141
+ }
142
+ });
143
+ }
144
+
145
+ exports.useDeleteFriendMutation = useDeleteFriendMutation;
146
+ exports.useGetFriendByIdQuery = useGetFriendByIdQuery;
147
+ exports.useListFriendRequestsInfiniteQuery = useListFriendRequestsInfiniteQuery;
148
+ exports.useListFriendsInfiniteQuery = useListFriendsInfiniteQuery;
149
+ exports.useListRecommendedFriendsInfiniteQuery = useListRecommendedFriendsInfiniteQuery;
150
+ //# sourceMappingURL=FriendsAPI.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FriendsAPI.cjs","sources":["../../../../src/apis/friends/FriendsAPI.ts"],"sourcesContent":["import {\n\tSBList,\n\tSBFriend,\n\tFriendListRequest,\n\tSBApiException,\n\tSBRequestOptions,\n\tSBFriendRequest,\n\tListRequest,\n} from \"@smartbills/sdk\";\nimport { useApiClient } from \"@/context\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport {\n\tuseInfiniteQuery,\n\tuseMutation,\n\tuseQuery,\n\tQueryKey,\n\tInfiniteData,\n} from \"@tanstack/react-query\";\nimport { AxiosRequestConfig } from \"axios\";\nimport { SBApiKeys } from \"@/apis/SBApiKeys\";\n\n/**\n * Hook for listing friends with infinite pagination\n * @param request - Request parameters for listing friends\n * @param options - Optional request options\n * @param config - Optional Axios request configuration\n * @returns Infinite query result for implementing infinite scrolling with friends data\n */\nexport const useListFriendsInfiniteQuery = (\n\trequest: FriendListRequest = { page: 1, pageSize: 25 },\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig<FriendListRequest>,\n) => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useInfiniteQuery<\n\t\tSBList<SBFriend>,\n\t\tSBApiException,\n\t\tInfiniteData<SBList<SBFriend>>,\n\t\tQueryKey,\n\t\tnumber\n\t>({\n\t\tinitialPageParam: request.page || 1,\n\t\tqueryKey: [SBApiKeys.Friends, request, options],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\tconst paginatedRequest = { ...request, page: pageParam };\n\t\t\treturn await client.friends.listAsync(\n\t\t\t\tpaginatedRequest,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tgetNextPageParam: (lastPage) => {\n\t\t\tif (\n\t\t\t\tlastPage.pagination &&\n\t\t\t\tlastPage.pagination.currentPage < lastPage.pagination.pageCount\n\t\t\t) {\n\t\t\t\treturn lastPage.pagination.currentPage + 1;\n\t\t\t}\n\t\t\treturn undefined;\n\t\t},\n\t});\n};\n\n/**\n * Hook for listing recommended friends with infinite pagination\n * @param request - Request parameters for listing recommended friends\n * @param options - Optional request options\n * @param config - Optional Axios request configuration\n * @returns Infinite query result for implementing infinite scrolling with recommended friends data\n */\nexport const useListRecommendedFriendsInfiniteQuery = (\n\trequest: FriendListRequest = { page: 1, pageSize: 25 },\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig<FriendListRequest>,\n) => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useInfiniteQuery<\n\t\tSBList<SBFriend>,\n\t\tSBApiException,\n\t\tSBList<SBFriend>,\n\t\tQueryKey,\n\t\tnumber\n\t>({\n\t\tinitialPageParam: request.page || 1,\n\t\tqueryKey: [SBApiKeys.Friends, \"recommended\", request, options],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\tconst paginatedRequest = { ...request, page: pageParam };\n\t\t\treturn await client.friends.listRecommanded(\n\t\t\t\tpaginatedRequest,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tgetNextPageParam: (lastPage) => {\n\t\t\tif (\n\t\t\t\tlastPage.pagination &&\n\t\t\t\tlastPage.pagination.currentPage < lastPage.pagination.pageCount\n\t\t\t) {\n\t\t\t\treturn lastPage.pagination.currentPage + 1;\n\t\t\t}\n\t\t\treturn undefined;\n\t\t},\n\t});\n};\n\n/**\n * Hook for retrieving a friend by ID\n * @param id - The ID of the friend to retrieve\n * @param options - Optional request options\n * @param config - Optional Axios request configuration\n * @returns Query result containing the friend data\n */\nexport const useGetFriendByIdQuery = (\n\tid: number,\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useQuery<SBFriend, SBApiException>({\n\t\tqueryKey: [SBApiKeys.Friends, id],\n\t\tqueryFn: async () => {\n\t\t\treturn await client.friends.getByIdAsync(id, options, config);\n\t\t},\n\t});\n};\n\n/**\n * Hook for deleting a friend\n * @returns Mutation function for deleting friends\n */\nexport const useDeleteFriendMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useMutation<\n\t\tSBFriend,\n\t\tSBApiException,\n\t\t{\n\t\t\tid: number;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ id, options, config }) => {\n\t\t\treturn await client.friends.deleteAsync(id, options, config);\n\t\t},\n\t\tonSuccess: (_, variables) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Friends, variables.id],\n\t\t\t});\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Friends, \"list\"],\n\t\t\t});\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Friends, \"recommended\"],\n\t\t\t});\n\t\t},\n\t});\n};\n\nexport function useListFriendRequestsInfiniteQuery(\n\trequest: ListRequest = { page: 1, pageSize: 25 },\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig<ListRequest>,\n) {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useInfiniteQuery<\n\t\tSBList<SBFriendRequest>,\n\t\tSBApiException,\n\t\tInfiniteData<SBList<SBFriendRequest>>,\n\t\tQueryKey,\n\t\tnumber\n\t>({\n\t\tinitialPageParam: request.page || 1,\n\t\tqueryKey: [SBApiKeys.Friends, SBApiKeys.Friends, request, options],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\tconst paginatedRequest = { ...request, page: pageParam };\n\t\t\treturn await client.friends.listAsync(\n\t\t\t\tpaginatedRequest,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tgetNextPageParam: (lastPage) => {\n\t\t\tif (\n\t\t\t\tlastPage.pagination &&\n\t\t\t\tlastPage.pagination.currentPage < lastPage.pagination.pageCount\n\t\t\t) {\n\t\t\t\treturn lastPage.pagination.currentPage + 1;\n\t\t\t}\n\t\t\treturn undefined;\n\t\t},\n\t});\n}\n"],"names":["useListFriendsInfiniteQuery","request","page","pageSize","options","config","client","useApiClient","useQueryClient","useInfiniteQuery","initialPageParam","queryKey","SBApiKeys","Friends","queryFn","pageParam","paginatedRequest","friends","listAsync","getNextPageParam","lastPage","pagination","currentPage","pageCount","undefined","useListRecommendedFriendsInfiniteQuery","listRecommanded","useGetFriendByIdQuery","id","useQuery","getByIdAsync","useDeleteFriendMutation","queryClient","useMutation","mutationFn","deleteAsync","onSuccess","_","variables","invalidateQueries","useListFriendRequestsInfiniteQuery"],"mappings":";;;;;;AAqBA;;;;;;AAMG;AACUA,MAAAA,2BAA2B,GAAGA,CAC1CC,OAA6B,GAAA;AAAEC,EAAAA,IAAI,EAAE,CAAC;AAAEC,EAAAA,QAAQ,EAAE;AAAI,CAAA,EACtDC,OAA0B,EAC1BC,MAA8C,KAC3C;AACH,EAAA,MAAMC,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAoBC,yBAAc;AAClC,EAAA,OAAOC,2BAAgB,CAMrB;AACDC,IAAAA,gBAAgB,EAAET,OAAO,CAACC,IAAI,IAAI,CAAC;IACnCS,QAAQ,EAAE,CAACC,mBAAS,CAACC,OAAO,EAAEZ,OAAO,EAAEG,OAAO,CAAC;IAC/CU,OAAO,EAAE,OAAO;AAAEC,MAAAA,SAAS,GAAG;AAAG,KAAA,KAAI;AACpC,MAAA,MAAMC,gBAAgB,GAAG;AAAE,QAAA,GAAGf,OAAO;AAAEC,QAAAA,IAAI,EAAEa;OAAW;AACxD,MAAA,OAAO,MAAMT,MAAM,CAACW,OAAO,CAACC,SAAS,CACpCF,gBAAgB,EAChBZ,OAAO,EACPC,MAAM,CACN;KACD;IACDc,gBAAgB,EAAGC,QAAQ,IAAI;AAC9B,MAAA,IACCA,QAAQ,CAACC,UAAU,IACnBD,QAAQ,CAACC,UAAU,CAACC,WAAW,GAAGF,QAAQ,CAACC,UAAU,CAACE,SAAS,EAC9D;AACD,QAAA,OAAOH,QAAQ,CAACC,UAAU,CAACC,WAAW,GAAG,CAAC;AAC3C;AACA,MAAA,OAAOE,SAAS;AACjB;AACA,GAAA,CAAC;AACH;AAEA;;;;;;AAMG;AACUC,MAAAA,sCAAsC,GAAGA,CACrDxB,OAA6B,GAAA;AAAEC,EAAAA,IAAI,EAAE,CAAC;AAAEC,EAAAA,QAAQ,EAAE;AAAI,CAAA,EACtDC,OAA0B,EAC1BC,MAA8C,KAC3C;AACH,EAAA,MAAMC,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAoBC,yBAAc;AAClC,EAAA,OAAOC,2BAAgB,CAMrB;AACDC,IAAAA,gBAAgB,EAAET,OAAO,CAACC,IAAI,IAAI,CAAC;IACnCS,QAAQ,EAAE,CAACC,mBAAS,CAACC,OAAO,EAAE,aAAa,EAAEZ,OAAO,EAAEG,OAAO,CAAC;IAC9DU,OAAO,EAAE,OAAO;AAAEC,MAAAA,SAAS,GAAG;AAAG,KAAA,KAAI;AACpC,MAAA,MAAMC,gBAAgB,GAAG;AAAE,QAAA,GAAGf,OAAO;AAAEC,QAAAA,IAAI,EAAEa;OAAW;AACxD,MAAA,OAAO,MAAMT,MAAM,CAACW,OAAO,CAACS,eAAe,CAC1CV,gBAAgB,EAChBZ,OAAO,EACPC,MAAM,CACN;KACD;IACDc,gBAAgB,EAAGC,QAAQ,IAAI;AAC9B,MAAA,IACCA,QAAQ,CAACC,UAAU,IACnBD,QAAQ,CAACC,UAAU,CAACC,WAAW,GAAGF,QAAQ,CAACC,UAAU,CAACE,SAAS,EAC9D;AACD,QAAA,OAAOH,QAAQ,CAACC,UAAU,CAACC,WAAW,GAAG,CAAC;AAC3C;AACA,MAAA,OAAOE,SAAS;AACjB;AACA,GAAA,CAAC;AACH;AAEA;;;;;;AAMG;AACI,MAAMG,qBAAqB,GAAGA,CACpCC,EAAU,EACVxB,OAA0B,EAC1BC,MAA2B,KACxB;AACH,EAAA,MAAMC,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAoBC,yBAAc;AAClC,EAAA,OAAOqB,mBAAQ,CAA2B;AACzClB,IAAAA,QAAQ,EAAE,CAACC,mBAAS,CAACC,OAAO,EAAEe,EAAE,CAAC;IACjCd,OAAO,EAAE,YAAW;AACnB,MAAA,OAAO,MAAMR,MAAM,CAACW,OAAO,CAACa,YAAY,CAACF,EAAE,EAAExB,OAAO,EAAEC,MAAM,CAAC;AAC9D;AACA,GAAA,CAAC;AACH;AAEA;;;AAGG;AACU0B,MAAAA,uBAAuB,GAAGA,MAAK;AAC3C,EAAA,MAAMzB,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAA,MAAMyB,WAAW,GAAGxB,yBAAc,EAAE;AACpC,EAAA,OAAOyB,sBAAW,CAQhB;IACDC,UAAU,EAAE,OAAO;MAAEN,EAAE;MAAExB,OAAO;AAAEC,MAAAA;AAAQ,KAAA,KAAI;AAC7C,MAAA,OAAO,MAAMC,MAAM,CAACW,OAAO,CAACkB,WAAW,CAACP,EAAE,EAAExB,OAAO,EAAEC,MAAM,CAAC;KAC5D;AACD+B,IAAAA,SAAS,EAAEA,CAACC,CAAC,EAAEC,SAAS,KAAI;MAC3BN,WAAW,CAACO,iBAAiB,CAAC;QAC7B5B,QAAQ,EAAE,CAACC,mBAAS,CAACC,OAAO,EAAEyB,SAAS,CAACV,EAAE;AAC1C,OAAA,CAAC;MACFI,WAAW,CAACO,iBAAiB,CAAC;AAC7B5B,QAAAA,QAAQ,EAAE,CAACC,mBAAS,CAACC,OAAO,EAAE,MAAM;AACpC,OAAA,CAAC;MACFmB,WAAW,CAACO,iBAAiB,CAAC;AAC7B5B,QAAAA,QAAQ,EAAE,CAACC,mBAAS,CAACC,OAAO,EAAE,aAAa;AAC3C,OAAA,CAAC;AACH;AACA,GAAA,CAAC;AACH;SAEgB2B,kCAAkCA,CACjDvC,OAAuB,GAAA;AAAEC,EAAAA,IAAI,EAAE,CAAC;AAAEC,EAAAA,QAAQ,EAAE;AAAE,CAAE,EAChDC,OAA0B,EAC1BC,MAAwC,EAAA;AAExC,EAAA,MAAMC,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAoBC,yBAAc;AAElC,EAAA,OAAOC,2BAAgB,CAMrB;AACDC,IAAAA,gBAAgB,EAAET,OAAO,CAACC,IAAI,IAAI,CAAC;AACnCS,IAAAA,QAAQ,EAAE,CAACC,mBAAS,CAACC,OAAO,EAAED,mBAAS,CAACC,OAAO,EAAEZ,OAAO,EAAEG,OAAO,CAAC;IAClEU,OAAO,EAAE,OAAO;AAAEC,MAAAA,SAAS,GAAG;AAAG,KAAA,KAAI;AACpC,MAAA,MAAMC,gBAAgB,GAAG;AAAE,QAAA,GAAGf,OAAO;AAAEC,QAAAA,IAAI,EAAEa;OAAW;AACxD,MAAA,OAAO,MAAMT,MAAM,CAACW,OAAO,CAACC,SAAS,CACpCF,gBAAgB,EAChBZ,OAAO,EACPC,MAAM,CACN;KACD;IACDc,gBAAgB,EAAGC,QAAQ,IAAI;AAC9B,MAAA,IACCA,QAAQ,CAACC,UAAU,IACnBD,QAAQ,CAACC,UAAU,CAACC,WAAW,GAAGF,QAAQ,CAACC,UAAU,CAACE,SAAS,EAC9D;AACD,QAAA,OAAOH,QAAQ,CAACC,UAAU,CAACC,WAAW,GAAG,CAAC;AAC3C;AACA,MAAA,OAAOE,SAAS;AACjB;AACA,GAAA,CAAC;AACH;;;;;;;;"}
@@ -0,0 +1,55 @@
1
+ 'use strict';
2
+
3
+ var ApiContext = require('../../context/ApiContext.cjs');
4
+ var reactQuery = require('@tanstack/react-query');
5
+ var SBApiKeys = require('../SBApiKeys.cjs');
6
+
7
+ const useListIntegrationsInfiniteQuery = (businessId, page = 1, pageSize = 10) => {
8
+ const client = ApiContext.useApiClient();
9
+ return reactQuery.useInfiniteQuery({
10
+ queryKey: [SBApiKeys.SBApiKeys.Integrations, businessId, page, pageSize],
11
+ queryFn: async ({
12
+ pageParam = 1
13
+ }) => {
14
+ const request = {
15
+ businessId,
16
+ page: pageParam,
17
+ pageSize
18
+ };
19
+ return await client.integrations.getAsync(request);
20
+ },
21
+ getNextPageParam: (lastPage, allPages) => {
22
+ // Assuming the API returns pagination info
23
+ if (lastPage && Array.isArray(lastPage) && lastPage.length === pageSize) {
24
+ return allPages.length + 1;
25
+ }
26
+ return undefined;
27
+ },
28
+ initialPageParam: 1
29
+ });
30
+ };
31
+ const useInstallIntegrationMutation = () => {
32
+ const client = ApiContext.useApiClient();
33
+ const queryClient = reactQuery.useQueryClient();
34
+ return reactQuery.useMutation({
35
+ mutationFn: async ({
36
+ businessId,
37
+ slug,
38
+ options,
39
+ config
40
+ }) => {
41
+ return await client.integrations.installAsync(businessId, slug, options, config);
42
+ },
43
+ onSuccess: (_, {
44
+ businessId
45
+ }) => {
46
+ queryClient.invalidateQueries({
47
+ queryKey: [SBApiKeys.SBApiKeys.Integrations, businessId]
48
+ });
49
+ }
50
+ });
51
+ };
52
+
53
+ exports.useInstallIntegrationMutation = useInstallIntegrationMutation;
54
+ exports.useListIntegrationsInfiniteQuery = useListIntegrationsInfiniteQuery;
55
+ //# sourceMappingURL=IntegrationsAPI.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntegrationsAPI.cjs","sources":["../../../../src/apis/integrations/IntegrationsAPI.tsx"],"sourcesContent":["import {\n\tIntegrationListRequest,\n\tSBIntegration,\n\tSBApiException,\n\tSBRequestOptions,\n} from \"@smartbills/sdk\";\nimport { useApiClient } from \"@/context\";\nimport {\n\tuseMutation,\n\tuseInfiniteQuery,\n\tuseQueryClient,\n} from \"@tanstack/react-query\";\nimport { AxiosRequestConfig } from \"axios\";\nimport { SBApiKeys } from \"@/apis/SBApiKeys\";\n\nexport const useListIntegrationsInfiniteQuery = (\n\tbusinessId: string | number,\n\tpage: number = 1,\n\tpageSize: number = 10,\n) => {\n\tconst client = useApiClient();\n\treturn useInfiniteQuery({\n\t\tqueryKey: [SBApiKeys.Integrations, businessId, page, pageSize],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\tconst request: IntegrationListRequest = {\n\t\t\t\tbusinessId,\n\t\t\t\tpage: pageParam,\n\t\t\t\tpageSize,\n\t\t\t};\n\t\t\treturn await client.integrations.getAsync(request);\n\t\t},\n\t\tgetNextPageParam: (lastPage, allPages) => {\n\t\t\t// Assuming the API returns pagination info\n\t\t\tif (\n\t\t\t\tlastPage &&\n\t\t\t\tArray.isArray(lastPage) &&\n\t\t\t\tlastPage.length === pageSize\n\t\t\t) {\n\t\t\t\treturn allPages.length + 1;\n\t\t\t}\n\t\t\treturn undefined;\n\t\t},\n\t\tinitialPageParam: 1,\n\t});\n};\n\nexport const useInstallIntegrationMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useMutation<\n\t\tany,\n\t\tSBApiException,\n\t\t{\n\t\t\tbusinessId: string | number;\n\t\t\tslug: string;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ businessId, slug, options, config }) => {\n\t\t\treturn await client.integrations.installAsync(\n\t\t\t\tbusinessId,\n\t\t\t\tslug,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tonSuccess: (_, { businessId }) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Integrations, businessId],\n\t\t\t});\n\t\t},\n\t});\n};\n"],"names":["useListIntegrationsInfiniteQuery","businessId","page","pageSize","client","useApiClient","useInfiniteQuery","queryKey","SBApiKeys","Integrations","queryFn","pageParam","request","integrations","getAsync","getNextPageParam","lastPage","allPages","Array","isArray","length","undefined","initialPageParam","useInstallIntegrationMutation","queryClient","useQueryClient","useMutation","mutationFn","slug","options","config","installAsync","onSuccess","_","invalidateQueries"],"mappings":";;;;;;AAeaA,MAAAA,gCAAgC,GAAGA,CAC/CC,UAA2B,EAC3BC,IAAA,GAAe,CAAC,EAChBC,QAAmB,GAAA,EAAE,KAClB;AACH,EAAA,MAAMC,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAA,OAAOC,2BAAgB,CAAC;IACvBC,QAAQ,EAAE,CAACC,mBAAS,CAACC,YAAY,EAAER,UAAU,EAAEC,IAAI,EAAEC,QAAQ,CAAC;IAC9DO,OAAO,EAAE,OAAO;AAAEC,MAAAA,SAAS,GAAG;AAAG,KAAA,KAAI;AACpC,MAAA,MAAMC,OAAO,GAA2B;QACvCX,UAAU;AACVC,QAAAA,IAAI,EAAES,SAAS;AACfR,QAAAA;OACA;MACD,OAAO,MAAMC,MAAM,CAACS,YAAY,CAACC,QAAQ,CAACF,OAAO,CAAC;KAClD;AACDG,IAAAA,gBAAgB,EAAEA,CAACC,QAAQ,EAAEC,QAAQ,KAAI;AACxC;AACA,MAAA,IACCD,QAAQ,IACRE,KAAK,CAACC,OAAO,CAACH,QAAQ,CAAC,IACvBA,QAAQ,CAACI,MAAM,KAAKjB,QAAQ,EAC3B;AACD,QAAA,OAAOc,QAAQ,CAACG,MAAM,GAAG,CAAC;AAC3B;AACA,MAAA,OAAOC,SAAS;KAChB;AACDC,IAAAA,gBAAgB,EAAE;AAClB,GAAA,CAAC;AACH;AAEaC,MAAAA,6BAA6B,GAAGA,MAAK;AACjD,EAAA,MAAMnB,MAAM,GAAGC,uBAAY,EAAE;AAC7B,EAAA,MAAMmB,WAAW,GAAGC,yBAAc,EAAE;AACpC,EAAA,OAAOC,sBAAW,CAShB;IACDC,UAAU,EAAE,OAAO;MAAE1B,UAAU;MAAE2B,IAAI;MAAEC,OAAO;AAAEC,MAAAA;AAAM,KAAE,KAAI;AAC3D,MAAA,OAAO,MAAM1B,MAAM,CAACS,YAAY,CAACkB,YAAY,CAC5C9B,UAAU,EACV2B,IAAI,EACJC,OAAO,EACPC,MAAM,CACN;KACD;IACDE,SAAS,EAAEA,CAACC,CAAC,EAAE;AAAEhC,MAAAA;AAAU,KAAE,KAAI;MAChCuB,WAAW,CAACU,iBAAiB,CAAC;AAC7B3B,QAAAA,QAAQ,EAAE,CAACC,mBAAS,CAACC,YAAY,EAAER,UAAU;AAC7C,OAAA,CAAC;AACH;AACA,GAAA,CAAC;AACH;;;;;"}
@@ -0,0 +1,168 @@
1
+ 'use strict';
2
+
3
+ var ApiContext = require('../../context/ApiContext.cjs');
4
+ var reactQuery = require('@tanstack/react-query');
5
+ var SBApiKeys = require('../SBApiKeys.cjs');
6
+
7
+ /**
8
+ * Hook to fetch a list of invoices using infinite query
9
+ * @param request - The pagination request parameters
10
+ * @param options - Optional request options
11
+ * @param config - Optional Axios request configuration
12
+ * @returns An infinite query result containing paginated invoices data
13
+ */
14
+ function useListInvoicesInfiniteQuery(request = {
15
+ page: 0,
16
+ pageSize: 25
17
+ }, options, config) {
18
+ const client = ApiContext.useApiClient();
19
+ reactQuery.useQueryClient();
20
+ return reactQuery.useInfiniteQuery({
21
+ initialPageParam: request.page || 0,
22
+ queryKey: [SBApiKeys.SBApiKeys.Invoices, request, options],
23
+ queryFn: async ({
24
+ pageParam = 0
25
+ }) => {
26
+ return await client.invoices.listAsync({
27
+ ...request,
28
+ page: pageParam
29
+ }, options, config);
30
+ },
31
+ getNextPageParam: lastPage => {
32
+ if (lastPage.pagination.currentPage < lastPage.pagination.pageCount - 1) {
33
+ return lastPage.pagination.currentPage + 1;
34
+ }
35
+ return undefined;
36
+ }
37
+ });
38
+ }
39
+ /**
40
+ * Hook to fetch a list of invoices
41
+ * @param request - The pagination request parameters
42
+ * @param options - Optional request options
43
+ * @param config - Optional Axios request configuration
44
+ * @returns A query result containing paginated invoices data
45
+ */
46
+ function useListInvoicesQuery(request = {
47
+ page: 0,
48
+ pageSize: 25
49
+ }, options, config) {
50
+ const client = ApiContext.useApiClient();
51
+ reactQuery.useQueryClient();
52
+ return reactQuery.useQuery({
53
+ queryKey: [SBApiKeys.SBApiKeys.Invoices, request],
54
+ queryFn: async () => {
55
+ return await client.invoices.listAsync(request, options, config);
56
+ }
57
+ });
58
+ }
59
+ /**
60
+ * Hook to fetch a specific invoice by ID
61
+ * @param invoiceId - The ID of the invoice to retrieve
62
+ * @param options - Optional request options
63
+ * @param config - Optional Axios request configuration
64
+ * @returns A query result containing the invoice data
65
+ */
66
+ function useGetInvoiceByIdQuery(invoiceId, options, config) {
67
+ const client = ApiContext.useApiClient();
68
+ reactQuery.useQueryClient();
69
+ return reactQuery.useQuery({
70
+ queryKey: [SBApiKeys.SBApiKeys.Invoices, invoiceId, options],
71
+ queryFn: async () => {
72
+ return await client.invoices.getByIdAsync(invoiceId, options, config);
73
+ }
74
+ });
75
+ }
76
+ /**
77
+ * Hook to create a new invoice
78
+ * @param mutationOptions - Optional mutation configuration
79
+ * @returns A mutation result for creating an invoice
80
+ */
81
+ function useCreateInvoiceMutation(mutationOptions) {
82
+ const client = ApiContext.useApiClient();
83
+ const queryClient = reactQuery.useQueryClient();
84
+ return reactQuery.useMutation({
85
+ mutationFn: async ({
86
+ data,
87
+ options,
88
+ config
89
+ }) => {
90
+ return await client.invoices.createAsync(data, options, config);
91
+ },
92
+ onSuccess: (data, variables, context) => {
93
+ queryClient.invalidateQueries({
94
+ queryKey: [SBApiKeys.SBApiKeys.Invoices]
95
+ });
96
+ if (mutationOptions?.onSuccess) {
97
+ mutationOptions.onSuccess(data, variables, context);
98
+ }
99
+ },
100
+ ...mutationOptions
101
+ });
102
+ }
103
+ /**
104
+ * Hook to update an existing invoice
105
+ * @param mutationOptions - Optional mutation configuration
106
+ * @returns A mutation result for updating an invoice
107
+ */
108
+ function useUpdateInvoiceMutation(mutationOptions) {
109
+ const client = ApiContext.useApiClient();
110
+ const queryClient = reactQuery.useQueryClient();
111
+ return reactQuery.useMutation({
112
+ mutationFn: async ({
113
+ invoiceId,
114
+ data,
115
+ options,
116
+ config
117
+ }) => {
118
+ return await client.invoices.updateAsync(invoiceId, data, options, config);
119
+ },
120
+ onSuccess: (data, variables, context) => {
121
+ queryClient.invalidateQueries({
122
+ queryKey: [SBApiKeys.SBApiKeys.Invoices]
123
+ });
124
+ queryClient.invalidateQueries({
125
+ queryKey: [SBApiKeys.SBApiKeys.Invoices, variables.invoiceId]
126
+ });
127
+ if (mutationOptions?.onSuccess) {
128
+ mutationOptions.onSuccess(data, variables, context);
129
+ }
130
+ },
131
+ ...mutationOptions
132
+ });
133
+ }
134
+ /**
135
+ * Hook to delete an invoice
136
+ * @param mutationOptions - Optional mutation configuration
137
+ * @returns A mutation result for deleting an invoice
138
+ */
139
+ function useDeleteInvoiceMutation(mutationOptions) {
140
+ const client = ApiContext.useApiClient();
141
+ const queryClient = reactQuery.useQueryClient();
142
+ return reactQuery.useMutation({
143
+ mutationFn: async ({
144
+ invoiceId,
145
+ options,
146
+ config
147
+ }) => {
148
+ return await client.invoices.deleteAsync(invoiceId, options, config);
149
+ },
150
+ onSuccess: (data, variables, context) => {
151
+ queryClient.invalidateQueries({
152
+ queryKey: [SBApiKeys.SBApiKeys.Invoices]
153
+ });
154
+ if (mutationOptions?.onSuccess) {
155
+ mutationOptions.onSuccess(data, variables, context);
156
+ }
157
+ },
158
+ ...mutationOptions
159
+ });
160
+ }
161
+
162
+ exports.useCreateInvoiceMutation = useCreateInvoiceMutation;
163
+ exports.useDeleteInvoiceMutation = useDeleteInvoiceMutation;
164
+ exports.useGetInvoiceByIdQuery = useGetInvoiceByIdQuery;
165
+ exports.useListInvoicesInfiniteQuery = useListInvoicesInfiniteQuery;
166
+ exports.useListInvoicesQuery = useListInvoicesQuery;
167
+ exports.useUpdateInvoiceMutation = useUpdateInvoiceMutation;
168
+ //# sourceMappingURL=InvoicesAPI.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InvoicesAPI.cjs","sources":["../../../../src/apis/invoices/InvoicesAPI.tsx"],"sourcesContent":["import {\n\tSBRequestOptions,\n\tSBApiException,\n\tSBInvoice,\n\tSBList,\n\tInvoiceUpdateRequest,\n\tInvoiceCreateRequest,\n} from \"@smartbills/sdk\";\nimport { useApiClient } from \"@/context\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport {\n\tQueryKey,\n\tuseInfiniteQuery,\n\tuseMutation,\n\tuseQuery,\n\tInfiniteData,\n\tUseMutationOptions,\n} from \"@tanstack/react-query\";\nimport { SBApiKeys } from \"@/apis/SBApiKeys\";\nimport { AxiosRequestConfig } from \"axios\";\n\n/**\n * Type for invoice list request\n */\nexport interface InvoiceListRequest {\n\t/** Page number (0-indexed) */\n\tpage?: number;\n\t/** Number of items per page */\n\tpageSize?: number;\n\t/** Search term for filtering invoices */\n\tsearch?: string;\n}\n\n/**\n * Hook to fetch a list of invoices using infinite query\n * @param request - The pagination request parameters\n * @param options - Optional request options\n * @param config - Optional Axios request configuration\n * @returns An infinite query result containing paginated invoices data\n */\nexport function useListInvoicesInfiniteQuery(\n\trequest: InvoiceListRequest = { page: 0, pageSize: 25 },\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useInfiniteQuery<\n\t\tSBList<SBInvoice>,\n\t\tSBApiException,\n\t\tInfiniteData<SBList<SBInvoice>>,\n\t\tQueryKey,\n\t\tnumber\n\t>({\n\t\tinitialPageParam: request.page || 0,\n\t\tqueryKey: [SBApiKeys.Invoices, request, options],\n\t\tqueryFn: async ({ pageParam = 0 }) => {\n\t\t\treturn await client.invoices.listAsync(\n\t\t\t\t{ ...request, page: pageParam },\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tgetNextPageParam: (lastPage) => {\n\t\t\tif (\n\t\t\t\tlastPage.pagination.currentPage <\n\t\t\t\tlastPage.pagination.pageCount - 1\n\t\t\t) {\n\t\t\t\treturn lastPage.pagination.currentPage + 1;\n\t\t\t}\n\t\t\treturn undefined;\n\t\t},\n\t});\n}\n\n/**\n * Hook to fetch a list of invoices\n * @param request - The pagination request parameters\n * @param options - Optional request options\n * @param config - Optional Axios request configuration\n * @returns A query result containing paginated invoices data\n */\nexport function useListInvoicesQuery(\n\trequest: InvoiceListRequest = { page: 0, pageSize: 25 },\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useQuery<SBList<SBInvoice>, SBApiException>({\n\t\tqueryKey: [SBApiKeys.Invoices, request],\n\t\tqueryFn: async () => {\n\t\t\treturn await client.invoices.listAsync(request, options, config);\n\t\t},\n\t});\n}\n\n/**\n * Hook to fetch a specific invoice by ID\n * @param invoiceId - The ID of the invoice to retrieve\n * @param options - Optional request options\n * @param config - Optional Axios request configuration\n * @returns A query result containing the invoice data\n */\nexport function useGetInvoiceByIdQuery(\n\tinvoiceId: number,\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useQuery<SBInvoice, SBApiException>({\n\t\tqueryKey: [SBApiKeys.Invoices, invoiceId, options],\n\t\tqueryFn: async () => {\n\t\t\treturn await client.invoices.getByIdAsync(\n\t\t\t\tinvoiceId,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t});\n}\n\n/**\n * Hook to create a new invoice\n * @param mutationOptions - Optional mutation configuration\n * @returns A mutation result for creating an invoice\n */\nexport function useCreateInvoiceMutation(\n\tmutationOptions?: Omit<\n\t\tUseMutationOptions<\n\t\t\tSBInvoice,\n\t\t\tSBApiException,\n\t\t\t{\n\t\t\t\tdata: InvoiceCreateRequest;\n\t\t\t\toptions?: SBRequestOptions;\n\t\t\t\tconfig?: AxiosRequestConfig;\n\t\t\t}\n\t\t>,\n\t\t\"mutationFn\"\n\t>,\n) {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useMutation<\n\t\tSBInvoice,\n\t\tSBApiException,\n\t\t{\n\t\t\tdata: InvoiceCreateRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ data, options, config }) => {\n\t\t\treturn await client.invoices.createAsync(data, options, config);\n\t\t},\n\t\tonSuccess: (data, variables, context) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Invoices],\n\t\t\t});\n\t\t\tif (mutationOptions?.onSuccess) {\n\t\t\t\tmutationOptions.onSuccess(data, variables, context);\n\t\t\t}\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n\n/**\n * Hook to update an existing invoice\n * @param mutationOptions - Optional mutation configuration\n * @returns A mutation result for updating an invoice\n */\nexport function useUpdateInvoiceMutation(\n\tmutationOptions?: Omit<\n\t\tUseMutationOptions<\n\t\t\tSBInvoice,\n\t\t\tSBApiException,\n\t\t\t{\n\t\t\t\tinvoiceId: number;\n\t\t\t\tdata: InvoiceUpdateRequest;\n\t\t\t\toptions?: SBRequestOptions;\n\t\t\t\tconfig?: AxiosRequestConfig;\n\t\t\t}\n\t\t>,\n\t\t\"mutationFn\"\n\t>,\n) {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useMutation<\n\t\tSBInvoice,\n\t\tSBApiException,\n\t\t{\n\t\t\tinvoiceId: number;\n\t\t\tdata: InvoiceUpdateRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ invoiceId, data, options, config }) => {\n\t\t\treturn await client.invoices.updateAsync(\n\t\t\t\tinvoiceId,\n\t\t\t\tdata,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tonSuccess: (data, variables, context) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Invoices],\n\t\t\t});\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Invoices, variables.invoiceId],\n\t\t\t});\n\t\t\tif (mutationOptions?.onSuccess) {\n\t\t\t\tmutationOptions.onSuccess(data, variables, context);\n\t\t\t}\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n\n/**\n * Hook to delete an invoice\n * @param mutationOptions - Optional mutation configuration\n * @returns A mutation result for deleting an invoice\n */\nexport function useDeleteInvoiceMutation(\n\tmutationOptions?: Omit<\n\t\tUseMutationOptions<\n\t\t\tSBInvoice,\n\t\t\tSBApiException,\n\t\t\t{\n\t\t\t\tinvoiceId: number;\n\t\t\t\toptions?: SBRequestOptions;\n\t\t\t\tconfig?: AxiosRequestConfig;\n\t\t\t}\n\t\t>,\n\t\t\"mutationFn\"\n\t>,\n) {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useMutation<\n\t\tSBInvoice,\n\t\tSBApiException,\n\t\t{\n\t\t\tinvoiceId: number;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ invoiceId, options, config }) => {\n\t\t\treturn await client.invoices.deleteAsync(\n\t\t\t\tinvoiceId,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tonSuccess: (data, variables, context) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Invoices],\n\t\t\t});\n\t\t\tif (mutationOptions?.onSuccess) {\n\t\t\t\tmutationOptions.onSuccess(data, variables, context);\n\t\t\t}\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n"],"names":["useListInvoicesInfiniteQuery","request","page","pageSize","options","config","client","useApiClient","useQueryClient","useInfiniteQuery","initialPageParam","queryKey","SBApiKeys","Invoices","queryFn","pageParam","invoices","listAsync","getNextPageParam","lastPage","pagination","currentPage","pageCount","undefined","useListInvoicesQuery","useQuery","useGetInvoiceByIdQuery","invoiceId","getByIdAsync","useCreateInvoiceMutation","mutationOptions","queryClient","useMutation","mutationFn","data","createAsync","onSuccess","variables","context","invalidateQueries","useUpdateInvoiceMutation","updateAsync","useDeleteInvoiceMutation","deleteAsync"],"mappings":"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"}