@smartbills/react-hooks-sdk 0.0.2-alpha.12

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 (39) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +11 -0
  3. package/dist/@types/index.d.ts +59 -0
  4. package/dist/@types/index.d.ts.map +1 -0
  5. package/dist/cjs/api.cjs +22 -0
  6. package/dist/cjs/api.cjs.map +1 -0
  7. package/dist/cjs/apis/api-logs/LogsAPI.cjs +25 -0
  8. package/dist/cjs/apis/api-logs/LogsAPI.cjs.map +1 -0
  9. package/dist/cjs/apis/banks/BanksAPI.cjs +116 -0
  10. package/dist/cjs/apis/banks/BanksAPI.cjs.map +1 -0
  11. package/dist/cjs/apis/oauth/OAuthAPI.cjs +46 -0
  12. package/dist/cjs/apis/oauth/OAuthAPI.cjs.map +1 -0
  13. package/dist/cjs/apis/receipts/ReceiptAPI.cjs +84 -0
  14. package/dist/cjs/apis/receipts/ReceiptAPI.cjs.map +1 -0
  15. package/dist/cjs/apis/reviews/ReviewsAPI.cjs +119 -0
  16. package/dist/cjs/apis/reviews/ReviewsAPI.cjs.map +1 -0
  17. package/dist/cjs/components/SmartbillsSDKProvider.cjs +21 -0
  18. package/dist/cjs/components/SmartbillsSDKProvider.cjs.map +1 -0
  19. package/dist/cjs/index.cjs +44 -0
  20. package/dist/cjs/index.cjs.map +1 -0
  21. package/dist/esm/api.mjs +19 -0
  22. package/dist/esm/api.mjs.map +1 -0
  23. package/dist/esm/apis/api-logs/LogsAPI.mjs +21 -0
  24. package/dist/esm/apis/api-logs/LogsAPI.mjs.map +1 -0
  25. package/dist/esm/apis/banks/BanksAPI.mjs +104 -0
  26. package/dist/esm/apis/banks/BanksAPI.mjs.map +1 -0
  27. package/dist/esm/apis/oauth/OAuthAPI.mjs +42 -0
  28. package/dist/esm/apis/oauth/OAuthAPI.mjs.map +1 -0
  29. package/dist/esm/apis/receipts/ReceiptAPI.mjs +79 -0
  30. package/dist/esm/apis/receipts/ReceiptAPI.mjs.map +1 -0
  31. package/dist/esm/apis/reviews/ReviewsAPI.mjs +112 -0
  32. package/dist/esm/apis/reviews/ReviewsAPI.mjs.map +1 -0
  33. package/dist/esm/components/SmartbillsSDKProvider.mjs +18 -0
  34. package/dist/esm/components/SmartbillsSDKProvider.mjs.map +1 -0
  35. package/dist/esm/index.mjs +8 -0
  36. package/dist/esm/index.mjs.map +1 -0
  37. package/dist/umd/index.js +397 -0
  38. package/dist/umd/index.js.map +1 -0
  39. package/package.json +103 -0
@@ -0,0 +1,397 @@
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('@tanstack/react-query')) :
3
+ typeof define === 'function' && define.amd ? define(['exports', 'react', '@tanstack/react-query'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Smartbills = {}, global.React, global.reactQuery));
5
+ })(this, (function (exports, React, reactQuery) { 'use strict';
6
+
7
+ const ApiClientContext = /*#__PURE__*/React.createContext(undefined);
8
+ const ApiClientProvider = ({
9
+ client,
10
+ children
11
+ }) => ( /*#__PURE__*/React.createElement(ApiClientContext.Provider, {
12
+ value: client
13
+ }, children));
14
+ const useApiClient = () => {
15
+ const context = React.useContext(ApiClientContext);
16
+ if (context === undefined) {
17
+ throw new Error("useApiClient must be used within an ApiClientProvider");
18
+ }
19
+ return context;
20
+ };
21
+
22
+ const LOGS_KEY = "LOGS";
23
+ const useGetLogById = (id, options, config) => {
24
+ const client = useApiClient();
25
+ return reactQuery.useQuery({
26
+ queryKey: [LOGS_KEY, id],
27
+ queryFn: async () => await client.logs.getById(id, options, config)
28
+ });
29
+ };
30
+ const useListLogs = (request, options, config) => {
31
+ const client = useApiClient();
32
+ return reactQuery.useQuery({
33
+ queryKey: [LOGS_KEY, request],
34
+ queryFn: async () => await client.logs.get(request, options, config)
35
+ });
36
+ };
37
+
38
+ const queryClient = new reactQuery.QueryClient();
39
+ function SmartbillsSDKProvider({
40
+ client,
41
+ children
42
+ }) {
43
+ return /*#__PURE__*/React.createElement(ApiClientProvider, {
44
+ client: client
45
+ }, /*#__PURE__*/React.createElement(reactQuery.QueryClientProvider, {
46
+ client: queryClient
47
+ }, children));
48
+ }
49
+
50
+ const BANKS_KEY = "banks";
51
+ const BANK_ACCOUNTS_KEY = "bankAccounts";
52
+ const BANK_TRANSACTIONS_KEY = "bankTransactions";
53
+ const useGetBankById = id => {
54
+ const client = useApiClient();
55
+ return reactQuery.useQuery({
56
+ queryKey: [BANKS_KEY, id],
57
+ queryFn: async () => await client.banks.getById(id)
58
+ });
59
+ };
60
+ const useGetBankAccountForBank = (id, accountId) => {
61
+ const client = useApiClient();
62
+ return reactQuery.useQuery({
63
+ queryKey: [BANK_ACCOUNTS_KEY, id, accountId],
64
+ queryFn: async () => await client.banks.getBankAccount(id, accountId)
65
+ });
66
+ };
67
+ const useGetBankAccountTransactions = (id, accountId, request) => {
68
+ const client = useApiClient();
69
+ return reactQuery.useInfiniteQuery({
70
+ initialPageParam: request.page,
71
+ queryKey: [BANK_TRANSACTIONS_KEY, id, accountId],
72
+ queryFn: async ({
73
+ pageParam = 1
74
+ }) => {
75
+ return await client.banks.getBankAccountTransactions(id, accountId, {
76
+ ...request,
77
+ page: pageParam
78
+ });
79
+ },
80
+ getNextPageParam: lastPage => {
81
+ if (lastPage.metadata.currentPage === lastPage.metadata.pageCount) {
82
+ return undefined;
83
+ }
84
+ return lastPage.metadata.currentPage + 1;
85
+ }
86
+ });
87
+ };
88
+ const useGetBankLinkToken = () => {
89
+ const client = useApiClient();
90
+ return reactQuery.useQuery({
91
+ queryKey: ["bankLinkToken"],
92
+ queryFn: async () => await client.banks.getBankLinkToken()
93
+ });
94
+ };
95
+ const useGetBankLink = () => {
96
+ const client = useApiClient();
97
+ return reactQuery.useQuery({
98
+ queryKey: ["bankLink"],
99
+ queryFn: async () => await client.banks.getBankLink()
100
+ });
101
+ };
102
+ const useListBanks = request => {
103
+ const client = useApiClient();
104
+ return reactQuery.useQuery({
105
+ queryKey: [BANKS_KEY, request],
106
+ queryFn: async () => await client.banks.list(request)
107
+ });
108
+ };
109
+ const useCreateBank = () => {
110
+ const client = useApiClient();
111
+ return reactQuery.useMutation({
112
+ mutationFn: async request => await client.banks.create(request),
113
+ onSuccess: () => {
114
+ queryClient.invalidateQueries({
115
+ queryKey: [BANKS_KEY]
116
+ });
117
+ }
118
+ });
119
+ };
120
+ const useDeleteBank = id => {
121
+ const client = useApiClient();
122
+ return reactQuery.useMutation({
123
+ mutationFn: async () => await client.banks.delete(id),
124
+ onMutate: async () => {
125
+ await queryClient.cancelQueries({
126
+ queryKey: [BANKS_KEY]
127
+ });
128
+ const previousBanks = queryClient.getQueryData([BANKS_KEY]);
129
+ queryClient.setQueryData([BANKS_KEY], old => ({
130
+ ...old,
131
+ data: old.data.filter(bank => bank.id !== id)
132
+ }));
133
+ return {
134
+ previousBanks
135
+ };
136
+ },
137
+ onError: (err, _, context) => {
138
+ queryClient.setQueryData([BANKS_KEY], context?.previousBanks);
139
+ },
140
+ onSettled: () => {
141
+ queryClient.invalidateQueries({
142
+ queryKey: [BANKS_KEY]
143
+ });
144
+ }
145
+ });
146
+ };
147
+
148
+ const useGetToken = () => {
149
+ const client = useApiClient();
150
+ return reactQuery.useMutation({
151
+ mutationFn: async request => {
152
+ try {
153
+ return await client.oauth.getToken(request);
154
+ } catch (error) {
155
+ throw error;
156
+ }
157
+ }
158
+ });
159
+ };
160
+ const useGetAuthorizationCode = () => {
161
+ const client = useApiClient();
162
+ return reactQuery.useMutation({
163
+ mutationFn: async request => {
164
+ try {
165
+ return await client.oauth.getAuthorizationCode(request);
166
+ } catch (error) {
167
+ throw error;
168
+ }
169
+ }
170
+ });
171
+ };
172
+ const useRefreshToken = () => {
173
+ const client = useApiClient();
174
+ return reactQuery.useMutation({
175
+ mutationFn: async request => {
176
+ try {
177
+ return await client.oauth.refreshToken(request);
178
+ } catch (error) {
179
+ throw error;
180
+ }
181
+ }
182
+ });
183
+ };
184
+
185
+ const RECEIPTS_KEY = "receipts";
186
+ const useGetReceiptById = (id, options) => {
187
+ const client = useApiClient();
188
+ return reactQuery.useQuery({
189
+ queryKey: [RECEIPTS_KEY, id],
190
+ queryFn: async () => {
191
+ try {
192
+ return await client.receipts.getById(id, options);
193
+ } catch (exception) {
194
+ throw exception;
195
+ }
196
+ }
197
+ });
198
+ };
199
+ const useGetReceipts = (request, options) => {
200
+ const client = useApiClient();
201
+ return reactQuery.useInfiniteQuery({
202
+ queryKey: [RECEIPTS_KEY],
203
+ queryFn: async () => {
204
+ try {
205
+ return await client.receipts.get(request, options);
206
+ } catch (exception) {
207
+ throw exception;
208
+ }
209
+ },
210
+ initialPageParam: 1,
211
+ getNextPageParam: (lastPage, allPages, lastPageParam) => {
212
+ if (lastPage.metadata.currentPage === lastPage.metadata.pageCount) {
213
+ return undefined;
214
+ }
215
+ return lastPageParam + 1;
216
+ },
217
+ getPreviousPageParam: (firstPage, allPages, firstPageParam) => {
218
+ if (firstPage.metadata.currentPage <= 1) {
219
+ return undefined;
220
+ }
221
+ return firstPageParam - 1;
222
+ }
223
+ });
224
+ };
225
+ const useDeleteReceipt = (id, options) => {
226
+ const client = useApiClient();
227
+ return reactQuery.useMutation({
228
+ mutationKey: [RECEIPTS_KEY, id],
229
+ mutationFn: async () => {
230
+ try {
231
+ return await client.receipts.delete(id, options);
232
+ } catch (exception) {
233
+ throw exception;
234
+ }
235
+ },
236
+ onMutate: async receipt => {
237
+ await queryClient.cancelQueries({
238
+ queryKey: [RECEIPTS_KEY]
239
+ });
240
+ const previousTodos = queryClient.getQueryData([RECEIPTS_KEY]);
241
+ // queryClient.setQueryData([RECEIPTS_KEY], (old) => [...old, newTodo])
242
+ // Return a context object with the snapshotted value
243
+ return {
244
+ previousTodos
245
+ };
246
+ },
247
+ onError: (err, newTodo, context) => {
248
+ queryClient.setQueryData([RECEIPTS_KEY], context.previousTodos);
249
+ },
250
+ onSettled: () => {
251
+ queryClient.invalidateQueries({
252
+ queryKey: [RECEIPTS_KEY]
253
+ });
254
+ }
255
+ });
256
+ };
257
+
258
+ const REVIEWS_KEY = "REVIEWS";
259
+ const useGetReviews = request => {
260
+ const client = useApiClient();
261
+ return reactQuery.useInfiniteQuery({
262
+ initialPageParam: 1,
263
+ queryKey: [REVIEWS_KEY, request],
264
+ queryFn: async ({
265
+ pageParam = 1
266
+ }) => {
267
+ try {
268
+ return await client.reviews.get({
269
+ ...request,
270
+ page: pageParam
271
+ });
272
+ } catch (error) {
273
+ throw error;
274
+ }
275
+ },
276
+ getNextPageParam: lastPage => {
277
+ if (lastPage.metadata.currentPage === lastPage.metadata.pageCount) {
278
+ return undefined;
279
+ }
280
+ return lastPage.metadata.currentPage + 1;
281
+ }
282
+ });
283
+ };
284
+ const useGetReviewById = id => {
285
+ const client = useApiClient();
286
+ return reactQuery.useQuery({
287
+ queryKey: [REVIEWS_KEY, id],
288
+ queryFn: async () => {
289
+ try {
290
+ return await client.reviews.getById(id);
291
+ } catch (error) {
292
+ throw error;
293
+ }
294
+ }
295
+ });
296
+ };
297
+ const useCreateReview = () => {
298
+ const client = useApiClient();
299
+ return reactQuery.useMutation({
300
+ mutationKey: [REVIEWS_KEY],
301
+ mutationFn: async request => {
302
+ try {
303
+ return await client.reviews.create(request);
304
+ } catch (error) {
305
+ throw error;
306
+ }
307
+ },
308
+ onSettled: () => {
309
+ queryClient.invalidateQueries({
310
+ queryKey: [REVIEWS_KEY]
311
+ });
312
+ }
313
+ });
314
+ };
315
+ const useDeleteReview = id => {
316
+ const client = useApiClient();
317
+ return reactQuery.useMutation({
318
+ mutationKey: [REVIEWS_KEY, id],
319
+ mutationFn: async () => {
320
+ try {
321
+ return await client.reviews.delete(id);
322
+ } catch (error) {
323
+ throw error;
324
+ }
325
+ },
326
+ onMutate: async () => {
327
+ await queryClient.cancelQueries({
328
+ queryKey: [REVIEWS_KEY]
329
+ });
330
+ const previousReviews = queryClient.getQueryData([REVIEWS_KEY]);
331
+ return {
332
+ previousReviews
333
+ };
334
+ },
335
+ onError: (err, _, context) => {
336
+ queryClient.setQueryData([REVIEWS_KEY], context?.previousReviews);
337
+ },
338
+ onSettled: () => {
339
+ queryClient.invalidateQueries({
340
+ queryKey: [REVIEWS_KEY]
341
+ });
342
+ }
343
+ });
344
+ };
345
+ const useUpdateReview = () => {
346
+ const client = useApiClient();
347
+ return reactQuery.useMutation({
348
+ mutationKey: [REVIEWS_KEY],
349
+ mutationFn: async ([id, request]) => {
350
+ try {
351
+ return await client.reviews.update(id, request);
352
+ } catch (error) {
353
+ throw error;
354
+ }
355
+ },
356
+ onSettled: (data, SBApiException, [id]) => {
357
+ queryClient.invalidateQueries({
358
+ queryKey: [REVIEWS_KEY, id]
359
+ });
360
+ }
361
+ });
362
+ };
363
+
364
+ exports.ApiClientProvider = ApiClientProvider;
365
+ exports.BANKS_KEY = BANKS_KEY;
366
+ exports.BANK_ACCOUNTS_KEY = BANK_ACCOUNTS_KEY;
367
+ exports.BANK_TRANSACTIONS_KEY = BANK_TRANSACTIONS_KEY;
368
+ exports.LOGS_KEY = LOGS_KEY;
369
+ exports.RECEIPTS_KEY = RECEIPTS_KEY;
370
+ exports.REVIEWS_KEY = REVIEWS_KEY;
371
+ exports.SmartbillsSDKProvider = SmartbillsSDKProvider;
372
+ exports.queryClient = queryClient;
373
+ exports.useApiClient = useApiClient;
374
+ exports.useCreateBank = useCreateBank;
375
+ exports.useCreateReview = useCreateReview;
376
+ exports.useDeleteBank = useDeleteBank;
377
+ exports.useDeleteReceipt = useDeleteReceipt;
378
+ exports.useDeleteReview = useDeleteReview;
379
+ exports.useGetAuthorizationCode = useGetAuthorizationCode;
380
+ exports.useGetBankAccountForBank = useGetBankAccountForBank;
381
+ exports.useGetBankAccountTransactions = useGetBankAccountTransactions;
382
+ exports.useGetBankById = useGetBankById;
383
+ exports.useGetBankLink = useGetBankLink;
384
+ exports.useGetBankLinkToken = useGetBankLinkToken;
385
+ exports.useGetLogById = useGetLogById;
386
+ exports.useGetReceiptById = useGetReceiptById;
387
+ exports.useGetReceipts = useGetReceipts;
388
+ exports.useGetReviewById = useGetReviewById;
389
+ exports.useGetReviews = useGetReviews;
390
+ exports.useGetToken = useGetToken;
391
+ exports.useListBanks = useListBanks;
392
+ exports.useListLogs = useListLogs;
393
+ exports.useRefreshToken = useRefreshToken;
394
+ exports.useUpdateReview = useUpdateReview;
395
+
396
+ }));
397
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../src/api.tsx","../../src/apis/api-logs/LogsAPI.ts","../../src/components/SmartbillsSDKProvider.tsx","../../src/apis/banks/BanksAPI.tsx","../../src/apis/oauth/OAuthAPI.tsx","../../src/apis/receipts/ReceiptAPI.tsx","../../src/apis/reviews/ReviewsAPI.tsx"],"sourcesContent":["import { SBClient } from \"@smartbills/sdk\";\r\nimport React, { createContext, useContext, ReactNode } from \"react\";\r\n\r\nconst ApiClientContext = createContext<SBClient | undefined>(undefined);\r\n\r\ninterface ApiClientProviderProps {\r\n\tclient: SBClient;\r\n\tchildren: ReactNode;\r\n}\r\n\r\nexport const ApiClientProvider: React.FC<ApiClientProviderProps> = ({\r\n\tclient,\r\n\tchildren,\r\n}) => (\r\n\t<ApiClientContext.Provider value={client}>\r\n\t\t{children}\r\n\t</ApiClientContext.Provider>\r\n);\r\n\r\nexport const useApiClient = (): SBClient => {\r\n\tconst context = useContext(ApiClientContext);\r\n\tif (context === undefined) {\r\n\t\tthrow new Error(\r\n\t\t\t\"useApiClient must be used within an ApiClientProvider\",\r\n\t\t);\r\n\t}\r\n\treturn context;\r\n};\r\n","import { LogListRequest, SBRequestOptions } from \"@smartbills/sdk\";\r\nimport { useQuery } from \"@tanstack/react-query\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { AxiosRequestConfig } from \"axios\";\r\n\r\nexport const LOGS_KEY = \"LOGS\";\r\n\r\nexport const useGetLogById = (\r\n\tid: number,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [LOGS_KEY, id],\r\n\t\tqueryFn: async () => await client.logs.getById(id, options, config),\r\n\t});\r\n};\r\n\r\nexport const useListLogs = (\r\n\trequest: LogListRequest,\r\n\toptions?: SBRequestOptions,\r\n\tconfig?: AxiosRequestConfig,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery({\r\n\t\tqueryKey: [LOGS_KEY, request],\r\n\t\tqueryFn: async () => await client.logs.get(request, options, config),\r\n\t});\r\n};\r\n","import { ApiClientProvider } from \"@/api\";\r\nimport { SBClient } from \"@smartbills/sdk\";\r\nimport { QueryClient, QueryClientProvider } from \"@tanstack/react-query\";\r\nimport React, { PropsWithChildren } from \"react\";\r\n\r\nexport const queryClient = new QueryClient();\r\n\r\nexport function SmartbillsSDKProvider({\r\n\tclient,\r\n\tchildren,\r\n}: PropsWithChildren<{ client: SBClient }>) {\r\n\treturn (\r\n\t\t<ApiClientProvider client={client}>\r\n\t\t\t<QueryClientProvider client={queryClient}>\r\n\t\t\t\t{children}\r\n\t\t\t</QueryClientProvider>\r\n\t\t</ApiClientProvider>\r\n\t);\r\n}\r\n","import {\r\n\tQueryKey,\r\n\tuseInfiniteQuery,\r\n\tuseMutation,\r\n\tuseQuery,\r\n} from \"@tanstack/react-query\";\r\nimport {\r\n\tBankLinkResponse,\r\n\tBankLinkTokenResponse,\r\n\tCreateBankRequest,\r\n\tBankTransactionListRequest,\r\n\tListBanksRequest,\r\n\tPaginatedResult,\r\n\tSBApiException,\r\n\tSBBank,\r\n\tSBBankAccount,\r\n\tSBBankTransaction,\r\n} from \"@smartbills/sdk\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\n\r\nexport const BANKS_KEY = \"banks\";\r\nexport const BANK_ACCOUNTS_KEY = \"bankAccounts\";\r\nexport const BANK_TRANSACTIONS_KEY = \"bankTransactions\";\r\n\r\nexport const useGetBankById = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBank, SBApiException>({\r\n\t\tqueryKey: [BANKS_KEY, id],\r\n\t\tqueryFn: async () => await client.banks.getById(id),\r\n\t});\r\n};\r\n\r\nexport const useGetBankAccountForBank = (id: number, accountId: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBankAccount, SBApiException>({\r\n\t\tqueryKey: [BANK_ACCOUNTS_KEY, id, accountId],\r\n\t\tqueryFn: async () => await client.banks.getBankAccount(id, accountId),\r\n\t});\r\n};\r\n\r\nexport const useGetBankAccountTransactions = (\r\n\tid: number,\r\n\taccountId: number,\r\n\trequest: BankTransactionListRequest,\r\n) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery<\r\n\t\tPaginatedResult<SBBankTransaction>,\r\n\t\tSBApiException,\r\n\t\tSBBankTransaction,\r\n\t\tQueryKey,\r\n\t\tnumber\r\n\t>({\r\n\t\tinitialPageParam: request.page,\r\n\t\tqueryKey: [BANK_TRANSACTIONS_KEY, id, accountId],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\treturn await client.banks.getBankAccountTransactions(\r\n\t\t\t\tid,\r\n\t\t\t\taccountId,\r\n\t\t\t\t{\r\n\t\t\t\t\t...request,\r\n\t\t\t\t\tpage: pageParam,\r\n\t\t\t\t},\r\n\t\t\t);\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage: PaginatedResult<SBBankTransaction>) => {\r\n\t\t\tif (lastPage.metadata.currentPage === lastPage.metadata.pageCount) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.metadata.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetBankLinkToken = () => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<BankLinkTokenResponse, SBApiException>({\r\n\t\tqueryKey: [\"bankLinkToken\"],\r\n\t\tqueryFn: async () => await client.banks.getBankLinkToken(),\r\n\t});\r\n};\r\n\r\nexport const useGetBankLink = () => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<BankLinkResponse, SBApiException>({\r\n\t\tqueryKey: [\"bankLink\"],\r\n\t\tqueryFn: async () => await client.banks.getBankLink(),\r\n\t});\r\n};\r\n\r\nexport const useListBanks = (request: ListBanksRequest) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBBank[], SBApiException>({\r\n\t\tqueryKey: [BANKS_KEY, request],\r\n\t\tqueryFn: async () => await client.banks.list(request),\r\n\t});\r\n};\r\n\r\nexport const useCreateBank = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation({\r\n\t\tmutationFn: async (request: CreateBankRequest) =>\r\n\t\t\tawait client.banks.create(request),\r\n\t\tonSuccess: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [BANKS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteBank = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation({\r\n\t\tmutationFn: async () => await client.banks.delete(id),\r\n\t\tonMutate: async () => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [BANKS_KEY] });\r\n\t\t\tconst previousBanks = queryClient.getQueryData([BANKS_KEY]);\r\n\t\t\tqueryClient.setQueryData([BANKS_KEY], (old: any) => ({\r\n\t\t\t\t...old,\r\n\t\t\t\tdata: old.data.filter((bank: SBBank) => bank.id !== id),\r\n\t\t\t}));\r\n\t\t\treturn { previousBanks };\r\n\t\t},\r\n\t\tonError: (err, _, context) => {\r\n\t\t\tqueryClient.setQueryData([BANKS_KEY], context?.previousBanks);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [BANKS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n","import { useMutation } from \"@tanstack/react-query\";\r\nimport { AxiosError } from \"axios\";\r\nimport { useApiClient } from \"@/api\";\r\nimport {\r\n\tAccessTokenResponse,\r\n\tGetTokenRequest,\r\n\tAuthorizationCodeResponse,\r\n\tAuthorizeRequest,\r\n\tRefreshTokenRequest,\r\n} from \"@smartbills/sdk\";\r\n\r\nexport const useGetToken = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<AccessTokenResponse, AxiosError, GetTokenRequest>({\r\n\t\tmutationFn: async (request) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.oauth.getToken(request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error as AxiosError;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetAuthorizationCode = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<AuthorizationCodeResponse, AxiosError, AuthorizeRequest>(\r\n\t\t{\r\n\t\t\tmutationFn: async (request) => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\treturn await client.oauth.getAuthorizationCode(request);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthrow error as AxiosError;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t},\r\n\t);\r\n};\r\n\r\nexport const useRefreshToken = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation<AccessTokenResponse, AxiosError, RefreshTokenRequest>({\r\n\t\tmutationFn: async (request) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.oauth.refreshToken(request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error as AxiosError;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tReceiptListRequest,\r\n\tSBApiException,\r\n\tSBReceipt,\r\n\tSBRequestOptions,\r\n} from \"@smartbills/sdk\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\n\r\nexport const RECEIPTS_KEY: string = \"receipts\";\r\n\r\nexport const useGetReceiptById = (id: number, options?: SBRequestOptions) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBReceipt, SBApiException>({\r\n\t\tqueryKey: [RECEIPTS_KEY, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.receipts.getById(id, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetReceipts = (\r\n\trequest: ReceiptListRequest,\r\n\toptions?: SBRequestOptions,\r\n) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useInfiniteQuery({\r\n\t\tqueryKey: [RECEIPTS_KEY],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.receipts.get(request, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t\tinitialPageParam: 1,\r\n\t\tgetNextPageParam: (\r\n\t\t\tlastPage: PaginatedResult<SBReceipt>,\r\n\t\t\tallPages,\r\n\t\t\tlastPageParam,\r\n\t\t) => {\r\n\t\t\tif (lastPage.metadata.currentPage === lastPage.metadata.pageCount) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPageParam + 1;\r\n\t\t},\r\n\t\tgetPreviousPageParam: (\r\n\t\t\tfirstPage: PaginatedResult<SBReceipt>,\r\n\t\t\tallPages,\r\n\t\t\tfirstPageParam,\r\n\t\t) => {\r\n\t\t\tif (firstPage.metadata.currentPage <= 1) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn firstPageParam - 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteReceipt = (id: number, options?: SBRequestOptions) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [RECEIPTS_KEY, id],\r\n\t\tmutationFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.receipts.delete(id, options);\r\n\t\t\t} catch (exception) {\r\n\t\t\t\tthrow exception;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonMutate: async (receipt) => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [RECEIPTS_KEY] });\r\n\t\t\tconst previousTodos = queryClient.getQueryData([RECEIPTS_KEY]);\r\n\t\t\t// queryClient.setQueryData([RECEIPTS_KEY], (old) => [...old, newTodo])\r\n\r\n\t\t\t// Return a context object with the snapshotted value\r\n\t\t\treturn { previousTodos };\r\n\t\t},\r\n\t\tonError: (err, newTodo, context) => {\r\n\t\t\tqueryClient.setQueryData([RECEIPTS_KEY], context.previousTodos);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [RECEIPTS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n","import {\r\n\tPaginatedResult,\r\n\tReviewCreateRequest,\r\n\tReviewUpdateRequest,\r\n\tSBReview,\r\n\tSBApiException,\r\n} from \"@smartbills/sdk\";\r\nimport { useInfiniteQuery, useMutation, useQuery } from \"@tanstack/react-query\";\r\nimport { useApiClient } from \"@/api\";\r\nimport { queryClient } from \"@/components\";\r\n\r\nexport const REVIEWS_KEY: string = \"REVIEWS\";\r\nexport const useGetReviews = (request: any) => {\r\n\tconst client = useApiClient();\r\n\treturn useInfiniteQuery({\r\n\t\tinitialPageParam: 1,\r\n\t\tqueryKey: [REVIEWS_KEY, request],\r\n\t\tqueryFn: async ({ pageParam = 1 }) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.get({\r\n\t\t\t\t\t...request,\r\n\t\t\t\t\tpage: pageParam,\r\n\t\t\t\t});\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tgetNextPageParam: (lastPage: PaginatedResult<SBReview>) => {\r\n\t\t\tif (lastPage.metadata.currentPage === lastPage.metadata.pageCount) {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t\treturn lastPage.metadata.currentPage + 1;\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useGetReviewById = (id: number) => {\r\n\tconst client = useApiClient();\r\n\treturn useQuery<SBReview, SBApiException>({\r\n\t\tqueryKey: [REVIEWS_KEY, id],\r\n\t\tqueryFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.getById(id);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useCreateReview = () => {\r\n\tconst client = useApiClient();\r\n\treturn useMutation({\r\n\t\tmutationKey: [REVIEWS_KEY],\r\n\t\tmutationFn: async (request: ReviewCreateRequest) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.create(request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [REVIEWS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useDeleteReview = (id: number) => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [REVIEWS_KEY, id],\r\n\t\tmutationFn: async () => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.delete(id);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonMutate: async () => {\r\n\t\t\tawait queryClient.cancelQueries({ queryKey: [REVIEWS_KEY] });\r\n\t\t\tconst previousReviews = queryClient.getQueryData([REVIEWS_KEY]);\r\n\t\t\treturn { previousReviews };\r\n\t\t},\r\n\t\tonError: (err, _, context) => {\r\n\t\t\tqueryClient.setQueryData([REVIEWS_KEY], context?.previousReviews);\r\n\t\t},\r\n\t\tonSettled: () => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [REVIEWS_KEY] });\r\n\t\t},\r\n\t});\r\n};\r\n\r\nexport const useUpdateReview = () => {\r\n\tconst client = useApiClient();\r\n\r\n\treturn useMutation({\r\n\t\tmutationKey: [REVIEWS_KEY],\r\n\t\tmutationFn: async ([id, request]: [number, ReviewUpdateRequest]) => {\r\n\t\t\ttry {\r\n\t\t\t\treturn await client.reviews.update(id, request);\r\n\t\t\t} catch (error) {\r\n\t\t\t\tthrow error;\r\n\t\t\t}\r\n\t\t},\r\n\t\tonSettled: (data, SBApiException, [id]) => {\r\n\t\t\tqueryClient.invalidateQueries({ queryKey: [REVIEWS_KEY, id] });\r\n\t\t},\r\n\t});\r\n};\r\n"],"names":["ApiClientContext","createContext","undefined","ApiClientProvider","client","children","React","createElement","Provider","value","useApiClient","context","useContext","Error","LOGS_KEY","useGetLogById","id","options","config","useQuery","queryKey","queryFn","logs","getById","useListLogs","request","get","queryClient","QueryClient","SmartbillsSDKProvider","QueryClientProvider","BANKS_KEY","BANK_ACCOUNTS_KEY","BANK_TRANSACTIONS_KEY","useGetBankById","banks","useGetBankAccountForBank","accountId","getBankAccount","useGetBankAccountTransactions","useInfiniteQuery","initialPageParam","page","pageParam","getBankAccountTransactions","getNextPageParam","lastPage","metadata","currentPage","pageCount","useGetBankLinkToken","getBankLinkToken","useGetBankLink","getBankLink","useListBanks","list","useCreateBank","useMutation","mutationFn","create","onSuccess","invalidateQueries","useDeleteBank","delete","onMutate","cancelQueries","previousBanks","getQueryData","setQueryData","old","data","filter","bank","onError","err","_","onSettled","useGetToken","oauth","getToken","error","useGetAuthorizationCode","getAuthorizationCode","useRefreshToken","refreshToken","RECEIPTS_KEY","useGetReceiptById","receipts","exception","useGetReceipts","allPages","lastPageParam","getPreviousPageParam","firstPage","firstPageParam","useDeleteReceipt","mutationKey","receipt","previousTodos","newTodo","REVIEWS_KEY","useGetReviews","reviews","useGetReviewById","useCreateReview","useDeleteReview","previousReviews","useUpdateReview","update","SBApiException"],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,103 @@
1
+ {
2
+ "name": "@smartbills/react-hooks-sdk",
3
+ "version": "0.0.2-alpha.12",
4
+ "description": "React hooks SDK for the Smartbills API",
5
+ "type": "module",
6
+ "main": "dist/cjs/index.cjs",
7
+ "module": "dist/esm/index.mjs",
8
+ "umd": "dist/umd/index.js",
9
+ "types": "dist/@types/index.d.ts",
10
+ "author": "Sébastien Labine <sebastien@smartbills.ca>",
11
+ "homepage": "https://github.com/smartbills/smartbills#readme",
12
+ "license": "MIT",
13
+ "directories": {
14
+ "src": "src",
15
+ "test": "__tests__"
16
+ },
17
+ "files": [
18
+ "dist"
19
+ ],
20
+ "repository": {
21
+ "type": "git",
22
+ "url": "git+https://github.com/smartbills/smartbills.git"
23
+ },
24
+ "scripts": {
25
+ "build": "gulp smartbills:build",
26
+ "watch": "gulp smartbills:watch"
27
+ },
28
+ "bugs": {
29
+ "url": "https://github.com/smartbills/smartbills/issues"
30
+ },
31
+ "dependencies": {
32
+ "@babel/runtime": "^7.25.4",
33
+ "@smartbills/sdk": "^0.0.2-alpha.12",
34
+ "@tanstack/query-core": "^5.52.0",
35
+ "@tanstack/react-query": "^5.52.1"
36
+ },
37
+ "devDependencies": {
38
+ "@babel/core": "^7.25.2",
39
+ "@babel/plugin-proposal-class-properties": "^7.18.6",
40
+ "@babel/plugin-transform-runtime": "^7.25.4",
41
+ "@babel/preset-env": "^7.25.4",
42
+ "@babel/preset-flow": "^7.24.7",
43
+ "@babel/preset-react": "^7.24.7",
44
+ "@babel/preset-typescript": "^7.24.7",
45
+ "@reduxjs/toolkit": "2.2.7",
46
+ "@rollup/plugin-alias": "^5.1.0",
47
+ "@rollup/plugin-babel": "^6.0.4",
48
+ "@rollup/plugin-commonjs": "^26.0.1",
49
+ "@rollup/plugin-json": "^6.1.0",
50
+ "@rollup/plugin-node-resolve": "^15.2.3",
51
+ "@rollup/plugin-terser": "0.4.4",
52
+ "@rollup/plugin-typescript": "^11.1.6",
53
+ "@rollup/plugin-url": "^8.0.2",
54
+ "@smartbills/config": "^0.0.2-alpha.12",
55
+ "@smartbills/sdk": "workspace:^",
56
+ "@tanstack/eslint-plugin-query": "^5.52.0",
57
+ "@types/eslint": "^9",
58
+ "@types/lodash-es": "^4.17.12",
59
+ "@types/node": "^22.5.0",
60
+ "@types/react": "18.3.4",
61
+ "axios": "^1.7.2",
62
+ "babel-plugin-module-resolver": "^5.0.2",
63
+ "dayjs": "^1.11.12",
64
+ "del": "^7.1.0",
65
+ "eslint": "^9.9.1",
66
+ "gulp": "^5.0.0",
67
+ "immer": "^10.1.1",
68
+ "lodash": "^4.17.21",
69
+ "lodash-es": "^4.17.21",
70
+ "react": "18.2.0",
71
+ "react-redux": "9.1.2",
72
+ "redux": "^4.2.1",
73
+ "rollup": "^4.21.0",
74
+ "rollup-plugin-dts": "^6.1.1",
75
+ "rollup-plugin-filesize": "^10.0.0",
76
+ "rollup-plugin-peer-deps-external": "^2.2.4",
77
+ "ts-node": "^10.9.2",
78
+ "tslib": "^2.7.0"
79
+ },
80
+ "peerDependencies": {
81
+ "@reduxjs/toolkit": "2.2.6",
82
+ "dayjs": "*",
83
+ "lodash-es": "^4.17.21",
84
+ "react": "18.2.0",
85
+ "react-redux": "9.1.2",
86
+ "redux": "^4.2.1"
87
+ },
88
+ "browserslist": [
89
+ "last 3 chrome versions",
90
+ "last 3 firefox versions",
91
+ "last 3 opera versions",
92
+ "last 3 edge versions",
93
+ "last 3 safari versions",
94
+ "last 3 chromeandroid versions",
95
+ "last 1 firefoxandroid versions",
96
+ "ios >= 13.4"
97
+ ],
98
+ "gitHead": "af812002ebd423e315892d63979c0c8f9250938b",
99
+ "publishConfig": {
100
+ "access": "public",
101
+ "registry": "http://registry.npmjs.org/"
102
+ }
103
+ }