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

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 (163) hide show
  1. package/README.md +148 -73
  2. package/dist/cjs/index.cjs +1 -223
  3. package/dist/cjs/index.cjs.map +1 -1
  4. package/dist/esm/index.mjs +1 -38
  5. package/dist/esm/index.mjs.map +1 -1
  6. package/dist/types/index.d.ts +594 -0
  7. package/package.json +58 -99
  8. package/dist/@types/index.d.ts +0 -1447
  9. package/dist/@types/index.d.ts.map +0 -1
  10. package/dist/cjs/apis/SBApiKeys.cjs +0 -56
  11. package/dist/cjs/apis/SBApiKeys.cjs.map +0 -1
  12. package/dist/cjs/apis/api-logs/LogsAPI.cjs +0 -42
  13. package/dist/cjs/apis/api-logs/LogsAPI.cjs.map +0 -1
  14. package/dist/cjs/apis/attachments/AttachmentsAPI.cjs +0 -147
  15. package/dist/cjs/apis/attachments/AttachmentsAPI.cjs.map +0 -1
  16. package/dist/cjs/apis/banks/accounts/BankAccountAPI.cjs +0 -88
  17. package/dist/cjs/apis/banks/accounts/BankAccountAPI.cjs.map +0 -1
  18. package/dist/cjs/apis/banks/bank-institutions/BankInstitutionsAPI.cjs +0 -58
  19. package/dist/cjs/apis/banks/bank-institutions/BankInstitutionsAPI.cjs.map +0 -1
  20. package/dist/cjs/apis/banks/bank-transactions/BankTransactionAPI.cjs +0 -57
  21. package/dist/cjs/apis/banks/bank-transactions/BankTransactionAPI.cjs.map +0 -1
  22. package/dist/cjs/apis/business/BusinessAPI.cjs +0 -172
  23. package/dist/cjs/apis/business/BusinessAPI.cjs.map +0 -1
  24. package/dist/cjs/apis/business/customers/CustomerAPI.cjs +0 -161
  25. package/dist/cjs/apis/business/customers/CustomerAPI.cjs.map +0 -1
  26. package/dist/cjs/apis/business/customers/CustomerBalanceTransactionsAPI.cjs +0 -71
  27. package/dist/cjs/apis/business/customers/CustomerBalanceTransactionsAPI.cjs.map +0 -1
  28. package/dist/cjs/apis/business/customers/CustomerPaymentMethodsAPI.cjs +0 -176
  29. package/dist/cjs/apis/business/customers/CustomerPaymentMethodsAPI.cjs.map +0 -1
  30. package/dist/cjs/apis/business/departments/DepartmentApi.cjs +0 -168
  31. package/dist/cjs/apis/business/departments/DepartmentApi.cjs.map +0 -1
  32. package/dist/cjs/apis/business/departments/employees/DepartmentEmployeesAPI.cjs +0 -137
  33. package/dist/cjs/apis/business/departments/employees/DepartmentEmployeesAPI.cjs.map +0 -1
  34. package/dist/cjs/apis/business/fees/FeesAPI.cjs +0 -167
  35. package/dist/cjs/apis/business/fees/FeesAPI.cjs.map +0 -1
  36. package/dist/cjs/apis/business/locations/LocationsAPI.cjs +0 -133
  37. package/dist/cjs/apis/business/locations/LocationsAPI.cjs.map +0 -1
  38. package/dist/cjs/apis/business/products/ProductsAPI.cjs +0 -184
  39. package/dist/cjs/apis/business/products/ProductsAPI.cjs.map +0 -1
  40. package/dist/cjs/apis/business/products/images/ProductImagesAPI.cjs +0 -195
  41. package/dist/cjs/apis/business/products/images/ProductImagesAPI.cjs.map +0 -1
  42. package/dist/cjs/apis/business/products/modifiers/ModifiersAPI.cjs +0 -169
  43. package/dist/cjs/apis/business/products/modifiers/ModifiersAPI.cjs.map +0 -1
  44. package/dist/cjs/apis/business/products/options/ProductOptionsAPI.cjs +0 -183
  45. package/dist/cjs/apis/business/products/options/ProductOptionsAPI.cjs.map +0 -1
  46. package/dist/cjs/apis/business/products/variants/ProductVariantsAPI.cjs +0 -185
  47. package/dist/cjs/apis/business/products/variants/ProductVariantsAPI.cjs.map +0 -1
  48. package/dist/cjs/apis/business/promo-codes/PromoCodesAPI.cjs +0 -139
  49. package/dist/cjs/apis/business/promo-codes/PromoCodesAPI.cjs.map +0 -1
  50. package/dist/cjs/apis/business/reviews/ReviewsAPI.cjs +0 -143
  51. package/dist/cjs/apis/business/reviews/ReviewsAPI.cjs.map +0 -1
  52. package/dist/cjs/apis/business/tables/TablesAPI.cjs +0 -75
  53. package/dist/cjs/apis/business/tables/TablesAPI.cjs.map +0 -1
  54. package/dist/cjs/apis/business/taxes/TaxesAPI.cjs +0 -140
  55. package/dist/cjs/apis/business/taxes/TaxesAPI.cjs.map +0 -1
  56. package/dist/cjs/apis/business/team/TeamMemberInvitationsAPI.cjs +0 -161
  57. package/dist/cjs/apis/business/team/TeamMemberInvitationsAPI.cjs.map +0 -1
  58. package/dist/cjs/apis/business/team/TeamMembersAPI.cjs +0 -93
  59. package/dist/cjs/apis/business/team/TeamMembersAPI.cjs.map +0 -1
  60. package/dist/cjs/apis/business/vendors/VendorsAPI.cjs +0 -237
  61. package/dist/cjs/apis/business/vendors/VendorsAPI.cjs.map +0 -1
  62. package/dist/cjs/apis/documents/DocumentsAPI.cjs +0 -87
  63. package/dist/cjs/apis/documents/DocumentsAPI.cjs.map +0 -1
  64. package/dist/cjs/apis/expenses/ExpensesAPI.cjs +0 -62
  65. package/dist/cjs/apis/expenses/ExpensesAPI.cjs.map +0 -1
  66. package/dist/cjs/apis/friends/FriendsAPI.cjs +0 -150
  67. package/dist/cjs/apis/friends/FriendsAPI.cjs.map +0 -1
  68. package/dist/cjs/apis/integrations/IntegrationsAPI.cjs +0 -55
  69. package/dist/cjs/apis/integrations/IntegrationsAPI.cjs.map +0 -1
  70. package/dist/cjs/apis/invoices/InvoicesAPI.cjs +0 -168
  71. package/dist/cjs/apis/invoices/InvoicesAPI.cjs.map +0 -1
  72. package/dist/cjs/apis/loyalty/LoyaltyProgramAPI.cjs +0 -484
  73. package/dist/cjs/apis/loyalty/LoyaltyProgramAPI.cjs.map +0 -1
  74. package/dist/cjs/apis/notifications/NotificationAPI.cjs +0 -103
  75. package/dist/cjs/apis/notifications/NotificationAPI.cjs.map +0 -1
  76. package/dist/cjs/apis/payment-methods/PaymentMethodsAPI.cjs +0 -125
  77. package/dist/cjs/apis/payment-methods/PaymentMethodsAPI.cjs.map +0 -1
  78. package/dist/cjs/apis/receipts/ReceiptAPI.cjs +0 -135
  79. package/dist/cjs/apis/receipts/ReceiptAPI.cjs.map +0 -1
  80. package/dist/cjs/apis/user/UserAPI.cjs +0 -130
  81. package/dist/cjs/apis/user/UserAPI.cjs.map +0 -1
  82. package/dist/cjs/apis/vendors/VendorsAPI.cjs +0 -215
  83. package/dist/cjs/apis/vendors/VendorsAPI.cjs.map +0 -1
  84. package/dist/cjs/context/ApiContext.cjs +0 -94
  85. package/dist/cjs/context/ApiContext.cjs.map +0 -1
  86. package/dist/esm/apis/SBApiKeys.mjs +0 -56
  87. package/dist/esm/apis/SBApiKeys.mjs.map +0 -1
  88. package/dist/esm/apis/api-logs/LogsAPI.mjs +0 -39
  89. package/dist/esm/apis/api-logs/LogsAPI.mjs.map +0 -1
  90. package/dist/esm/apis/attachments/AttachmentsAPI.mjs +0 -142
  91. package/dist/esm/apis/attachments/AttachmentsAPI.mjs.map +0 -1
  92. package/dist/esm/apis/banks/accounts/BankAccountAPI.mjs +0 -84
  93. package/dist/esm/apis/banks/accounts/BankAccountAPI.mjs.map +0 -1
  94. package/dist/esm/apis/banks/bank-institutions/BankInstitutionsAPI.mjs +0 -55
  95. package/dist/esm/apis/banks/bank-institutions/BankInstitutionsAPI.mjs.map +0 -1
  96. package/dist/esm/apis/banks/bank-transactions/BankTransactionAPI.mjs +0 -54
  97. package/dist/esm/apis/banks/bank-transactions/BankTransactionAPI.mjs.map +0 -1
  98. package/dist/esm/apis/business/BusinessAPI.mjs +0 -165
  99. package/dist/esm/apis/business/BusinessAPI.mjs.map +0 -1
  100. package/dist/esm/apis/business/customers/CustomerAPI.mjs +0 -155
  101. package/dist/esm/apis/business/customers/CustomerAPI.mjs.map +0 -1
  102. package/dist/esm/apis/business/customers/CustomerBalanceTransactionsAPI.mjs +0 -68
  103. package/dist/esm/apis/business/customers/CustomerBalanceTransactionsAPI.mjs.map +0 -1
  104. package/dist/esm/apis/business/customers/CustomerPaymentMethodsAPI.mjs +0 -170
  105. package/dist/esm/apis/business/customers/CustomerPaymentMethodsAPI.mjs.map +0 -1
  106. package/dist/esm/apis/business/departments/DepartmentApi.mjs +0 -161
  107. package/dist/esm/apis/business/departments/DepartmentApi.mjs.map +0 -1
  108. package/dist/esm/apis/business/departments/employees/DepartmentEmployeesAPI.mjs +0 -132
  109. package/dist/esm/apis/business/departments/employees/DepartmentEmployeesAPI.mjs.map +0 -1
  110. package/dist/esm/apis/business/fees/FeesAPI.mjs +0 -161
  111. package/dist/esm/apis/business/fees/FeesAPI.mjs.map +0 -1
  112. package/dist/esm/apis/business/locations/LocationsAPI.mjs +0 -127
  113. package/dist/esm/apis/business/locations/LocationsAPI.mjs.map +0 -1
  114. package/dist/esm/apis/business/products/ProductsAPI.mjs +0 -177
  115. package/dist/esm/apis/business/products/ProductsAPI.mjs.map +0 -1
  116. package/dist/esm/apis/business/products/images/ProductImagesAPI.mjs +0 -188
  117. package/dist/esm/apis/business/products/images/ProductImagesAPI.mjs.map +0 -1
  118. package/dist/esm/apis/business/products/modifiers/ModifiersAPI.mjs +0 -163
  119. package/dist/esm/apis/business/products/modifiers/ModifiersAPI.mjs.map +0 -1
  120. package/dist/esm/apis/business/products/options/ProductOptionsAPI.mjs +0 -177
  121. package/dist/esm/apis/business/products/options/ProductOptionsAPI.mjs.map +0 -1
  122. package/dist/esm/apis/business/products/variants/ProductVariantsAPI.mjs +0 -179
  123. package/dist/esm/apis/business/products/variants/ProductVariantsAPI.mjs.map +0 -1
  124. package/dist/esm/apis/business/promo-codes/PromoCodesAPI.mjs +0 -133
  125. package/dist/esm/apis/business/promo-codes/PromoCodesAPI.mjs.map +0 -1
  126. package/dist/esm/apis/business/reviews/ReviewsAPI.mjs +0 -137
  127. package/dist/esm/apis/business/reviews/ReviewsAPI.mjs.map +0 -1
  128. package/dist/esm/apis/business/tables/TablesAPI.mjs +0 -70
  129. package/dist/esm/apis/business/tables/TablesAPI.mjs.map +0 -1
  130. package/dist/esm/apis/business/taxes/TaxesAPI.mjs +0 -134
  131. package/dist/esm/apis/business/taxes/TaxesAPI.mjs.map +0 -1
  132. package/dist/esm/apis/business/team/TeamMemberInvitationsAPI.mjs +0 -153
  133. package/dist/esm/apis/business/team/TeamMemberInvitationsAPI.mjs.map +0 -1
  134. package/dist/esm/apis/business/team/TeamMembersAPI.mjs +0 -88
  135. package/dist/esm/apis/business/team/TeamMembersAPI.mjs.map +0 -1
  136. package/dist/esm/apis/business/vendors/VendorsAPI.mjs +0 -228
  137. package/dist/esm/apis/business/vendors/VendorsAPI.mjs.map +0 -1
  138. package/dist/esm/apis/documents/DocumentsAPI.mjs +0 -82
  139. package/dist/esm/apis/documents/DocumentsAPI.mjs.map +0 -1
  140. package/dist/esm/apis/expenses/ExpensesAPI.mjs +0 -58
  141. package/dist/esm/apis/expenses/ExpensesAPI.mjs.map +0 -1
  142. package/dist/esm/apis/friends/FriendsAPI.mjs +0 -144
  143. package/dist/esm/apis/friends/FriendsAPI.mjs.map +0 -1
  144. package/dist/esm/apis/integrations/IntegrationsAPI.mjs +0 -52
  145. package/dist/esm/apis/integrations/IntegrationsAPI.mjs.map +0 -1
  146. package/dist/esm/apis/invoices/InvoicesAPI.mjs +0 -161
  147. package/dist/esm/apis/invoices/InvoicesAPI.mjs.map +0 -1
  148. package/dist/esm/apis/loyalty/LoyaltyProgramAPI.mjs +0 -482
  149. package/dist/esm/apis/loyalty/LoyaltyProgramAPI.mjs.map +0 -1
  150. package/dist/esm/apis/notifications/NotificationAPI.mjs +0 -98
  151. package/dist/esm/apis/notifications/NotificationAPI.mjs.map +0 -1
  152. package/dist/esm/apis/payment-methods/PaymentMethodsAPI.mjs +0 -117
  153. package/dist/esm/apis/payment-methods/PaymentMethodsAPI.mjs.map +0 -1
  154. package/dist/esm/apis/receipts/ReceiptAPI.mjs +0 -129
  155. package/dist/esm/apis/receipts/ReceiptAPI.mjs.map +0 -1
  156. package/dist/esm/apis/user/UserAPI.mjs +0 -123
  157. package/dist/esm/apis/user/UserAPI.mjs.map +0 -1
  158. package/dist/esm/apis/vendors/VendorsAPI.mjs +0 -204
  159. package/dist/esm/apis/vendors/VendorsAPI.mjs.map +0 -1
  160. package/dist/esm/context/ApiContext.mjs +0 -86
  161. package/dist/esm/context/ApiContext.mjs.map +0 -1
  162. package/dist/umd/index.js +0 -5099
  163. package/dist/umd/index.js.map +0 -1
@@ -1,117 +0,0 @@
1
- import { useApiClient } from '../../context/ApiContext.mjs';
2
- import { useQueryClient, useMutation, useQuery, useInfiniteQuery } from '@tanstack/react-query';
3
- import { SBApiKeys } from '../SBApiKeys.mjs';
4
-
5
- const useCreatePaymentMethodMutation = () => {
6
- const client = useApiClient();
7
- const queryClient = useQueryClient();
8
- return useMutation({
9
- mutationFn: async ({
10
- data,
11
- options,
12
- config
13
- }) => {
14
- return await client.paymentMethods.createAsync(data, options, config);
15
- },
16
- onSuccess: () => {
17
- queryClient.invalidateQueries({
18
- queryKey: [SBApiKeys.PaymentMethods]
19
- });
20
- }
21
- });
22
- };
23
- const useGetPaymentMethods = (request, options, config) => {
24
- const client = useApiClient();
25
- return useQuery({
26
- queryKey: [SBApiKeys.PaymentMethods, request, options],
27
- queryFn: async () => {
28
- return await client.paymentMethods.getAsync(request, options, config);
29
- }
30
- });
31
- };
32
- const useGetPaymentMethodById = (id, options, config) => {
33
- const client = useApiClient();
34
- return useQuery({
35
- queryKey: [SBApiKeys.PaymentMethods, id, options],
36
- queryFn: async () => {
37
- return await client.paymentMethods.getByIdAsync(id, options, config);
38
- }
39
- });
40
- };
41
- const useDeletePaymentMethodMutation = () => {
42
- const client = useApiClient();
43
- const queryClient = useQueryClient();
44
- return useMutation({
45
- mutationFn: async ({
46
- id,
47
- options,
48
- config
49
- }) => {
50
- return await client.paymentMethods.deleteAsync(id, options, config);
51
- },
52
- onSuccess: (_, {
53
- id
54
- }) => {
55
- queryClient.invalidateQueries({
56
- queryKey: [SBApiKeys.PaymentMethods]
57
- });
58
- queryClient.invalidateQueries({
59
- queryKey: [SBApiKeys.PaymentMethods, id]
60
- });
61
- }
62
- });
63
- };
64
- const useSetupPaymentMethod = () => {
65
- const client = useApiClient();
66
- useQueryClient();
67
- return useQuery({
68
- queryKey: [SBApiKeys.PaymentMethods, "setup"],
69
- queryFn: async () => {
70
- return await client.paymentMethods.setup();
71
- }
72
- });
73
- };
74
- const useCreatePaymentMethodFromSetupIntentMutation = () => {
75
- const client = useApiClient();
76
- const queryClient = useQueryClient();
77
- return useMutation({
78
- mutationFn: async ({
79
- setupIntentId,
80
- options,
81
- config
82
- }) => {
83
- return await client.paymentMethods.createFromSetupIntentAsync(setupIntentId, options, config);
84
- },
85
- onSuccess: () => {
86
- queryClient.invalidateQueries({
87
- queryKey: [SBApiKeys.PaymentMethods]
88
- });
89
- }
90
- });
91
- };
92
- const useListPaymentMethodsInfiniteQuery = (page = 1, pageSize = 10) => {
93
- const client = useApiClient();
94
- return useInfiniteQuery({
95
- queryKey: [SBApiKeys.PaymentMethods, "infinite", page, pageSize],
96
- queryFn: async ({
97
- pageParam = 1
98
- }) => {
99
- const request = {
100
- page: pageParam,
101
- pageSize
102
- };
103
- return await client.paymentMethods.getAsync(request);
104
- },
105
- getNextPageParam: (lastPage, allPages) => {
106
- // Assuming the API returns pagination info similar to other services
107
- if (lastPage && Array.isArray(lastPage) && lastPage.length === pageSize) {
108
- return allPages.length + 1;
109
- }
110
- return undefined;
111
- },
112
- initialPageParam: 1
113
- });
114
- };
115
-
116
- export { useCreatePaymentMethodFromSetupIntentMutation, useCreatePaymentMethodMutation, useDeletePaymentMethodMutation, useGetPaymentMethodById, useGetPaymentMethods, useListPaymentMethodsInfiniteQuery, useSetupPaymentMethod };
117
- //# sourceMappingURL=PaymentMethodsAPI.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentMethodsAPI.mjs","sources":["../../../../src/apis/payment-methods/PaymentMethodsAPI.tsx"],"sourcesContent":["import {\n\tPaymentMethodCreateRequest,\n\tPaymentMethodListRequest,\n\tSBPaymentMethodSetup,\n\tSBApiException,\n\tSBPaymentMethod,\n\tSBRequestOptions,\n} from \"@smartbills/sdk\";\nimport { useApiClient } from \"@/context\";\nimport {\n\tuseMutation,\n\tuseQuery,\n\tuseQueryClient,\n\tuseInfiniteQuery,\n} from \"@tanstack/react-query\";\nimport { AxiosRequestConfig } from \"axios\";\nimport { SBApiKeys } from \"@/apis/SBApiKeys\";\n\nexport const useCreatePaymentMethodMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useMutation<\n\t\tSBPaymentMethod,\n\t\tSBApiException,\n\t\t{\n\t\t\tdata: PaymentMethodCreateRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig<PaymentMethodCreateRequest>;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ data, options, config }) => {\n\t\t\treturn await client.paymentMethods.createAsync(\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: () => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.PaymentMethods],\n\t\t\t});\n\t\t},\n\t});\n};\n\nexport const useGetPaymentMethods = (\n\trequest: PaymentMethodListRequest,\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) => {\n\tconst client = useApiClient();\n\treturn useQuery<SBPaymentMethod[], SBApiException>({\n\t\tqueryKey: [SBApiKeys.PaymentMethods, request, options],\n\t\tqueryFn: async () => {\n\t\t\treturn await client.paymentMethods.getAsync(\n\t\t\t\trequest,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t});\n};\n\nexport const useGetPaymentMethodById = (\n\tid: number,\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) => {\n\tconst client = useApiClient();\n\treturn useQuery<SBPaymentMethod, SBApiException>({\n\t\tqueryKey: [SBApiKeys.PaymentMethods, id, options],\n\t\tqueryFn: async () => {\n\t\t\treturn await client.paymentMethods.getByIdAsync(\n\t\t\t\tid,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t});\n};\n\nexport const useDeletePaymentMethodMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useMutation<\n\t\tSBPaymentMethod,\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.paymentMethods.deleteAsync(id, options, config);\n\t\t},\n\t\tonSuccess: (_, { id }) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.PaymentMethods],\n\t\t\t});\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.PaymentMethods, id],\n\t\t\t});\n\t\t},\n\t});\n};\n\nexport const useSetupPaymentMethod = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useQuery<SBPaymentMethodSetup, SBApiException>({\n\t\tqueryKey: [SBApiKeys.PaymentMethods, \"setup\"],\n\t\tqueryFn: async () => {\n\t\t\treturn await client.paymentMethods.setup();\n\t\t},\n\t});\n};\n\nexport const useCreatePaymentMethodFromSetupIntentMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useMutation<\n\t\tSBPaymentMethod,\n\t\tSBApiException,\n\t\t{\n\t\t\tsetupIntentId: string;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ setupIntentId, options, config }) => {\n\t\t\treturn await client.paymentMethods.createFromSetupIntentAsync(\n\t\t\t\tsetupIntentId,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tonSuccess: () => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.PaymentMethods],\n\t\t\t});\n\t\t},\n\t});\n};\n\nexport const useListPaymentMethodsInfiniteQuery = (\n\tpage: number = 1,\n\tpageSize: number = 10,\n) => {\n\tconst client = useApiClient();\n\treturn useInfiniteQuery({\n\t\tqueryKey: [SBApiKeys.PaymentMethods, \"infinite\", page, pageSize],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\tconst request: PaymentMethodListRequest = {\n\t\t\t\tpage: pageParam,\n\t\t\t\tpageSize,\n\t\t\t};\n\t\t\treturn await client.paymentMethods.getAsync(request);\n\t\t},\n\t\tgetNextPageParam: (lastPage, allPages) => {\n\t\t\t// Assuming the API returns pagination info similar to other services\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"],"names":["useCreatePaymentMethodMutation","client","useApiClient","queryClient","useQueryClient","useMutation","mutationFn","data","options","config","paymentMethods","createAsync","onSuccess","invalidateQueries","queryKey","SBApiKeys","PaymentMethods","useGetPaymentMethods","request","useQuery","queryFn","getAsync","useGetPaymentMethodById","id","getByIdAsync","useDeletePaymentMethodMutation","deleteAsync","_","useSetupPaymentMethod","setup","useCreatePaymentMethodFromSetupIntentMutation","setupIntentId","createFromSetupIntentAsync","useListPaymentMethodsInfiniteQuery","page","pageSize","useInfiniteQuery","pageParam","getNextPageParam","lastPage","allPages","Array","isArray","length","undefined","initialPageParam"],"mappings":"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"}
@@ -1,129 +0,0 @@
1
- import { useQueryClient, useQuery, useInfiniteQuery, useMutation } from '@tanstack/react-query';
2
- import { useApiClient } from '../../context/ApiContext.mjs';
3
- import { SBApiKeys } from '../SBApiKeys.mjs';
4
-
5
- /**
6
- * Hook for retrieving a receipt by ID
7
- * @param id - The ID of the receipt to retrieve
8
- * @param options - Optional request options
9
- * @param config - Optional Axios request configuration
10
- * @returns Query result containing the receipt data
11
- */
12
- const useGetReceiptByIdQuery = (id, options, config) => {
13
- const client = useApiClient();
14
- useQueryClient();
15
- return useQuery({
16
- queryKey: [SBApiKeys.Receipts, id, options],
17
- queryFn: async () => {
18
- try {
19
- return await client.receipts.getByIdAsync(id, options, config);
20
- } catch (exception) {
21
- throw exception;
22
- }
23
- }
24
- });
25
- };
26
- /**
27
- * Hook for listing receipts with infinite pagination
28
- * @param request - Request parameters for listing receipts
29
- * @param options - Optional request options
30
- * @param config - Optional Axios request configuration
31
- * @returns Infinite query result for implementing infinite scrolling with receipt data
32
- */
33
- const useListReceiptsInfiniteQuery = (request = {
34
- page: 1,
35
- pageSize: 25
36
- }, options, config) => {
37
- const client = useApiClient();
38
- useQueryClient();
39
- return useInfiniteQuery({
40
- initialPageParam: request.page || 1,
41
- queryKey: [SBApiKeys.Receipts, request, options],
42
- queryFn: async ({
43
- pageParam = 1
44
- }) => {
45
- try {
46
- const paginatedRequest = {
47
- ...request,
48
- page: pageParam
49
- };
50
- return await client.receipts.listAsync(paginatedRequest, options, config);
51
- } catch (exception) {
52
- throw exception;
53
- }
54
- },
55
- getNextPageParam: lastPage => {
56
- if (lastPage.pagination && lastPage.pagination.currentPage < lastPage.pagination.pageCount) {
57
- return lastPage.pagination.currentPage + 1;
58
- }
59
- return undefined;
60
- }
61
- });
62
- };
63
- const useCreateReceiptMutation = () => {
64
- const client = useApiClient();
65
- const queryClient = useQueryClient();
66
- return useMutation({
67
- mutationFn: async ({
68
- request,
69
- options,
70
- config
71
- }) => {
72
- return await client.receipts.createAsync(request, options, config);
73
- },
74
- onSuccess: (_, {
75
- request
76
- }) => {
77
- queryClient.invalidateQueries({
78
- queryKey: [SBApiKeys.Receipts]
79
- });
80
- }
81
- });
82
- };
83
- const useCreateUpdateMutation = () => {
84
- const client = useApiClient();
85
- const queryClient = useQueryClient();
86
- return useMutation({
87
- mutationFn: async ({
88
- id,
89
- request,
90
- options,
91
- config
92
- }) => {
93
- return await client.receipts.updateAsync(id, request, options, config);
94
- },
95
- onSuccess: (_, {
96
- request
97
- }) => {
98
- queryClient.invalidateQueries({
99
- queryKey: [SBApiKeys.Receipts]
100
- });
101
- }
102
- });
103
- };
104
- const useDeleteReceiptMutation = () => {
105
- const client = useApiClient();
106
- const queryClient = useQueryClient();
107
- return useMutation({
108
- mutationFn: async ({
109
- id,
110
- options,
111
- config
112
- }) => {
113
- await client.receipts.deleteAsync(id, options, config);
114
- },
115
- onSuccess: (_, {
116
- id
117
- }) => {
118
- queryClient.invalidateQueries({
119
- queryKey: [SBApiKeys.Receipts]
120
- });
121
- queryClient.invalidateQueries({
122
- queryKey: [SBApiKeys.Receipts, id]
123
- });
124
- }
125
- });
126
- };
127
-
128
- export { useCreateReceiptMutation, useCreateUpdateMutation, useDeleteReceiptMutation, useGetReceiptByIdQuery, useListReceiptsInfiniteQuery };
129
- //# sourceMappingURL=ReceiptAPI.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReceiptAPI.mjs","sources":["../../../../src/apis/receipts/ReceiptAPI.tsx"],"sourcesContent":["import {\n\tSBList,\n\tReceiptListRequest,\n\tSBApiException,\n\tSBReceipt,\n\tSBRequestOptions,\n\tReceiptCreateRequest,\n\tReceiptUpdateRequest,\n} from \"@smartbills/sdk\";\nimport {\n\tQueryKey,\n\tuseInfiniteQuery,\n\tuseMutation,\n\tuseQuery,\n\tInfiniteData,\n} from \"@tanstack/react-query\";\nimport { useApiClient } from \"@/context\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { AxiosRequestConfig } from \"axios\";\nimport { SBApiKeys } from \"@/apis/SBApiKeys\";\n\n/**\n * Hook for retrieving a receipt by ID\n * @param id - The ID of the receipt to retrieve\n * @param options - Optional request options\n * @param config - Optional Axios request configuration\n * @returns Query result containing the receipt data\n */\nexport const useGetReceiptByIdQuery = (\n\tid: number,\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useQuery<SBReceipt, SBApiException>({\n\t\tqueryKey: [SBApiKeys.Receipts, id, options],\n\t\tqueryFn: async () => {\n\t\t\ttry {\n\t\t\t\treturn await client.receipts.getByIdAsync(id, options, config);\n\t\t\t} catch (exception) {\n\t\t\t\tthrow exception;\n\t\t\t}\n\t\t},\n\t});\n};\n\n/**\n * Hook for listing receipts with infinite pagination\n * @param request - Request parameters for listing receipts\n * @param options - Optional request options\n * @param config - Optional Axios request configuration\n * @returns Infinite query result for implementing infinite scrolling with receipt data\n */\nexport const useListReceiptsInfiniteQuery = (\n\trequest: ReceiptListRequest = { page: 1, pageSize: 25 },\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig<ReceiptListRequest>,\n) => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useInfiniteQuery<\n\t\tSBList<SBReceipt>,\n\t\tSBApiException,\n\t\tInfiniteData<SBList<SBReceipt>>,\n\t\tQueryKey,\n\t\tnumber\n\t>({\n\t\tinitialPageParam: request.page || 1,\n\t\tqueryKey: [SBApiKeys.Receipts, request, options],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\ttry {\n\t\t\t\tconst paginatedRequest = { ...request, page: pageParam };\n\t\t\t\treturn await client.receipts.listAsync(\n\t\t\t\t\tpaginatedRequest,\n\t\t\t\t\toptions,\n\t\t\t\t\tconfig,\n\t\t\t\t);\n\t\t\t} catch (exception) {\n\t\t\t\tthrow exception;\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 useCreateReceiptMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useMutation<\n\t\tSBReceipt,\n\t\tSBApiException,\n\t\t{\n\t\t\trequest: ReceiptCreateRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ request, options, config }) => {\n\t\t\treturn await client.receipts.createAsync(request, options, config);\n\t\t},\n\t\tonSuccess: (_, { request }) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Receipts],\n\t\t\t});\n\t\t},\n\t});\n};\n\nexport const useCreateUpdateMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\n\treturn useMutation<\n\t\tSBReceipt,\n\t\tSBApiException,\n\t\t{\n\t\t\tid: number;\n\t\t\trequest: ReceiptUpdateRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ id, request, options, config }) => {\n\t\t\treturn await client.receipts.updateAsync(\n\t\t\t\tid,\n\t\t\t\trequest,\n\t\t\t\toptions,\n\t\t\t\tconfig,\n\t\t\t);\n\t\t},\n\t\tonSuccess: (_, { request }) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Receipts],\n\t\t\t});\n\t\t},\n\t});\n};\n\nexport const useDeleteReceiptMutation = () => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\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.receipts.deleteAsync(id, options, config);\n\t\t},\n\t\tonSuccess: (_, { id }) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Receipts],\n\t\t\t});\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Receipts, id],\n\t\t\t});\n\t\t},\n\t});\n};\n"],"names":["useGetReceiptByIdQuery","id","options","config","client","useApiClient","useQueryClient","useQuery","queryKey","SBApiKeys","Receipts","queryFn","receipts","getByIdAsync","exception","useListReceiptsInfiniteQuery","request","page","pageSize","useInfiniteQuery","initialPageParam","pageParam","paginatedRequest","listAsync","getNextPageParam","lastPage","pagination","currentPage","pageCount","undefined","useCreateReceiptMutation","queryClient","useMutation","mutationFn","createAsync","onSuccess","_","invalidateQueries","useCreateUpdateMutation","updateAsync","useDeleteReceiptMutation","deleteAsync"],"mappings":"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"}
@@ -1,123 +0,0 @@
1
- import { useQueryClient, useQuery, useInfiniteQuery, useMutation } from '@tanstack/react-query';
2
- import { SBApiKeys } from '../SBApiKeys.mjs';
3
- import { useApiClient } from '../../context/ApiContext.mjs';
4
-
5
- /**
6
- * Hook for retrieving the current user's profile
7
- * @param options - Optional request options including UserId, businessId, and userId
8
- * @param config - Optional Axios request configuration
9
- * @returns Query result containing the user data, loading state, and error information
10
- */
11
- function useGetCurrentUser(options, config) {
12
- const client = useApiClient();
13
- useQueryClient();
14
- return useQuery({
15
- queryKey: [SBApiKeys.User, options],
16
- queryFn: async () => {
17
- return client.user.getCurrentUser(options, config);
18
- }
19
- });
20
- }
21
- /**
22
- * Hook for Searching Users with infinite pagination
23
- * @param request - Request parameters for Searching Users
24
- * @param options - Optional request options
25
- * @param config - Optional Axios request configuration
26
- * @returns Infinite query result for implementing infinite scrolling with User data
27
- */
28
- const useSearchUsersInfiniteQuery = (request = {
29
- page: 1,
30
- pageSize: 25,
31
- query: ""
32
- }, options, config) => {
33
- const client = useApiClient();
34
- useQueryClient();
35
- return useInfiniteQuery({
36
- initialPageParam: request.page || 1,
37
- queryKey: [SBApiKeys.Users, request, options],
38
- queryFn: async ({
39
- pageParam = 1
40
- }) => {
41
- return await client.users.listAsync({
42
- ...request,
43
- page: pageParam
44
- }, options, config);
45
- },
46
- getNextPageParam: lastPage => {
47
- if (lastPage.pagination.currentPage < lastPage.pagination.pageCount) {
48
- return lastPage.pagination.currentPage + 1;
49
- }
50
- return undefined;
51
- }
52
- });
53
- };
54
- /**
55
- * Hook for getting user profile
56
- */
57
- function useGetUserProfile(options, config) {
58
- const client = useApiClient();
59
- return useQuery({
60
- queryKey: [SBApiKeys.User, "profile", options],
61
- queryFn: async () => {
62
- return client.user.getUserProfile(options, config);
63
- }
64
- });
65
- }
66
- /**
67
- * Hook for updating user profile
68
- */
69
- function useUpdateUserProfileMutation() {
70
- const client = useApiClient();
71
- const queryClient = useQueryClient();
72
- return useMutation({
73
- mutationFn: async ({
74
- data,
75
- options,
76
- config
77
- }) => {
78
- return client.user.updateUserProfile(data, options, config);
79
- },
80
- onSuccess: () => {
81
- queryClient.invalidateQueries({
82
- queryKey: [SBApiKeys.User]
83
- });
84
- }
85
- });
86
- }
87
- /**
88
- * Hook for uploading user avatar
89
- */
90
- function useUploadUserAvatarMutation() {
91
- const client = useApiClient();
92
- const queryClient = useQueryClient();
93
- return useMutation({
94
- mutationFn: async ({
95
- file,
96
- options,
97
- config
98
- }) => {
99
- return client.user.uploadAvatarAsync(file, options, config);
100
- },
101
- onSuccess: () => {
102
- queryClient.invalidateQueries({
103
- queryKey: [SBApiKeys.User]
104
- });
105
- }
106
- });
107
- }
108
- /**
109
- * Hook for searching items
110
- */
111
- function useSearchQuery(query, options, config) {
112
- const client = useApiClient();
113
- return useQuery({
114
- queryKey: [SBApiKeys.Search, query, options],
115
- queryFn: async () => {
116
- return client.user.searchAsync(query, options, config);
117
- },
118
- enabled: !!query
119
- });
120
- }
121
-
122
- export { useGetCurrentUser, useGetUserProfile, useSearchQuery, useSearchUsersInfiniteQuery, useUpdateUserProfileMutation, useUploadUserAvatarMutation };
123
- //# sourceMappingURL=UserAPI.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UserAPI.mjs","sources":["../../../../src/apis/user/UserAPI.tsx"],"sourcesContent":["import {\n\tuseQuery,\n\tuseMutation,\n\tuseInfiniteQuery,\n\tQueryKey,\n\tInfiniteData,\n\tuseQueryClient,\n} from \"@tanstack/react-query\";\nimport {\n\tSBRequestOptions,\n\tSBUserAccount,\n\tSearchUsersRequest,\n\tSBApiException,\n\tSBList,\n\tSBBusiness,\n\tSBUser,\n\tUserUpdateRequest,\n} from \"@smartbills/sdk\";\nimport { AxiosRequestConfig } from \"axios\";\nimport { SBApiKeys } from \"@/apis/SBApiKeys\";\nimport { useApiClient } from \"@/context\";\n\n/**\n * Hook for retrieving the current user's profile\n * @param options - Optional request options including UserId, businessId, and userId\n * @param config - Optional Axios request configuration\n * @returns Query result containing the user data, loading state, and error information\n */\nexport function useGetCurrentUser(\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useQuery<SBUserAccount, SBApiException>({\n\t\tqueryKey: [SBApiKeys.User, options],\n\t\tqueryFn: async () => {\n\t\t\treturn client.user.getCurrentUser(options, config);\n\t\t},\n\t});\n}\n\n/**\n * Hook for Searching Users with infinite pagination\n * @param request - Request parameters for Searching Users\n * @param options - Optional request options\n * @param config - Optional Axios request configuration\n * @returns Infinite query result for implementing infinite scrolling with User data\n */\nexport const useSearchUsersInfiniteQuery = (\n\trequest: SearchUsersRequest = { page: 1, pageSize: 25, query: \"\" },\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig<SearchUsersRequest>,\n) => {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useInfiniteQuery<\n\t\tSBList<SBUserAccount>,\n\t\tSBApiException,\n\t\tSBList<SBUserAccount>,\n\t\tQueryKey,\n\t\tnumber\n\t>({\n\t\tinitialPageParam: request.page || 1,\n\t\tqueryKey: [SBApiKeys.Users, request, options],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\treturn await client.users.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 < 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 getting user profile\n */\nexport function useGetUserProfile(\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) {\n\tconst client = useApiClient();\n\treturn useQuery<any, SBApiException>({\n\t\tqueryKey: [SBApiKeys.User, \"profile\", options],\n\t\tqueryFn: async () => {\n\t\t\treturn client.user.getUserProfile(options, config);\n\t\t},\n\t});\n}\n\n/**\n * Hook for updating user profile\n */\nexport function useUpdateUserProfileMutation() {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useMutation<\n\t\tany,\n\t\tSBApiException,\n\t\t{\n\t\t\tdata: UserUpdateRequest;\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 client.user.updateUserProfile(data, options, config);\n\t\t},\n\t\tonSuccess: () => {\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.User] });\n\t\t},\n\t});\n}\n\n/**\n * Hook for uploading user avatar\n */\nexport function useUploadUserAvatarMutation() {\n\tconst client = useApiClient();\n\tconst queryClient = useQueryClient();\n\treturn useMutation<\n\t\tany,\n\t\tSBApiException,\n\t\t{\n\t\t\tfile: File;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>({\n\t\tmutationFn: async ({ file, options, config }) => {\n\t\t\treturn client.user.uploadAvatarAsync(file, options, config);\n\t\t},\n\t\tonSuccess: () => {\n\t\t\tqueryClient.invalidateQueries({ queryKey: [SBApiKeys.User] });\n\t\t},\n\t});\n}\n\n/**\n * Hook for searching items\n */\nexport function useSearchQuery(\n\tquery: string,\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) {\n\tconst client = useApiClient();\n\treturn useQuery<any, SBApiException>({\n\t\tqueryKey: [SBApiKeys.Search, query, options],\n\t\tqueryFn: async () => {\n\t\t\treturn client.user.searchAsync(query, options, config);\n\t\t},\n\t\tenabled: !!query,\n\t});\n}\n"],"names":["useGetCurrentUser","options","config","client","useApiClient","useQueryClient","useQuery","queryKey","SBApiKeys","User","queryFn","user","getCurrentUser","useSearchUsersInfiniteQuery","request","page","pageSize","query","useInfiniteQuery","initialPageParam","Users","pageParam","users","listAsync","getNextPageParam","lastPage","pagination","currentPage","pageCount","undefined","useGetUserProfile","getUserProfile","useUpdateUserProfileMutation","queryClient","useMutation","mutationFn","data","updateUserProfile","onSuccess","invalidateQueries","useUploadUserAvatarMutation","file","uploadAvatarAsync","useSearchQuery","Search","searchAsync","enabled"],"mappings":";;;;AAsBA;;;;;AAKG;AACa,SAAAA,iBAAiBA,CAChCC,OAA0B,EAC1BC,MAA2B,EAAA;AAE3B,EAAA,MAAMC,MAAM,GAAGC,YAAY,EAAE;AAC7B,EAAoBC,cAAc;AAClC,EAAA,OAAOC,QAAQ,CAAgC;AAC9CC,IAAAA,QAAQ,EAAE,CAACC,SAAS,CAACC,IAAI,EAAER,OAAO,CAAC;IACnCS,OAAO,EAAE,YAAW;MACnB,OAAOP,MAAM,CAACQ,IAAI,CAACC,cAAc,CAACX,OAAO,EAAEC,MAAM,CAAC;AACnD;AACA,GAAA,CAAC;AACH;AAEA;;;;;;AAMG;AACUW,MAAAA,2BAA2B,GAAGA,CAC1CC,UAA8B;AAAEC,EAAAA,IAAI,EAAE,CAAC;AAAEC,EAAAA,QAAQ,EAAE,EAAE;AAAEC,EAAAA,KAAK,EAAE;AAAE,CAAE,EAClEhB,OAA0B,EAC1BC,MAA+C,KAC5C;AACH,EAAA,MAAMC,MAAM,GAAGC,YAAY,EAAE;AAC7B,EAAoBC,cAAc;AAClC,EAAA,OAAOa,gBAAgB,CAMrB;AACDC,IAAAA,gBAAgB,EAAEL,OAAO,CAACC,IAAI,IAAI,CAAC;IACnCR,QAAQ,EAAE,CAACC,SAAS,CAACY,KAAK,EAAEN,OAAO,EAAEb,OAAO,CAAC;IAC7CS,OAAO,EAAE,OAAO;AAAEW,MAAAA,SAAS,GAAG;AAAG,KAAA,KAAI;AACpC,MAAA,OAAO,MAAMlB,MAAM,CAACmB,KAAK,CAACC,SAAS,CAClC;AAAE,QAAA,GAAGT,OAAO;AAAEC,QAAAA,IAAI,EAAEM;AAAW,OAAA,EAC/BpB,OAAO,EACPC,MAAM,CACN;KACD;IACDsB,gBAAgB,EAAGC,QAAQ,IAAI;MAC9B,IACCA,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;;AAEG;AACa,SAAAC,iBAAiBA,CAChC7B,OAA0B,EAC1BC,MAA2B,EAAA;AAE3B,EAAA,MAAMC,MAAM,GAAGC,YAAY,EAAE;AAC7B,EAAA,OAAOE,QAAQ,CAAsB;IACpCC,QAAQ,EAAE,CAACC,SAAS,CAACC,IAAI,EAAE,SAAS,EAAER,OAAO,CAAC;IAC9CS,OAAO,EAAE,YAAW;MACnB,OAAOP,MAAM,CAACQ,IAAI,CAACoB,cAAc,CAAC9B,OAAO,EAAEC,MAAM,CAAC;AACnD;AACA,GAAA,CAAC;AACH;AAEA;;AAEG;SACa8B,4BAA4BA,GAAA;AAC3C,EAAA,MAAM7B,MAAM,GAAGC,YAAY,EAAE;AAC7B,EAAA,MAAM6B,WAAW,GAAG5B,cAAc,EAAE;AACpC,EAAA,OAAO6B,WAAW,CAQhB;IACDC,UAAU,EAAE,OAAO;MAAEC,IAAI;MAAEnC,OAAO;AAAEC,MAAAA;AAAQ,KAAA,KAAI;MAC/C,OAAOC,MAAM,CAACQ,IAAI,CAAC0B,iBAAiB,CAACD,IAAI,EAAEnC,OAAO,EAAEC,MAAM,CAAC;KAC3D;IACDoC,SAAS,EAAEA,MAAK;MACfL,WAAW,CAACM,iBAAiB,CAAC;AAAEhC,QAAAA,QAAQ,EAAE,CAACC,SAAS,CAACC,IAAI;AAAC,OAAE,CAAC;AAC9D;AACA,GAAA,CAAC;AACH;AAEA;;AAEG;SACa+B,2BAA2BA,GAAA;AAC1C,EAAA,MAAMrC,MAAM,GAAGC,YAAY,EAAE;AAC7B,EAAA,MAAM6B,WAAW,GAAG5B,cAAc,EAAE;AACpC,EAAA,OAAO6B,WAAW,CAQhB;IACDC,UAAU,EAAE,OAAO;MAAEM,IAAI;MAAExC,OAAO;AAAEC,MAAAA;AAAQ,KAAA,KAAI;MAC/C,OAAOC,MAAM,CAACQ,IAAI,CAAC+B,iBAAiB,CAACD,IAAI,EAAExC,OAAO,EAAEC,MAAM,CAAC;KAC3D;IACDoC,SAAS,EAAEA,MAAK;MACfL,WAAW,CAACM,iBAAiB,CAAC;AAAEhC,QAAAA,QAAQ,EAAE,CAACC,SAAS,CAACC,IAAI;AAAC,OAAE,CAAC;AAC9D;AACA,GAAA,CAAC;AACH;AAEA;;AAEG;SACakC,cAAcA,CAC7B1B,KAAa,EACbhB,OAA0B,EAC1BC,MAA2B,EAAA;AAE3B,EAAA,MAAMC,MAAM,GAAGC,YAAY,EAAE;AAC7B,EAAA,OAAOE,QAAQ,CAAsB;IACpCC,QAAQ,EAAE,CAACC,SAAS,CAACoC,MAAM,EAAE3B,KAAK,EAAEhB,OAAO,CAAC;IAC5CS,OAAO,EAAE,YAAW;MACnB,OAAOP,MAAM,CAACQ,IAAI,CAACkC,WAAW,CAAC5B,KAAK,EAAEhB,OAAO,EAAEC,MAAM,CAAC;KACtD;IACD4C,OAAO,EAAE,CAAC,CAAC7B;AACX,GAAA,CAAC;AACH;;;;"}
@@ -1,204 +0,0 @@
1
- import { useApiClient } from '../../context/ApiContext.mjs';
2
- import { useInfiniteQuery, useQuery, useQueryClient, useMutation } from '@tanstack/react-query';
3
- import { SBApiKeys } from '../SBApiKeys.mjs';
4
-
5
- function useListVendorsInfiniteQuery(request = {
6
- page: 1,
7
- pageSize: 25
8
- }, options, config) {
9
- const client = useApiClient();
10
- return useInfiniteQuery({
11
- initialPageParam: request.page || 1,
12
- queryKey: [SBApiKeys.Vendors, request, options],
13
- queryFn: async ({
14
- pageParam = 1
15
- }) => {
16
- const paginatedRequest = {
17
- ...request,
18
- page: pageParam
19
- };
20
- return client.vendors.listAsync(paginatedRequest, options, config);
21
- },
22
- getNextPageParam: lastPage => {
23
- if (lastPage.pagination && lastPage.pagination.currentPage < lastPage.pagination.pageCount) {
24
- return lastPage.pagination.currentPage + 1;
25
- }
26
- return undefined;
27
- }
28
- });
29
- }
30
- function useGetVendorByIdQuery(id, options, config) {
31
- const client = useApiClient();
32
- return useQuery({
33
- queryKey: [SBApiKeys.Vendors, id, options],
34
- queryFn: async () => {
35
- return client.vendors.getByIdAsync(id, options, config);
36
- }
37
- });
38
- }
39
- function useDeleteVendorMutation(mutationOptions) {
40
- const queryClient = useQueryClient();
41
- return useMutation({
42
- mutationFn: async ({
43
- vendorId,
44
- options,
45
- config
46
- }) => {
47
- const client = useApiClient();
48
- return client.vendors.deleteAsync(vendorId, options, config);
49
- },
50
- onSuccess: (data, variables, context) => {
51
- queryClient.invalidateQueries({
52
- queryKey: [SBApiKeys.Vendors]
53
- });
54
- mutationOptions?.onSuccess?.(data, variables, context);
55
- },
56
- ...mutationOptions
57
- });
58
- }
59
- function useCreateVendorMutation(mutationOptions) {
60
- const queryClient = useQueryClient();
61
- return useMutation({
62
- mutationFn: async ({
63
- request,
64
- options,
65
- config
66
- }) => {
67
- const client = useApiClient();
68
- return client.vendors.createAsync(request, options, config);
69
- },
70
- onSuccess: (data, variables, context) => {
71
- queryClient.invalidateQueries({
72
- queryKey: [SBApiKeys.Vendors]
73
- });
74
- mutationOptions?.onSuccess?.(data, variables, context);
75
- },
76
- ...mutationOptions
77
- });
78
- }
79
- function useUpdateVendorMutation(mutationOptions) {
80
- const queryClient = useQueryClient();
81
- return useMutation({
82
- mutationFn: async ({
83
- vendorId,
84
- request,
85
- options,
86
- config
87
- }) => {
88
- const client = useApiClient();
89
- return client.vendors.updateAsync(vendorId, request, options, config);
90
- },
91
- onSuccess: (data, variables, context) => {
92
- queryClient.invalidateQueries({
93
- queryKey: [SBApiKeys.Vendors]
94
- });
95
- queryClient.invalidateQueries({
96
- queryKey: [SBApiKeys.Vendors, variables.vendorId]
97
- });
98
- mutationOptions?.onSuccess?.(data, variables, context);
99
- },
100
- ...mutationOptions
101
- });
102
- }
103
- function useGetVendorLinkTokenMutation(mutationOptions) {
104
- const client = useApiClient();
105
- return useMutation({
106
- mutationFn: async ({
107
- options,
108
- config
109
- }) => {
110
- return client.vendors.getLinkToken(options, config);
111
- },
112
- ...mutationOptions
113
- });
114
- }
115
- function useConnectVendorMutation(mutationOptions) {
116
- const queryClient = useQueryClient();
117
- return useMutation({
118
- mutationFn: async ({
119
- request,
120
- options,
121
- config
122
- }) => {
123
- const client = useApiClient();
124
- return client.vendors.connectAsync(request, options, config);
125
- },
126
- onSuccess: (data, variables, context) => {
127
- queryClient.invalidateQueries({
128
- queryKey: [SBApiKeys.Vendors]
129
- });
130
- mutationOptions?.onSuccess?.(data, variables, context);
131
- },
132
- ...mutationOptions
133
- });
134
- }
135
- /**
136
- * Hook for retrieving a Deck connection by ID
137
- * @param id - The ID of the connection to retrieve
138
- * @param options - Optional request options including businessId and userId
139
- * @param config - Optional Axios request configuration
140
- * @returns Query result containing the connection data, loading state, and error information
141
- */
142
- function useGetDeckConnectionByIdQuery(id, options, config) {
143
- const client = useApiClient();
144
- return useQuery({
145
- queryKey: [SBApiKeys.Vendors, id, options],
146
- queryFn: async () => {
147
- return client.vendors.getConnectionByIdAsync(id, options, config);
148
- }
149
- });
150
- }
151
- /**
152
- * Hook for disconnecting from a vendor
153
- * @param mutationOptions - Optional React Query mutation options
154
- * @returns Mutation function and state for disconnecting from a vendor
155
- */
156
- function useDisconnectFromVendorMutation(mutationOptions) {
157
- const queryClient = useQueryClient();
158
- return useMutation({
159
- mutationFn: async ({
160
- vendorId,
161
- options,
162
- config
163
- }) => {
164
- const client = useApiClient();
165
- return client.vendors.disconnectAsync(vendorId, options, config);
166
- },
167
- onSuccess: (data, variables, context) => {
168
- queryClient.invalidateQueries({
169
- queryKey: [SBApiKeys.Vendors]
170
- });
171
- // Call custom onSuccess if provided
172
- mutationOptions?.onSuccess?.(data, variables, context);
173
- },
174
- // Spread the rest of the mutation options
175
- ...mutationOptions
176
- // Note: We're not spreading onSuccess to avoid overriding our implementation
177
- });
178
- }
179
- function useRefreshVendorMutation(mutationOptions) {
180
- const queryClient = useQueryClient();
181
- return useMutation({
182
- mutationFn: async ({
183
- vendorId,
184
- options,
185
- config
186
- }) => {
187
- const client = useApiClient();
188
- return client.vendors.manualRefresh(vendorId, options, config);
189
- },
190
- onSuccess: (data, variables, context) => {
191
- queryClient.invalidateQueries({
192
- queryKey: [SBApiKeys.Vendors]
193
- });
194
- queryClient.invalidateQueries({
195
- queryKey: [SBApiKeys.Vendors, variables.vendorId]
196
- });
197
- mutationOptions?.onSuccess?.(data, variables, context);
198
- },
199
- ...mutationOptions
200
- });
201
- }
202
-
203
- export { useConnectVendorMutation, useCreateVendorMutation, useDeleteVendorMutation, useDisconnectFromVendorMutation, useGetDeckConnectionByIdQuery, useGetVendorByIdQuery, useGetVendorLinkTokenMutation, useListVendorsInfiniteQuery, useRefreshVendorMutation, useUpdateVendorMutation };
204
- //# sourceMappingURL=VendorsAPI.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"VendorsAPI.mjs","sources":["../../../../src/apis/vendors/VendorsAPI.ts"],"sourcesContent":["import {\n\tSBList,\n\tSBRequestOptions,\n\tSBApiException,\n\tSBVendor,\n\tVendorCreateRequest,\n\tVendorUpdateRequest,\n\tVendorConnectRequest,\n\tListRequest,\n} from \"@smartbills/sdk\";\nimport { useApiClient } from \"@/context\";\nimport { InfiniteData, useQueryClient } from \"@tanstack/react-query\";\nimport {\n\tQueryKey,\n\tuseInfiniteQuery,\n\tuseMutation,\n\tuseQuery,\n\tUseMutationOptions,\n} from \"@tanstack/react-query\";\nimport { AxiosRequestConfig } from \"axios\";\nimport { SBApiKeys } from \"@/apis/SBApiKeys\";\n\nexport function useListVendorsInfiniteQuery(\n\trequest: ListRequest = { page: 1, pageSize: 25 },\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) {\n\tconst client = useApiClient();\n\treturn useInfiniteQuery<\n\t\tSBList<SBVendor>,\n\t\tSBApiException,\n\t\tInfiniteData<SBList<SBVendor>>,\n\t\tQueryKey,\n\t\tnumber\n\t>({\n\t\tinitialPageParam: request.page || 1,\n\t\tqueryKey: [SBApiKeys.Vendors, request, options],\n\t\tqueryFn: async ({ pageParam = 1 }) => {\n\t\t\tconst paginatedRequest = { ...request, page: pageParam };\n\t\t\treturn client.vendors.listAsync(paginatedRequest, options, config);\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 function useGetVendorByIdQuery(\n\tid: number,\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) {\n\tconst client = useApiClient();\n\treturn useQuery({\n\t\tqueryKey: [SBApiKeys.Vendors, id, options],\n\t\tqueryFn: async () => {\n\t\t\treturn client.vendors.getByIdAsync(id, options, config);\n\t\t},\n\t});\n}\n\nexport function useDeleteVendorMutation(\n\tmutationOptions?: Omit<\n\t\tUseMutationOptions<\n\t\t\tSBVendor,\n\t\t\tSBApiException,\n\t\t\t{\n\t\t\t\tvendorId: 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 queryClient = useQueryClient();\n\n\treturn useMutation({\n\t\tmutationFn: async ({\n\t\t\tvendorId,\n\t\t\toptions,\n\t\t\tconfig,\n\t\t}: {\n\t\t\tvendorId: number;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}) => {\n\t\t\tconst client = useApiClient();\n\t\t\treturn client.vendors.deleteAsync(vendorId, options, config);\n\t\t},\n\t\tonSuccess: (data, variables, context) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Vendors],\n\t\t\t});\n\n\t\t\tmutationOptions?.onSuccess?.(data, variables, context);\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n\nexport function useCreateVendorMutation(\n\tmutationOptions?: Omit<\n\t\tUseMutationOptions<\n\t\t\tSBVendor,\n\t\t\tSBApiException,\n\t\t\t{\n\t\t\t\trequest: VendorCreateRequest;\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 queryClient = useQueryClient();\n\n\treturn useMutation({\n\t\tmutationFn: async ({\n\t\t\trequest,\n\t\t\toptions,\n\t\t\tconfig,\n\t\t}: {\n\t\t\trequest: VendorCreateRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}) => {\n\t\t\tconst client = useApiClient();\n\t\t\treturn client.vendors.createAsync(request, options, config);\n\t\t},\n\t\tonSuccess: (data, variables, context) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Vendors],\n\t\t\t});\n\n\t\t\tmutationOptions?.onSuccess?.(data, variables, context);\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n\nexport function useUpdateVendorMutation(\n\tmutationOptions?: Omit<\n\t\tUseMutationOptions<\n\t\t\tSBVendor,\n\t\t\tSBApiException,\n\t\t\t{\n\t\t\t\tvendorId: number;\n\t\t\t\trequest: VendorUpdateRequest;\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 queryClient = useQueryClient();\n\n\treturn useMutation({\n\t\tmutationFn: async ({\n\t\t\tvendorId,\n\t\t\trequest,\n\t\t\toptions,\n\t\t\tconfig,\n\t\t}: {\n\t\t\tvendorId: number;\n\t\t\trequest: VendorUpdateRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}) => {\n\t\t\tconst client = useApiClient();\n\t\t\treturn client.vendors.updateAsync(\n\t\t\t\tvendorId,\n\t\t\t\trequest,\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.Vendors],\n\t\t\t});\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Vendors, variables.vendorId],\n\t\t\t});\n\n\t\t\tmutationOptions?.onSuccess?.(data, variables, context);\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n\nexport function useGetVendorLinkTokenMutation(\n\tmutationOptions?: UseMutationOptions<\n\t\tany,\n\t\tSBApiException,\n\t\t{\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}\n\t>,\n) {\n\tconst client = useApiClient();\n\n\treturn useMutation({\n\t\tmutationFn: async ({\n\t\t\toptions,\n\t\t\tconfig,\n\t\t}: {\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}) => {\n\t\t\treturn client.vendors.getLinkToken(options, config);\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n\nexport function useConnectVendorMutation(\n\tmutationOptions?: Omit<\n\t\tUseMutationOptions<\n\t\t\tSBVendor,\n\t\t\tSBApiException,\n\t\t\t{\n\t\t\t\trequest: VendorConnectRequest;\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 queryClient = useQueryClient();\n\n\treturn useMutation({\n\t\tmutationFn: async ({\n\t\t\trequest,\n\t\t\toptions,\n\t\t\tconfig,\n\t\t}: {\n\t\t\trequest: VendorConnectRequest;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}) => {\n\t\t\tconst client = useApiClient();\n\t\t\treturn client.vendors.connectAsync(request, options, config);\n\t\t},\n\t\tonSuccess: (data, variables, context) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Vendors],\n\t\t\t});\n\n\t\t\tmutationOptions?.onSuccess?.(data, variables, context);\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n\n/**\n * Hook for retrieving a Deck connection by ID\n * @param id - The ID of the connection to retrieve\n * @param options - Optional request options including businessId and userId\n * @param config - Optional Axios request configuration\n * @returns Query result containing the connection data, loading state, and error information\n */\nexport function useGetDeckConnectionByIdQuery(\n\tid: number,\n\toptions?: SBRequestOptions,\n\tconfig?: AxiosRequestConfig,\n) {\n\tconst client = useApiClient();\n\treturn useQuery({\n\t\tqueryKey: [SBApiKeys.Vendors, id, options],\n\t\tqueryFn: async () => {\n\t\t\treturn client.vendors.getConnectionByIdAsync(id, options, config);\n\t\t},\n\t});\n}\n\n/**\n * Hook for disconnecting from a vendor\n * @param mutationOptions - Optional React Query mutation options\n * @returns Mutation function and state for disconnecting from a vendor\n */\nexport function useDisconnectFromVendorMutation(\n\tmutationOptions?: Omit<\n\t\tUseMutationOptions<\n\t\t\tSBVendor,\n\t\t\tSBApiException,\n\t\t\t{\n\t\t\t\tvendorId: 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 queryClient = useQueryClient();\n\n\treturn useMutation({\n\t\tmutationFn: async ({\n\t\t\tvendorId,\n\t\t\toptions,\n\t\t\tconfig,\n\t\t}: {\n\t\t\tvendorId: number;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}) => {\n\t\t\tconst client = useApiClient();\n\t\t\treturn client.vendors.disconnectAsync(vendorId, options, config);\n\t\t},\n\t\tonSuccess: (data, variables, context) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Vendors],\n\t\t\t});\n\n\t\t\t// Call custom onSuccess if provided\n\t\t\tmutationOptions?.onSuccess?.(data, variables, context);\n\t\t},\n\t\t// Spread the rest of the mutation options\n\t\t...mutationOptions,\n\t\t// Note: We're not spreading onSuccess to avoid overriding our implementation\n\t});\n}\n\nexport function useRefreshVendorMutation(\n\tmutationOptions?: Omit<\n\t\tUseMutationOptions<\n\t\t\tvoid,\n\t\t\tSBApiException,\n\t\t\t{\n\t\t\t\tvendorId: 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 queryClient = useQueryClient();\n\n\treturn useMutation({\n\t\tmutationFn: async ({\n\t\t\tvendorId,\n\t\t\toptions,\n\t\t\tconfig,\n\t\t}: {\n\t\t\tvendorId: number;\n\t\t\toptions?: SBRequestOptions;\n\t\t\tconfig?: AxiosRequestConfig;\n\t\t}) => {\n\t\t\tconst client = useApiClient();\n\t\t\treturn client.vendors.manualRefresh(vendorId, options, config);\n\t\t},\n\t\tonSuccess: (data, variables, context) => {\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Vendors],\n\t\t\t});\n\t\t\tqueryClient.invalidateQueries({\n\t\t\t\tqueryKey: [SBApiKeys.Vendors, variables.vendorId],\n\t\t\t});\n\n\t\t\tmutationOptions?.onSuccess?.(data, variables, context);\n\t\t},\n\t\t...mutationOptions,\n\t});\n}\n"],"names":["useListVendorsInfiniteQuery","request","page","pageSize","options","config","client","useApiClient","useInfiniteQuery","initialPageParam","queryKey","SBApiKeys","Vendors","queryFn","pageParam","paginatedRequest","vendors","listAsync","getNextPageParam","lastPage","pagination","currentPage","pageCount","undefined","useGetVendorByIdQuery","id","useQuery","getByIdAsync","useDeleteVendorMutation","mutationOptions","queryClient","useQueryClient","useMutation","mutationFn","vendorId","deleteAsync","onSuccess","data","variables","context","invalidateQueries","useCreateVendorMutation","createAsync","useUpdateVendorMutation","updateAsync","useGetVendorLinkTokenMutation","getLinkToken","useConnectVendorMutation","connectAsync","useGetDeckConnectionByIdQuery","getConnectionByIdAsync","useDisconnectFromVendorMutation","disconnectAsync","useRefreshVendorMutation","manualRefresh"],"mappings":"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"}