@smartbills/react-hooks-sdk 0.0.2-alpha.45 → 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.
- package/README.md +148 -73
- package/dist/cjs/index.cjs +1 -221
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/index.mjs +1 -38
- package/dist/esm/index.mjs.map +1 -1
- package/dist/types/index.d.ts +594 -0
- package/package.json +58 -99
- package/dist/@types/index.d.ts +0 -1424
- package/dist/@types/index.d.ts.map +0 -1
- package/dist/cjs/apis/SBApiKeys.cjs +0 -55
- package/dist/cjs/apis/SBApiKeys.cjs.map +0 -1
- package/dist/cjs/apis/api-logs/LogsAPI.cjs +0 -42
- package/dist/cjs/apis/api-logs/LogsAPI.cjs.map +0 -1
- package/dist/cjs/apis/attachments/AttachmentsAPI.cjs +0 -147
- package/dist/cjs/apis/attachments/AttachmentsAPI.cjs.map +0 -1
- package/dist/cjs/apis/banks/accounts/BankAccountAPI.cjs +0 -88
- package/dist/cjs/apis/banks/accounts/BankAccountAPI.cjs.map +0 -1
- package/dist/cjs/apis/banks/bank-institutions/BankInstitutionsAPI.cjs +0 -58
- package/dist/cjs/apis/banks/bank-institutions/BankInstitutionsAPI.cjs.map +0 -1
- package/dist/cjs/apis/banks/bank-transactions/BankTransactionAPI.cjs +0 -57
- package/dist/cjs/apis/banks/bank-transactions/BankTransactionAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/BusinessAPI.cjs +0 -172
- package/dist/cjs/apis/business/BusinessAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/customers/CustomerAPI.cjs +0 -161
- package/dist/cjs/apis/business/customers/CustomerAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/customers/CustomerBalanceTransactionsAPI.cjs +0 -71
- package/dist/cjs/apis/business/customers/CustomerBalanceTransactionsAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/customers/CustomerPaymentMethodsAPI.cjs +0 -176
- package/dist/cjs/apis/business/customers/CustomerPaymentMethodsAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/departments/DepartmentApi.cjs +0 -168
- package/dist/cjs/apis/business/departments/DepartmentApi.cjs.map +0 -1
- package/dist/cjs/apis/business/departments/employees/DepartmentEmployeesAPI.cjs +0 -137
- package/dist/cjs/apis/business/departments/employees/DepartmentEmployeesAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/fees/FeesAPI.cjs +0 -167
- package/dist/cjs/apis/business/fees/FeesAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/locations/LocationsAPI.cjs +0 -133
- package/dist/cjs/apis/business/locations/LocationsAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/products/ProductsAPI.cjs +0 -184
- package/dist/cjs/apis/business/products/ProductsAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/products/images/ProductImagesAPI.cjs +0 -195
- package/dist/cjs/apis/business/products/images/ProductImagesAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/products/modifiers/ModifiersAPI.cjs +0 -169
- package/dist/cjs/apis/business/products/modifiers/ModifiersAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/products/options/ProductOptionsAPI.cjs +0 -183
- package/dist/cjs/apis/business/products/options/ProductOptionsAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/products/variants/ProductVariantsAPI.cjs +0 -185
- package/dist/cjs/apis/business/products/variants/ProductVariantsAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/promo-codes/PromoCodesAPI.cjs +0 -139
- package/dist/cjs/apis/business/promo-codes/PromoCodesAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/reviews/ReviewsAPI.cjs +0 -143
- package/dist/cjs/apis/business/reviews/ReviewsAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/tables/TablesAPI.cjs +0 -75
- package/dist/cjs/apis/business/tables/TablesAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/taxes/TaxesAPI.cjs +0 -140
- package/dist/cjs/apis/business/taxes/TaxesAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/team/TeamMemberInvitationsAPI.cjs +0 -161
- package/dist/cjs/apis/business/team/TeamMemberInvitationsAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/team/TeamMembersAPI.cjs +0 -93
- package/dist/cjs/apis/business/team/TeamMembersAPI.cjs.map +0 -1
- package/dist/cjs/apis/business/vendors/VendorsAPI.cjs +0 -239
- package/dist/cjs/apis/business/vendors/VendorsAPI.cjs.map +0 -1
- package/dist/cjs/apis/documents/DocumentsAPI.cjs +0 -87
- package/dist/cjs/apis/documents/DocumentsAPI.cjs.map +0 -1
- package/dist/cjs/apis/expenses/ExpensesAPI.cjs +0 -62
- package/dist/cjs/apis/expenses/ExpensesAPI.cjs.map +0 -1
- package/dist/cjs/apis/friends/FriendsAPI.cjs +0 -150
- package/dist/cjs/apis/friends/FriendsAPI.cjs.map +0 -1
- package/dist/cjs/apis/integrations/IntegrationsAPI.cjs +0 -55
- package/dist/cjs/apis/integrations/IntegrationsAPI.cjs.map +0 -1
- package/dist/cjs/apis/invoices/InvoicesAPI.cjs +0 -168
- package/dist/cjs/apis/invoices/InvoicesAPI.cjs.map +0 -1
- package/dist/cjs/apis/loyalty/LoyaltyProgramAPI.cjs +0 -484
- package/dist/cjs/apis/loyalty/LoyaltyProgramAPI.cjs.map +0 -1
- package/dist/cjs/apis/notifications/NotificationAPI.cjs +0 -103
- package/dist/cjs/apis/notifications/NotificationAPI.cjs.map +0 -1
- package/dist/cjs/apis/payment-methods/PaymentMethodsAPI.cjs +0 -125
- package/dist/cjs/apis/payment-methods/PaymentMethodsAPI.cjs.map +0 -1
- package/dist/cjs/apis/receipts/ReceiptAPI.cjs +0 -135
- package/dist/cjs/apis/receipts/ReceiptAPI.cjs.map +0 -1
- package/dist/cjs/apis/user/UserAPI.cjs +0 -130
- package/dist/cjs/apis/user/UserAPI.cjs.map +0 -1
- package/dist/cjs/apis/vendors/VendorsAPI.cjs +0 -171
- package/dist/cjs/apis/vendors/VendorsAPI.cjs.map +0 -1
- package/dist/cjs/context/ApiContext.cjs +0 -94
- package/dist/cjs/context/ApiContext.cjs.map +0 -1
- package/dist/esm/apis/SBApiKeys.mjs +0 -55
- package/dist/esm/apis/SBApiKeys.mjs.map +0 -1
- package/dist/esm/apis/api-logs/LogsAPI.mjs +0 -39
- package/dist/esm/apis/api-logs/LogsAPI.mjs.map +0 -1
- package/dist/esm/apis/attachments/AttachmentsAPI.mjs +0 -142
- package/dist/esm/apis/attachments/AttachmentsAPI.mjs.map +0 -1
- package/dist/esm/apis/banks/accounts/BankAccountAPI.mjs +0 -84
- package/dist/esm/apis/banks/accounts/BankAccountAPI.mjs.map +0 -1
- package/dist/esm/apis/banks/bank-institutions/BankInstitutionsAPI.mjs +0 -55
- package/dist/esm/apis/banks/bank-institutions/BankInstitutionsAPI.mjs.map +0 -1
- package/dist/esm/apis/banks/bank-transactions/BankTransactionAPI.mjs +0 -54
- package/dist/esm/apis/banks/bank-transactions/BankTransactionAPI.mjs.map +0 -1
- package/dist/esm/apis/business/BusinessAPI.mjs +0 -165
- package/dist/esm/apis/business/BusinessAPI.mjs.map +0 -1
- package/dist/esm/apis/business/customers/CustomerAPI.mjs +0 -155
- package/dist/esm/apis/business/customers/CustomerAPI.mjs.map +0 -1
- package/dist/esm/apis/business/customers/CustomerBalanceTransactionsAPI.mjs +0 -68
- package/dist/esm/apis/business/customers/CustomerBalanceTransactionsAPI.mjs.map +0 -1
- package/dist/esm/apis/business/customers/CustomerPaymentMethodsAPI.mjs +0 -170
- package/dist/esm/apis/business/customers/CustomerPaymentMethodsAPI.mjs.map +0 -1
- package/dist/esm/apis/business/departments/DepartmentApi.mjs +0 -161
- package/dist/esm/apis/business/departments/DepartmentApi.mjs.map +0 -1
- package/dist/esm/apis/business/departments/employees/DepartmentEmployeesAPI.mjs +0 -132
- package/dist/esm/apis/business/departments/employees/DepartmentEmployeesAPI.mjs.map +0 -1
- package/dist/esm/apis/business/fees/FeesAPI.mjs +0 -161
- package/dist/esm/apis/business/fees/FeesAPI.mjs.map +0 -1
- package/dist/esm/apis/business/locations/LocationsAPI.mjs +0 -127
- package/dist/esm/apis/business/locations/LocationsAPI.mjs.map +0 -1
- package/dist/esm/apis/business/products/ProductsAPI.mjs +0 -177
- package/dist/esm/apis/business/products/ProductsAPI.mjs.map +0 -1
- package/dist/esm/apis/business/products/images/ProductImagesAPI.mjs +0 -188
- package/dist/esm/apis/business/products/images/ProductImagesAPI.mjs.map +0 -1
- package/dist/esm/apis/business/products/modifiers/ModifiersAPI.mjs +0 -163
- package/dist/esm/apis/business/products/modifiers/ModifiersAPI.mjs.map +0 -1
- package/dist/esm/apis/business/products/options/ProductOptionsAPI.mjs +0 -177
- package/dist/esm/apis/business/products/options/ProductOptionsAPI.mjs.map +0 -1
- package/dist/esm/apis/business/products/variants/ProductVariantsAPI.mjs +0 -179
- package/dist/esm/apis/business/products/variants/ProductVariantsAPI.mjs.map +0 -1
- package/dist/esm/apis/business/promo-codes/PromoCodesAPI.mjs +0 -133
- package/dist/esm/apis/business/promo-codes/PromoCodesAPI.mjs.map +0 -1
- package/dist/esm/apis/business/reviews/ReviewsAPI.mjs +0 -137
- package/dist/esm/apis/business/reviews/ReviewsAPI.mjs.map +0 -1
- package/dist/esm/apis/business/tables/TablesAPI.mjs +0 -70
- package/dist/esm/apis/business/tables/TablesAPI.mjs.map +0 -1
- package/dist/esm/apis/business/taxes/TaxesAPI.mjs +0 -134
- package/dist/esm/apis/business/taxes/TaxesAPI.mjs.map +0 -1
- package/dist/esm/apis/business/team/TeamMemberInvitationsAPI.mjs +0 -153
- package/dist/esm/apis/business/team/TeamMemberInvitationsAPI.mjs.map +0 -1
- package/dist/esm/apis/business/team/TeamMembersAPI.mjs +0 -88
- package/dist/esm/apis/business/team/TeamMembersAPI.mjs.map +0 -1
- package/dist/esm/apis/business/vendors/VendorsAPI.mjs +0 -230
- package/dist/esm/apis/business/vendors/VendorsAPI.mjs.map +0 -1
- package/dist/esm/apis/documents/DocumentsAPI.mjs +0 -82
- package/dist/esm/apis/documents/DocumentsAPI.mjs.map +0 -1
- package/dist/esm/apis/expenses/ExpensesAPI.mjs +0 -58
- package/dist/esm/apis/expenses/ExpensesAPI.mjs.map +0 -1
- package/dist/esm/apis/friends/FriendsAPI.mjs +0 -144
- package/dist/esm/apis/friends/FriendsAPI.mjs.map +0 -1
- package/dist/esm/apis/integrations/IntegrationsAPI.mjs +0 -52
- package/dist/esm/apis/integrations/IntegrationsAPI.mjs.map +0 -1
- package/dist/esm/apis/invoices/InvoicesAPI.mjs +0 -161
- package/dist/esm/apis/invoices/InvoicesAPI.mjs.map +0 -1
- package/dist/esm/apis/loyalty/LoyaltyProgramAPI.mjs +0 -482
- package/dist/esm/apis/loyalty/LoyaltyProgramAPI.mjs.map +0 -1
- package/dist/esm/apis/notifications/NotificationAPI.mjs +0 -98
- package/dist/esm/apis/notifications/NotificationAPI.mjs.map +0 -1
- package/dist/esm/apis/payment-methods/PaymentMethodsAPI.mjs +0 -117
- package/dist/esm/apis/payment-methods/PaymentMethodsAPI.mjs.map +0 -1
- package/dist/esm/apis/receipts/ReceiptAPI.mjs +0 -129
- package/dist/esm/apis/receipts/ReceiptAPI.mjs.map +0 -1
- package/dist/esm/apis/user/UserAPI.mjs +0 -123
- package/dist/esm/apis/user/UserAPI.mjs.map +0 -1
- package/dist/esm/apis/vendors/VendorsAPI.mjs +0 -162
- package/dist/esm/apis/vendors/VendorsAPI.mjs.map +0 -1
- package/dist/esm/context/ApiContext.mjs +0 -86
- package/dist/esm/context/ApiContext.mjs.map +0 -1
- package/dist/umd/index.js +0 -5056
- package/dist/umd/index.js.map +0 -1
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { useApiClient } from '../../context/ApiContext.mjs';
|
|
2
|
-
import { useInfiniteQuery, useQueryClient, useMutation } from '@tanstack/react-query';
|
|
3
|
-
import { SBApiKeys } from '../SBApiKeys.mjs';
|
|
4
|
-
|
|
5
|
-
const useListIntegrationsInfiniteQuery = (businessId, page = 1, pageSize = 10) => {
|
|
6
|
-
const client = useApiClient();
|
|
7
|
-
return useInfiniteQuery({
|
|
8
|
-
queryKey: [SBApiKeys.Integrations, businessId, page, pageSize],
|
|
9
|
-
queryFn: async ({
|
|
10
|
-
pageParam = 1
|
|
11
|
-
}) => {
|
|
12
|
-
const request = {
|
|
13
|
-
businessId,
|
|
14
|
-
page: pageParam,
|
|
15
|
-
pageSize
|
|
16
|
-
};
|
|
17
|
-
return await client.integrations.getAsync(request);
|
|
18
|
-
},
|
|
19
|
-
getNextPageParam: (lastPage, allPages) => {
|
|
20
|
-
// Assuming the API returns pagination info
|
|
21
|
-
if (lastPage && Array.isArray(lastPage) && lastPage.length === pageSize) {
|
|
22
|
-
return allPages.length + 1;
|
|
23
|
-
}
|
|
24
|
-
return undefined;
|
|
25
|
-
},
|
|
26
|
-
initialPageParam: 1
|
|
27
|
-
});
|
|
28
|
-
};
|
|
29
|
-
const useInstallIntegrationMutation = () => {
|
|
30
|
-
const client = useApiClient();
|
|
31
|
-
const queryClient = useQueryClient();
|
|
32
|
-
return useMutation({
|
|
33
|
-
mutationFn: async ({
|
|
34
|
-
businessId,
|
|
35
|
-
slug,
|
|
36
|
-
options,
|
|
37
|
-
config
|
|
38
|
-
}) => {
|
|
39
|
-
return await client.integrations.installAsync(businessId, slug, options, config);
|
|
40
|
-
},
|
|
41
|
-
onSuccess: (_, {
|
|
42
|
-
businessId
|
|
43
|
-
}) => {
|
|
44
|
-
queryClient.invalidateQueries({
|
|
45
|
-
queryKey: [SBApiKeys.Integrations, businessId]
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
export { useInstallIntegrationMutation, useListIntegrationsInfiniteQuery };
|
|
52
|
-
//# sourceMappingURL=IntegrationsAPI.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IntegrationsAPI.mjs","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,YAAY,EAAE;AAC7B,EAAA,OAAOC,gBAAgB,CAAC;IACvBC,QAAQ,EAAE,CAACC,SAAS,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,YAAY,EAAE;AAC7B,EAAA,MAAMmB,WAAW,GAAGC,cAAc,EAAE;AACpC,EAAA,OAAOC,WAAW,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,SAAS,CAACC,YAAY,EAAER,UAAU;AAC7C,OAAA,CAAC;AACH;AACA,GAAA,CAAC;AACH;;;;"}
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
import { useApiClient } from '../../context/ApiContext.mjs';
|
|
2
|
-
import { useQueryClient, useInfiniteQuery, useQuery, useMutation } from '@tanstack/react-query';
|
|
3
|
-
import { SBApiKeys } from '../SBApiKeys.mjs';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Hook to fetch a list of invoices using infinite query
|
|
7
|
-
* @param request - The pagination request parameters
|
|
8
|
-
* @param options - Optional request options
|
|
9
|
-
* @param config - Optional Axios request configuration
|
|
10
|
-
* @returns An infinite query result containing paginated invoices data
|
|
11
|
-
*/
|
|
12
|
-
function useListInvoicesInfiniteQuery(request = {
|
|
13
|
-
page: 0,
|
|
14
|
-
pageSize: 25
|
|
15
|
-
}, options, config) {
|
|
16
|
-
const client = useApiClient();
|
|
17
|
-
useQueryClient();
|
|
18
|
-
return useInfiniteQuery({
|
|
19
|
-
initialPageParam: request.page || 0,
|
|
20
|
-
queryKey: [SBApiKeys.Invoices, request, options],
|
|
21
|
-
queryFn: async ({
|
|
22
|
-
pageParam = 0
|
|
23
|
-
}) => {
|
|
24
|
-
return await client.invoices.listAsync({
|
|
25
|
-
...request,
|
|
26
|
-
page: pageParam
|
|
27
|
-
}, options, config);
|
|
28
|
-
},
|
|
29
|
-
getNextPageParam: lastPage => {
|
|
30
|
-
if (lastPage.pagination.currentPage < lastPage.pagination.pageCount - 1) {
|
|
31
|
-
return lastPage.pagination.currentPage + 1;
|
|
32
|
-
}
|
|
33
|
-
return undefined;
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Hook to fetch a list of invoices
|
|
39
|
-
* @param request - The pagination request parameters
|
|
40
|
-
* @param options - Optional request options
|
|
41
|
-
* @param config - Optional Axios request configuration
|
|
42
|
-
* @returns A query result containing paginated invoices data
|
|
43
|
-
*/
|
|
44
|
-
function useListInvoicesQuery(request = {
|
|
45
|
-
page: 0,
|
|
46
|
-
pageSize: 25
|
|
47
|
-
}, options, config) {
|
|
48
|
-
const client = useApiClient();
|
|
49
|
-
useQueryClient();
|
|
50
|
-
return useQuery({
|
|
51
|
-
queryKey: [SBApiKeys.Invoices, request],
|
|
52
|
-
queryFn: async () => {
|
|
53
|
-
return await client.invoices.listAsync(request, options, config);
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Hook to fetch a specific invoice by ID
|
|
59
|
-
* @param invoiceId - The ID of the invoice to retrieve
|
|
60
|
-
* @param options - Optional request options
|
|
61
|
-
* @param config - Optional Axios request configuration
|
|
62
|
-
* @returns A query result containing the invoice data
|
|
63
|
-
*/
|
|
64
|
-
function useGetInvoiceByIdQuery(invoiceId, options, config) {
|
|
65
|
-
const client = useApiClient();
|
|
66
|
-
useQueryClient();
|
|
67
|
-
return useQuery({
|
|
68
|
-
queryKey: [SBApiKeys.Invoices, invoiceId, options],
|
|
69
|
-
queryFn: async () => {
|
|
70
|
-
return await client.invoices.getByIdAsync(invoiceId, options, config);
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Hook to create a new invoice
|
|
76
|
-
* @param mutationOptions - Optional mutation configuration
|
|
77
|
-
* @returns A mutation result for creating an invoice
|
|
78
|
-
*/
|
|
79
|
-
function useCreateInvoiceMutation(mutationOptions) {
|
|
80
|
-
const client = useApiClient();
|
|
81
|
-
const queryClient = useQueryClient();
|
|
82
|
-
return useMutation({
|
|
83
|
-
mutationFn: async ({
|
|
84
|
-
data,
|
|
85
|
-
options,
|
|
86
|
-
config
|
|
87
|
-
}) => {
|
|
88
|
-
return await client.invoices.createAsync(data, options, config);
|
|
89
|
-
},
|
|
90
|
-
onSuccess: (data, variables, context) => {
|
|
91
|
-
queryClient.invalidateQueries({
|
|
92
|
-
queryKey: [SBApiKeys.Invoices]
|
|
93
|
-
});
|
|
94
|
-
if (mutationOptions?.onSuccess) {
|
|
95
|
-
mutationOptions.onSuccess(data, variables, context);
|
|
96
|
-
}
|
|
97
|
-
},
|
|
98
|
-
...mutationOptions
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Hook to update an existing invoice
|
|
103
|
-
* @param mutationOptions - Optional mutation configuration
|
|
104
|
-
* @returns A mutation result for updating an invoice
|
|
105
|
-
*/
|
|
106
|
-
function useUpdateInvoiceMutation(mutationOptions) {
|
|
107
|
-
const client = useApiClient();
|
|
108
|
-
const queryClient = useQueryClient();
|
|
109
|
-
return useMutation({
|
|
110
|
-
mutationFn: async ({
|
|
111
|
-
invoiceId,
|
|
112
|
-
data,
|
|
113
|
-
options,
|
|
114
|
-
config
|
|
115
|
-
}) => {
|
|
116
|
-
return await client.invoices.updateAsync(invoiceId, data, options, config);
|
|
117
|
-
},
|
|
118
|
-
onSuccess: (data, variables, context) => {
|
|
119
|
-
queryClient.invalidateQueries({
|
|
120
|
-
queryKey: [SBApiKeys.Invoices]
|
|
121
|
-
});
|
|
122
|
-
queryClient.invalidateQueries({
|
|
123
|
-
queryKey: [SBApiKeys.Invoices, variables.invoiceId]
|
|
124
|
-
});
|
|
125
|
-
if (mutationOptions?.onSuccess) {
|
|
126
|
-
mutationOptions.onSuccess(data, variables, context);
|
|
127
|
-
}
|
|
128
|
-
},
|
|
129
|
-
...mutationOptions
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* Hook to delete an invoice
|
|
134
|
-
* @param mutationOptions - Optional mutation configuration
|
|
135
|
-
* @returns A mutation result for deleting an invoice
|
|
136
|
-
*/
|
|
137
|
-
function useDeleteInvoiceMutation(mutationOptions) {
|
|
138
|
-
const client = useApiClient();
|
|
139
|
-
const queryClient = useQueryClient();
|
|
140
|
-
return useMutation({
|
|
141
|
-
mutationFn: async ({
|
|
142
|
-
invoiceId,
|
|
143
|
-
options,
|
|
144
|
-
config
|
|
145
|
-
}) => {
|
|
146
|
-
return await client.invoices.deleteAsync(invoiceId, options, config);
|
|
147
|
-
},
|
|
148
|
-
onSuccess: (data, variables, context) => {
|
|
149
|
-
queryClient.invalidateQueries({
|
|
150
|
-
queryKey: [SBApiKeys.Invoices]
|
|
151
|
-
});
|
|
152
|
-
if (mutationOptions?.onSuccess) {
|
|
153
|
-
mutationOptions.onSuccess(data, variables, context);
|
|
154
|
-
}
|
|
155
|
-
},
|
|
156
|
-
...mutationOptions
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
export { useCreateInvoiceMutation, useDeleteInvoiceMutation, useGetInvoiceByIdQuery, useListInvoicesInfiniteQuery, useListInvoicesQuery, useUpdateInvoiceMutation };
|
|
161
|
-
//# sourceMappingURL=InvoicesAPI.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InvoicesAPI.mjs","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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"}
|