bkper-js 1.47.3 → 2.0.0

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/CHANGELOG.md ADDED
@@ -0,0 +1,346 @@
1
+ ### **Changelog**
2
+
3
+ See what's new and what has changed in bkper-js
4
+
5
+ 2025
6
+ ----
7
+
8
+ **July 2025**
9
+ * **BREAKING CHANGE:** Refactored `Bkper` class from static methods to constructor-based pattern
10
+ * **BREAKING CHANGE:** Removed deprecated methods: `Transaction.remove()`, `Transaction.restore()`, `Account.getBalance()`, `Account.getBalanceRaw()`
11
+ * **MIGRATION:** Replace `Bkper.setConfig(config); Bkper.getBook(id)` with `const bkper = new Bkper(config); bkper.getBook(id)`
12
+ * **MIGRATION:** Use `transaction.trash()` and `transaction.untrash()` instead of `remove()` and `restore()`
13
+ * **MIGRATION:** Use `Book.getBalancesReport()` instead of `Account.getBalance()` methods
14
+
15
+ **June 2025**
16
+ * Added [Book.copy](/docs/bkper-js/#book_copy)
17
+ * Added [Transaction.getUpdatedAt](/docs/bkper-js/#transaction_getupdatedat)
18
+ * Added [Transaction.getUpdatedAtFormatted](/docs/bkper-js/#transaction_getupdatedatformatted)
19
+
20
+ **May 2025**
21
+ * Added [Group.isLocked](/docs/bkper-js/#group_islocked)
22
+ * Added [Group.setLocked](/docs/bkper-js/#group_setlocked)
23
+ * Added [Message.stream](/docs/bkper-js/#message_stream)
24
+ * Added [Query](/docs/bkper-js/#query)
25
+ * Added [Query.json](/docs/bkper-js/#query_getbook)
26
+ * Added [Query.getId](/docs/bkper-js/#query_getid)
27
+ * Added [Query.getTitle](/docs/bkper-js/#query_gettitle)
28
+ * Added [Query.setTitle](/docs/bkper-js/#query_settitle)
29
+ * Added [Query.getQuery](/docs/bkper-js/#query_getquery)
30
+ * Added [Query.setQuery](/docs/bkper-js/#query_setquery)
31
+ * Added [Query.create](/docs/bkper-js/#query_create)
32
+ * Added [Query.update](/docs/bkper-js/#query_update)
33
+ * Added [Query.remove](/docs/bkper-js/#query_remove)
34
+ * Added [Book.getSavedQueries](/docs/bkper-js/#book_getsavedqueries)
35
+ * Added [Book.batchPostTransactions](/docs/bkper-js/#book_batchposttransactions)
36
+ * Added [Book.batchCheckTransactions](/docs/bkper-js/#book_batchchecktransactions)
37
+ * Added [Book.batchUncheckTransactions](/docs/bkper-js/#book_batchunchecktransactions)
38
+ * Added [Book.batchUpdateTransactions](/docs/bkper-js/#book_batchupdatetransactions)
39
+ * Added [Book.batchUntrashTransactions](/docs/bkper-js/#book_batchuntrashtransactions)
40
+
41
+ **April 2025**
42
+ * Added [Book.batchCreateAccounts](/docs/bkper-js/#book_batchcreateaccounts)
43
+ * Added [Book.batchCreateGroups](/docs/bkper-js/#book_batchcreategroups)
44
+
45
+ **March 2025**
46
+ * Added [Agent.getLogoUrlDark](/docs/bkper-js/#agent_getlogourldark)
47
+ * Added [App.getFilePatterns](/docs/bkper-js/#app_getfilepatterns)
48
+ * Added [App.getLogoUrlDark](/docs/bkper-js/#app_getlogourldark)
49
+ * Added [App.getOwnerLogoUrl](/docs/bkper-js/#app_getownerlogourl)
50
+ * Added [App.getOwnerName](/docs/bkper-js/#app_getownername)
51
+ * Added [App.isConversational](/docs/bkper-js/#app_isconversational)
52
+ * Added [App.isPublished](/docs/bkper-js/#app_ispublished)
53
+ * Added [App.setConversationUrlDev](/docs/bkper-js/#app_setconversationurldev)
54
+ * Added [Bkper.getConversations](/docs/bkper-js/#app_getconversations)
55
+ * Added [Conversation](/docs/bkper-js/#conversation)
56
+ * Added [Conversation.create](/docs/bkper-js/#conversation_create)
57
+ * Added [Conversation.getAgent](/docs/bkper-js/#conversation_getagent)
58
+ * Added [Conversation.getCreatedAt](/docs/bkper-js/#conversation_getcreatedat)
59
+ * Added [Conversation.getId](/docs/bkper-js/#conversation_getid)
60
+ * Added [Conversation.getMessages](/docs/bkper-js/#conversation_getmessages)
61
+ * Added [Conversation.getTitle](/docs/bkper-js/#conversation_gettitle)
62
+ * Added [Conversation.getUpdatedAt](/docs/bkper-js/#conversation_getupdatedat)
63
+ * Added [Conversation.json](/docs/bkper-js/#conversation_json)
64
+ * Added [Message](/docs/bkper-js/#message)
65
+ * Added [Message.create](/docs/bkper-js/#message_create)
66
+ * Added [Message.deleteProperty](/docs/bkper-js/#message_deleteproperty)
67
+ * Added [Message.getAgent](/docs/bkper-js/#message_getagent)
68
+ * Added [Message.getCreatedAt](/docs/bkper-js/#message_getcreatedat)
69
+ * Added [Message.getContent](/docs/bkper-js/#message_getcontent)
70
+ * Added [Message.getConversation](/docs/bkper-js/#message_getconversation)
71
+ * Added [Message.getId](/docs/bkper-js/#message_getid)
72
+ * Added [Message.getProperties](/docs/bkper-js/#message_getproperties)
73
+ * Added [Message.getProperty](/docs/bkper-js/#message_getproperty)
74
+ * Added [Message.getUser](/docs/bkper-js/#message_getuser)
75
+ * Added [Message.setContent](/docs/bkper-js/#message_setcontent)
76
+ * Added [Message.setProperties](/docs/bkper-js/#message_setproperties)
77
+ * Added [Message.setProperty](/docs/bkper-js/#message_setproperty)
78
+ * Added [Message.json](/docs/bkper-js/#message_json)
79
+ * Added [Transaction.getAgentName](/docs/bkper-js/#transaction_getagentname)
80
+ * Added [Transaction.getAgentLogoUrl](/docs/bkper-js/#transaction_getagentlogourl)
81
+ * Added [Transaction.getAgentLogoUrlDark](/docs/bkper-js/#transaction_getagentlogourldark)
82
+
83
+ **February 2025**
84
+ * Added [EventType](/docs/bkper-js/#eventtype) enum
85
+ * Added [BotResponseType](/docs/bkper-js/#botresponsetype) enum
86
+ * Added [Agent](/docs/bkper-js/#agent)
87
+ * Added [Agent.getId](/docs/bkper-js/#agent_getid)
88
+ * Added [Agent.getLogoUrl](/docs/bkper-js/#agent_getlogourl)
89
+ * Added [Agent.getName](/docs/bkper-js/#agent_getname)
90
+ * Added [Agent.json](/docs/bkper-js/#agent_json)
91
+ * Added [App.getDescription](/docs/bkper-js/#app_getdescription)
92
+ * Added [App.getEvents](/docs/bkper-js/#app_getevents)
93
+ * Added [App.getLogoUrl](/docs/bkper-js/#app_getlogourl)
94
+ * Added [App.getName](/docs/bkper-js/#app_getname)
95
+ * Added [App.hasEvents](/docs/bkper-js/#app_hasevents)
96
+ * Added [Book.batchReplayEvents](/docs/bkper-js/#book_batchreplayevents)
97
+ * Added [Book.getApps](/docs/bkper-js/#book_getapps)
98
+ * Added [BotResponse](/docs/bkper-js/#botresponse)
99
+ * Added [BotResponse.getAgentId](/docs/bkper-js/#botresponse_getagentid)
100
+ * Added [BotResponse.getCreatedAt](/docs/bkper-js/#botresponse_getcreatedat)
101
+ * Added [BotResponse.getEvent](/docs/bkper-js/#botresponse_getevent)
102
+ * Added [BotResponse.getMessage](/docs/bkper-js/#botresponse_getmessage)
103
+ * Added [BotResponse.getType](/docs/bkper-js/#botresponse_gettype)
104
+ * Added [BotResponse.remove](/docs/bkper-js/#botresponse_remove)
105
+ * Added [BotResponse.replay](/docs/bkper-js/#botresponse_replay)
106
+ * Added [Event.getAgent](/docs/bkper-js/#event_getagent)
107
+ * Added [Event.getBook](/docs/bkper-js/#event_getbook)
108
+ * Added [Event.getBotResponses](/docs/bkper-js/#event_getbotresponses)
109
+ * Added [Event.getCreatedAt](/docs/bkper-js/#event_getcreatedat)
110
+ * Added [Event.getId](/docs/bkper-js/#event_getid)
111
+ * Added [Event.getType](/docs/bkper-js/#event_gettype)
112
+ * Added [Event.getUser](/docs/bkper-js/#event_getuser)
113
+ * Added [Event.hasErrorResponse](/docs/bkper-js/#event_haserrorresponse)
114
+ * Added [User.getAvatarUrl](/docs/bkper-js/#user_getavatarurl)
115
+
116
+ **January 2025**
117
+ * Added [BalancesContainer](/docs/bkper-js/#balancescontainer)
118
+ * Added [BalancesContainer.getName](/docs/bkper-js/#balancescontainer_getname)
119
+ * Added [BalancesContainer.getNormalizedName](/docs/bkper-js/#balancescontainer_getnormalizedname)
120
+ * Added [BalancesContainer.getGroup](/docs/bkper-js/#balancescontainer_getgroup)
121
+ * Added [BalancesContainer.getAccount](/docs/bkper-js/#balancescontainer_getaccount)
122
+ * Added [BalancesContainer.getParent](/docs/bkper-js/#balancescontainer_getparent)
123
+ * Added [BalancesContainer.getDepth](/docs/bkper-js/#balancescontainer_getdepth)
124
+ * Added [BalancesContainer.isCredit](/docs/bkper-js/#balancescontainer_iscredit)
125
+ * Added [BalancesContainer.isPermanent](/docs/bkper-js/#balancescontainer_ispermanent)
126
+ * Added [BalancesContainer.isFromAccount](/docs/bkper-js/#balancescontainer_isfromaccount)
127
+ * Added [BalancesContainer.isFromGroup](/docs/bkper-js/#balancescontainer_isfromgroup)
128
+ * Added [BalancesContainer.hasGroupBalances](/docs/bkper-js/#balancescontainer_hasgroupbalances)
129
+ * Added [BalancesContainer.getCumulativeBalance](/docs/bkper-js/#balancescontainer_getcumulativebalance)
130
+ * Added [BalancesContainer.getCumulativeBalanceRaw](/docs/bkper-js/#balancescontainer_getcumulativebalanceraw)
131
+ * Added [BalancesContainer.getCumulativeBalanceText](/docs/bkper-js/#balancescontainer_getcumulativebalancetext)
132
+ * Added [BalancesContainer.getCumulativeBalanceRawText](/docs/bkper-js/#balancescontainer_getcumulativebalancerawtext)
133
+ * Added [BalancesContainer.getPeriodBalance](/docs/bkper-js/#balancescontainer_getperiodbalance)
134
+ * Added [BalancesContainer.getPeriodBalanceRaw](/docs/bkper-js/#balancescontainer_getperiodbalanceraw)
135
+ * Added [BalancesContainer.getPeriodBalanceText](/docs/bkper-js/#balancescontainer_getperiodbalancetext)
136
+ * Added [BalancesContainer.getPeriodBalanceRawText](/docs/bkper-js/#balancescontainer_getperiodbalancerawtext)
137
+ * Added [BalancesContainer.getBalancesContainers](/docs/bkper-js/#balancescontainer_getbalancescontainers)
138
+ * Added [BalancesContainer.getBalancesContainer](/docs/bkper-js/#balancescontainer_getbalancescontainer)
139
+ * Added [BalancesReport](/docs/bkper-js/#balancesreport)
140
+ * Added [BalancesReport.getBook](/docs/bkper-js/#balancesreport_getbook)
141
+ * Added [BalancesReport.getPeriod](/docs/bkper-js/#balancesreport_getperiod)
142
+ * Added [BalancesReport.getBalancesContainers](/docs/bkper-js/#balancesreport_getbalancescontainers)
143
+ * Added [BalancesReport.getBalancesContainer](/docs/bkper-js/#balancesreport_getbalancescontainer)
144
+ * Added [Book.getAutoPost](/docs/bkper-js/#book_getautopost)
145
+ * Added [Book.setAutoPost](/docs/bkper-js/#book_setautopost)
146
+ * Added [Group.isCredit](/docs/bkper-js/#group_iscredit)
147
+ * Added [Group.isMixed](/docs/bkper-js/#group_ismixed)
148
+ * Added [User.getPlan](/docs/bkper-js/#user_getplan)
149
+ * Added [User.hasBillingEnabled](/docs/bkper-js/#user_hasbillingenabled)
150
+
151
+
152
+ 2024
153
+ ----
154
+
155
+ **December 2024**
156
+ * Added [Book.listEvents](/docs/bkper-js/#book_listevents)
157
+ * Added [EventList](/docs/bkper-js/#eventlist)
158
+ * Added [EventList.getCursor](/docs/bkper-js/#eventlist_getcursor)
159
+ * Added [EventList.getFirst](/docs/bkper-js/#eventlist_getfirst)
160
+ * Added [EventList.getItems](/docs/bkper-js/#eventlist_getitems)
161
+ * Added [EventList.size](/docs/bkper-js/#eventlist_size)
162
+ * Added [Group.isPermanent](/docs/bkper-js/#group_ispermanent)
163
+ * Added [Group.hasParent](/docs/bkper-js/#group_hasparent)
164
+ * Added [Group.getChildren](/docs/bkper-js/#group_getchildren)
165
+ * Added [Group.getDescendants](/docs/bkper-js/#group_getdescendants)
166
+ * Added [Group.getDescendantTreeIds](/docs/bkper-js/#group_getdescendanttreeids)
167
+ * Added [Group.hasChildren](/docs/bkper-js/#group_haschildren)
168
+ * Added [Group.isLeaf](/docs/bkper-js/#group_isleaf)
169
+ * Added [Group.isRoot](/docs/bkper-js/#group_isroot)
170
+ * Added [Group.getDepth](/docs/bkper-js/#group_getdepth)
171
+ * Added [Group.getRoot](/docs/bkper-js/#group_getroot)
172
+ * Added [Group.getRootName](/docs/bkper-js/#group_getrootname)
173
+ * Added [Group.hasAccounts](/docs/bkper-js/#group_hasaccounts)
174
+
175
+ **November 2024**
176
+ * Added [Transaction.trash](/docs/bkper-js/#transaction_trash)
177
+ * Added [Transaction.untrash](/docs/bkper-js/#transaction_untrash)
178
+ * Added [Transaction.getAmountFormatted](/docs/bkper-js/#transaction_getamountformatted)
179
+ * Added [Transaction.isLocked](/docs/bkper-js/#transaction_islocked)
180
+ * Removed ```Transaction.remove``` from [Transaction](/docs/bkper-js/#transaction)
181
+ * Removed ```Transaction.restore``` from [Transaction](/docs/bkper-js/#transaction)
182
+
183
+ **October 2024**
184
+ * Exposed ```payload``` property on all objects from [bkper-js](/docs/bkper-js) interface
185
+ * Added [Collection.addBooks](/docs/bkper-js/#collection_addbooks)
186
+ * Added [Collection.create](/docs/bkper-js/#collection_create)
187
+ * Added [Collection.getOwnerUsername](/docs/bkper-js/#collection_getownerusername)
188
+ * Added [Collection.getPermission](/docs/bkper-js/#collection_getpermission)
189
+ * Added [Collection.getUpdatedAt](/docs/bkper-js/#collection_getupdatedat)
190
+ * Added [Collection.remove](/docs/bkper-js/#collection_remove)
191
+ * Added [Collection.removeBooks](/docs/bkper-js/#collection_removebooks)
192
+ * Added [Collection.setName](/docs/bkper-js/#collection_setname)
193
+ * Added [Collection.update](/docs/bkper-js/#collection_update)
194
+ * Added [Bkper.getBillingPortalUrl](/docs/bkper-js/#bkper_getbillingportalurl)
195
+ * Added [Connection.getDateAddedMs](/docs/bkper-js/#connection_getdateaddedms)
196
+ * Added [Connection.getLogo](/docs/bkper-js/#connection_getlogo)
197
+ * Added [Connection.remove](/docs/bkper-js/#connection_remove)
198
+ * Added [Integration.getAddedBy](/docs/bkper-js/#integration_getaddedby)
199
+ * Added [Integration.getAgentId](/docs/bkper-js/#integration_getagentid)
200
+ * Added [Integration.getDateAddedMs](/docs/bkper-js/#integration_getdateaddedms)
201
+ * Added [Integration.getLastUpdateMs](/docs/bkper-js/#integration_getlastupdatems)
202
+ * Added [Integration.getLogo](/docs/bkper-js/#integration_getlogo)
203
+ * Added [Integration.remove](/docs/bkper-js/#integration_remove)
204
+ * Added [TransactionList](/docs/bkper-js/#transactionlist) returned from [Book.listTransactions](/docs/bkper-js/#book_listtransactions)
205
+ * Removed ```TransactionIterator``` from [Transaction](/docs/bkper-js/#transaction)
206
+ * Removed ```newTransaction``` from [Book](/docs/bkper-js/#book). Use [Transaction](/docs/bkper-js/#transaction) constructor instead
207
+ * Removed ```newAccount``` from [Book](/docs/bkper-js/#book). Use [Account](/docs/bkper-js/#account) constructor instead
208
+ * Removed ```newGroup``` from [Book](/docs/bkper-js/#book). Use [Group](/docs/bkper-js/#group) constructor instead
209
+ * Removed ```newFile``` from [Book](/docs/bkper-js/#book). Use [File](/docs/bkper-js/#file) constructor instead
210
+
211
+ **September 2024**
212
+ * Extracted [bkper-js](https://github.com/bkper/bkper-js) from [bkper](https://github.com/bkper/bkper-node) as a standalone library.
213
+ * Added [Config.requestRetryHandler](/docs/bkper-js/#config_requestretryhandler)
214
+ * Added [Visibility](/docs/bkper-js/#visibility) enum
215
+ * Added [App.json](/docs/bkper-js/#app_json)
216
+ * Added [Bkper.getApps](/docs/bkper-js/#bkper_getapps)
217
+ * Added [Bkper.getBooks](/docs/bkper-js/#bkper_getbooks)
218
+ * Added [Bkper.getTemplates](/docs/bkper-js/#bkper_gettemplates)
219
+ * Added [Bkper.newBook](/docs/bkper-js/#bkper_newbook)
220
+ * Added [Book.getTotalTransactions](/docs/bkper-js/#book_gettotaltransactions)
221
+ * Added [Book.getTotalTransactionsCurrentMonth](/docs/bkper-js/#book_gettotaltransactionscurrentmonth)
222
+ * Added [Book.getTotalTransactionsCurrentYear](/docs/bkper-js/#book_gettotaltransactionscurrentyear)
223
+ * Added [Book.getVisibility](/docs/bkper-js/#book_getvisibility)
224
+ * Added [Book.create](/docs/bkper-js/#book_create)
225
+ * Added [Collection.json](/docs/bkper-js/#collection_json)
226
+ * Added [Template](/docs/bkper-js/#template)
227
+ * Added [Template.getBookId](/docs/bkper-js/#template_getbookid)
228
+ * Added [Template.getBookLink](/docs/bkper-js/#template_getbooklink)
229
+ * Added [Template.getCategory](/docs/bkper-js/#template_getcategory)
230
+ * Added [Template.getDescription](/docs/bkper-js/#template_getdescription)
231
+ * Added [Template.getImageUrl](/docs/bkper-js/#template_getimageurl)
232
+ * Added [Template.getName](/docs/bkper-js/#template_getname)
233
+ * Added [Template.getSheetsLink](/docs/bkper-js/#template_getsheetslink)
234
+ * Added [Template.getTimesUsed](/docs/bkper-js/#template_gettimesused)
235
+ * Added [Template.json](/docs/bkper-js/#template_json)
236
+ * Added [User.getEmail](/docs/bkper-js/#user_getemail)
237
+ * Added [User.getHostedDomain](/docs/bkper-js/#user_gethosteddomain)
238
+ * Added [User.isFree](/docs/bkper-js/#user_isfree)
239
+ * Added [User.hasStartedTrial](/docs/bkper-js/#user_hasstartedtrial)
240
+ * Added [User.getDaysLeftInTrial](/docs/bkper-js/#user_getdaysleftintrial)
241
+ * Added [User.hasUsedConnections](/docs/bkper-js/#user_hasusedconnections)
242
+ * Added [User.json](/docs/bkper-js/#user_json)
243
+
244
+ **January 2024**
245
+ * Added [Transaction.setChecked](/docs/bkper-js/#transaction_setchecked)
246
+
247
+
248
+ 2023
249
+ ----
250
+
251
+ **June 2023**
252
+ * Added [Bkper.getUser](/docs/bkper-js/#bkper_getuser)
253
+ * Added [Bkper.setConfig](/docs/bkper-js/#bkper_setconfig)
254
+ * Added [Book.batchTrashTransactions](/docs/bkper-js/#book_batchtrashtransactions)
255
+ * Added [Book.createIntegration](/docs/bkper-js/#book_createintegration)
256
+ * Added [Book.getIntegrations](/docs/bkper-js/#book_getintegrations)
257
+ * Added [Book.updateIntegration](/docs/bkper-js/#book_updateintegration)
258
+ * Added [Config](/docs/bkper-js/#config) interface
259
+ * Added [Connection](/docs/bkper-js/#connection)
260
+ * Added [Connection.clearTokenProperties](/docs/bkper-js/#connection_cleartokenproperties)
261
+ * Added [Connection.create](/docs/bkper-js/#connection_create)
262
+ * Added [Connection.deleteProperty](/docs/bkper-js/#connection_deleteproperty)
263
+ * Added [Connection.getAgentId](/docs/bkper-js/#connection_getagentid)
264
+ * Added [Connection.getEmail](/docs/bkper-js/#connection_getemail)
265
+ * Added [Connection.getId](/docs/bkper-js/#connection_getid)
266
+ * Added [Connection.getIntegrations](/docs/bkper-js/#connection_getintegrations)
267
+ * Added [Connection.getName](/docs/bkper-js/#connection_getname)
268
+ * Added [Connection.getProperties](/docs/bkper-js/#connection_getproperties)
269
+ * Added [Connection.getProperty](/docs/bkper-js/#connection_getproperty)
270
+ * Added [Connection.getPropertyKeys](/docs/bkper-js/#connection_getpropertykeys)
271
+ * Added [Connection.getType](/docs/bkper-js/#connection_gettype)
272
+ * Added [Connection.getUUID](/docs/bkper-js/#connection_getuuid)
273
+ * Added [Connection.json](/docs/bkper-js/#connection_json)
274
+ * Added [Connection.setAgentId](/docs/bkper-js/#connection_setagentid)
275
+ * Added [Connection.setName](/docs/bkper-js/#connection_setname)
276
+ * Added [Connection.setProperties](/docs/bkper-js/#connection_setproperties)
277
+ * Added [Connection.setProperty](/docs/bkper-js/#connection_setproperty)
278
+ * Added [Connection.setType](/docs/bkper-js/#connection_settype)
279
+ * Added [Connection.setUUID](/docs/bkper-js/#connection_setuuid)
280
+ * Added [Integration](/docs/bkper-js/#integration)
281
+ * Added [Integration.deleteProperty](/docs/bkper-js/#integration_deleteproperty)
282
+ * Added [Integration.getBookId](/docs/bkper-js/#integration_getbookid)
283
+ * Added [Integration.getId](/docs/bkper-js/#integration_getid)
284
+ * Added [Integration.getName](/docs/bkper-js/#integration_getname)
285
+ * Added [Integration.getProperties](/docs/bkper-js/#integration_getproperties)
286
+ * Added [Integration.getProperty](/docs/bkper-js/#integration_getproperty)
287
+ * Added [Integration.json](/docs/bkper-js/#integration_json)
288
+ * Added [Integration.setProperties](/docs/bkper-js/#integration_setproperties)
289
+ * Added [Integration.setProperty](/docs/bkper-js/#integration_setproperty)
290
+ * Added [User](/docs/bkper-js/#user)
291
+ * Added [User.getConnection](/docs/bkper-js/#user_getconnection)
292
+ * Added [User.getConnections](/docs/bkper-js/#user_getconnections)
293
+ * Added [User.getFullName](/docs/bkper-js/#user_getfullname)
294
+ * Added [User.getId](/docs/bkper-js/#user_getid)
295
+ * Added [User.getName](/docs/bkper-js/#user_getname)
296
+ * Deprecated [Bkper.setApiKey](/docs/bkper-js/#bkper_setapikey)
297
+ * Deprecated [Bkper.setOAuthTokenProvider](/docs/bkper-js/#bkper_setoauthtokenprovider)
298
+
299
+
300
+ 2022
301
+ ----
302
+
303
+ **September 2022**
304
+ * Deprecated [Account.getBalance](/docs/bkper-js/#account_getbalance)
305
+
306
+ **May 2022**
307
+ * Added [Book.parseDate](/docs/bkper-js/#book_parsedate)
308
+
309
+ **April 2022**
310
+ * Added [Book.getClosingDate](/docs/bkper-js/#book_getclosingdate)
311
+ * Added [Book.setClosingDate](/docs/bkper-js/#book_setclosingdate)
312
+
313
+
314
+ 2021
315
+ ----
316
+
317
+ **October 2021**
318
+ * Added [Book.getGroupsByAccount](/docs/bkper-js/#book_getgroupsbyaccount)
319
+
320
+ **May 2021**
321
+ * Added [Group.getParent](/docs/bkper-js/#group_getparent)
322
+ * Added [Group.setParent](/docs/bkper-js/#group_setparent)
323
+ * **BREAKING CHANGE:** Removed **AccountsDataTableBuilder**
324
+ * **BREAKING CHANGE:** Removed **BalancesDataTableBuilder**
325
+ * **BREAKING CHANGE:** Removed **TransactionsDataTableBuilder**
326
+ * **BREAKING CHANGE:** Removed **BalancesReport**
327
+ * **BREAKING CHANGE:** Removed **Balance**
328
+ * **BREAKING CHANGE:** Removed **BalancesContainer**
329
+
330
+ **April 2021**
331
+ * Added [Book.getLockDate](/docs/bkper-js/#book_getlockdate)
332
+ * Added [Book.setLockDate](/docs/bkper-js/#book_setlockdate)
333
+
334
+ **March 2021**
335
+ * **BREAKING CHANGE:** : Removed **BalanceCheckedType**
336
+
337
+ **February 2021**
338
+ * Added [Book.getPeriod](/docs/bkper-js/#book_getperiod)
339
+ * Added [Book.setPeriod](/docs/bkper-js/#book_setperiod)
340
+ * Added [Book.getPeriodStartMonth](/docs/bkper-js/#book_getperiodstartmonth)
341
+ * Added [Book.setPeriodStartMonth](/docs/bkper-js/#book_setperiodstartmonth)
342
+ * Added [Book.getPageSize](/docs/bkper-js/#book_getpagesize)
343
+ * Added [Book.setPageSize](/docs/bkper-js/#book_setpagesize)
344
+
345
+ **January 2021**
346
+ * [bkper](https://www.npmjs.com/package/bkper) client library published
package/README.md CHANGED
@@ -27,4 +27,28 @@ or
27
27
  bun add bkper-js
28
28
  ```
29
29
 
30
+ ## Usage
31
+
32
+ ```typescript
33
+ import { Bkper } from 'bkper-js';
34
+
35
+ // Create Bkper instance with configuration
36
+ const bkper = new Bkper({
37
+ apiKeyProvider: () => process.env.BKPER_API_KEY,
38
+ oauthTokenProvider: () => process.env.BKPER_OAUTH_TOKEN
39
+ });
40
+
41
+ // Get a book and work with it
42
+ const book = await bkper.getBook('your-book-id');
43
+ console.log(`Book: ${book.getName()}`);
44
+
45
+ // List all books
46
+ const books = await bkper.getBooks();
47
+ console.log(`You have ${books.length} books`);
48
+
49
+ // Get current user
50
+ const user = await bkper.getUser();
51
+ console.log(`Logged in as: ${user.getName()}`);
52
+ ```
53
+
30
54
 
package/lib/index.d.ts CHANGED
@@ -108,22 +108,6 @@ export declare class Account {
108
108
  * @returns This Account, for chaining
109
109
  */
110
110
  deleteProperty(key: string): Account;
111
- /**
112
- * Gets the balance based on credit nature of this Account.
113
- *
114
- * @deprecated Use `Book.getBalancesReport` instead.
115
- *
116
- * @returns The balance of this Account.
117
- */
118
- getBalance(): Amount;
119
- /**
120
- * Gets the raw balance, no matter credit nature of this Account.
121
- *
122
- * @deprecated Use `Book.getBalancesReport` instead.
123
- *
124
- * @returns The balance of this Account.
125
- */
126
- getBalanceRaw(): Amount;
127
111
  /**
128
112
  * Tells if this Account is archived.
129
113
  *
@@ -846,7 +830,7 @@ export declare class BalancesReport {
846
830
  * Example:
847
831
  *
848
832
  * ```javascript
849
- * Bkper.setConfig({
833
+ * Bkper.get().setConfig({
850
834
  * apiKeyProvider: () => process.env.BKPER_API_KEY,
851
835
  * oauthTokenProvider: () => process.env.BKPER_OAUTH_TOKEN
852
836
  * })
@@ -857,6 +841,12 @@ export declare class BalancesReport {
857
841
  * @public
858
842
  */
859
843
  export declare class Bkper {
844
+ /**
845
+ * Creates a new Bkper instance with the specified API configuration.
846
+ *
847
+ * @param config - The Config object
848
+ */
849
+ constructor(config: Config);
860
850
  /**
861
851
  * Gets the [[Book]] with the specified bookId from url param.
862
852
  *
@@ -865,44 +855,44 @@ export declare class Bkper {
865
855
  *
866
856
  * @returns The retrieved Book
867
857
  */
868
- static getBook(id: string, includeAccounts?: boolean): Promise<Book>;
858
+ getBook(id: string, includeAccounts?: boolean): Promise<Book>;
869
859
  /**
870
860
  * Gets all [[Books]] the user has access to.
871
861
  *
872
862
  * @param query - Optional search term to filter books
873
863
  * @returns The retrieved list of Books
874
864
  */
875
- static getBooks(query?: string): Promise<Book[]>;
865
+ getBooks(query?: string): Promise<Book[]>;
876
866
  /**
877
867
  * Gets all [[Collections]] the user has access to.
878
868
  *
879
869
  * @returns The retrieved list of Collections
880
870
  */
881
- static getCollections(): Promise<Collection[]>;
871
+ getCollections(): Promise<Collection[]>;
882
872
  /**
883
873
  * Gets all [[Apps]] available for the user.
884
874
  *
885
875
  * @returns The retrieved list of Apps
886
876
  */
887
- static getApps(): Promise<App[]>;
877
+ getApps(): Promise<App[]>;
888
878
  /**
889
879
  * Gets all [[Conversations]] available for the user.
890
880
  *
891
881
  * @returns The retrieved list of Conversations
892
882
  */
893
- static getConversations(): Promise<Conversation[]>;
883
+ getConversations(): Promise<Conversation[]>;
894
884
  /**
895
885
  * Gets all [[Templates]] available for the user.
896
886
  *
897
887
  * @returns The retrieved list of Templates
898
888
  */
899
- static getTemplates(): Promise<Template[]>;
889
+ getTemplates(): Promise<Template[]>;
900
890
  /**
901
891
  * Gets the current logged [[User]].
902
892
  *
903
893
  * @returns The retrieved User
904
894
  */
905
- static getUser(): Promise<User>;
895
+ getUser(): Promise<User>;
906
896
  /**
907
897
  * Gets the URL to redirect the User to the billing portal.
908
898
  *
@@ -910,29 +900,7 @@ export declare class Bkper {
910
900
  *
911
901
  * @returns The URL to redirect the User to the billing portal
912
902
  */
913
- static getBillingPortalUrl(returnUrl: string): Promise<string | undefined>;
914
- /**
915
- * Sets the API [[Config]] object.
916
- *
917
- * @param config - The Config object
918
- */
919
- static setConfig(config: Config): void;
920
- /**
921
- * Sets the API key to identify the agent.
922
- *
923
- * @param key - The API key
924
- *
925
- * @returns The defined [[App]] object
926
- *
927
- * @deprecated Use `setConfig()` instead
928
- */
929
- static setApiKey(key: string): App;
930
- /**
931
- * Sets the provider of the valid OAuth2 access token
932
- *
933
- * @deprecated Use `setConfig()` instead
934
- */
935
- static setOAuthTokenProvider(oauthTokenProvider: () => Promise<string>): Promise<void>;
903
+ getBillingPortalUrl(returnUrl: string): Promise<string | undefined>;
936
904
  }
937
905
 
938
906
  /**
@@ -3337,10 +3305,6 @@ export declare class Transaction {
3337
3305
  * @returns This Transaction, for chaining
3338
3306
  */
3339
3307
  untrash(): Promise<Transaction>;
3340
- /** @deprecated */
3341
- remove(): Promise<Transaction>;
3342
- /** @deprecated */
3343
- restore(): Promise<Transaction>;
3344
3308
  }
3345
3309
 
3346
3310
  /**
@@ -10,8 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  import * as AccountService from '../service/account-service.js';
11
11
  import * as GroupService from '../service/group-service.js';
12
12
  import { Group } from './Group.js';
13
- import { normalizeText, round } from '../utils.js';
14
- import { Amount } from './Amount.js';
13
+ import { normalizeText } from '../utils.js';
15
14
  /**
16
15
  * This class defines an [Account](https://en.wikipedia.org/wiki/Account_(bookkeeping)) of a [[Book]].
17
16
  *
@@ -163,34 +162,6 @@ export class Account {
163
162
  this.setProperty(key, null);
164
163
  return this;
165
164
  }
166
- /**
167
- * Gets the balance based on credit nature of this Account.
168
- *
169
- * @deprecated Use `Book.getBalancesReport` instead.
170
- *
171
- * @returns The balance of this Account.
172
- */
173
- getBalance() {
174
- var balance = new Amount('0');
175
- if (this.payload.balance != null) {
176
- balance = round(this.payload.balance, this.book.getFractionDigits());
177
- }
178
- return balance;
179
- }
180
- /**
181
- * Gets the raw balance, no matter credit nature of this Account.
182
- *
183
- * @deprecated Use `Book.getBalancesReport` instead.
184
- *
185
- * @returns The balance of this Account.
186
- */
187
- getBalanceRaw() {
188
- var balance = new Amount('0');
189
- if (this.payload.balance != null) {
190
- balance = round(this.payload.balance, this.book.getFractionDigits());
191
- }
192
- return balance;
193
- }
194
165
  /**
195
166
  * Tells if this Account is archived.
196
167
  *
@@ -29,7 +29,7 @@ import { Agent } from "./Agent.js";
29
29
  * Example:
30
30
  *
31
31
  * ```javascript
32
- * Bkper.setConfig({
32
+ * Bkper.get().setConfig({
33
33
  * apiKeyProvider: () => process.env.BKPER_API_KEY,
34
34
  * oauthTokenProvider: () => process.env.BKPER_OAUTH_TOKEN
35
35
  * })
@@ -40,6 +40,14 @@ import { Agent } from "./Agent.js";
40
40
  * @public
41
41
  */
42
42
  export class Bkper {
43
+ /**
44
+ * Creates a new Bkper instance with the specified API configuration.
45
+ *
46
+ * @param config - The Config object
47
+ */
48
+ constructor(config) {
49
+ HttpApiRequest.config = config;
50
+ }
43
51
  /**
44
52
  * Gets the [[Book]] with the specified bookId from url param.
45
53
  *
@@ -48,7 +56,7 @@ export class Bkper {
48
56
  *
49
57
  * @returns The retrieved Book
50
58
  */
51
- static getBook(id, includeAccounts) {
59
+ getBook(id, includeAccounts) {
52
60
  return __awaiter(this, void 0, void 0, function* () {
53
61
  let book = yield BookService.loadBook(id, includeAccounts);
54
62
  return new Book(book);
@@ -60,7 +68,7 @@ export class Bkper {
60
68
  * @param query - Optional search term to filter books
61
69
  * @returns The retrieved list of Books
62
70
  */
63
- static getBooks(query) {
71
+ getBooks(query) {
64
72
  return __awaiter(this, void 0, void 0, function* () {
65
73
  let books = yield BookService.loadBooks(query);
66
74
  return books.map(book => new Book(book));
@@ -71,7 +79,7 @@ export class Bkper {
71
79
  *
72
80
  * @returns The retrieved list of Collections
73
81
  */
74
- static getCollections() {
82
+ getCollections() {
75
83
  return __awaiter(this, void 0, void 0, function* () {
76
84
  let collections = yield CollectionService.loadCollections();
77
85
  return collections.map(collection => new Collection(collection));
@@ -82,7 +90,7 @@ export class Bkper {
82
90
  *
83
91
  * @returns The retrieved list of Apps
84
92
  */
85
- static getApps() {
93
+ getApps() {
86
94
  return __awaiter(this, void 0, void 0, function* () {
87
95
  let apps = yield AppService.getApps();
88
96
  return apps.map(app => new App(app));
@@ -93,7 +101,7 @@ export class Bkper {
93
101
  *
94
102
  * @returns The retrieved list of Conversations
95
103
  */
96
- static getConversations() {
104
+ getConversations() {
97
105
  return __awaiter(this, void 0, void 0, function* () {
98
106
  const conversationPayloads = yield ConversationService.getConversations();
99
107
  let conversations = [];
@@ -110,7 +118,7 @@ export class Bkper {
110
118
  *
111
119
  * @returns The retrieved list of Templates
112
120
  */
113
- static getTemplates() {
121
+ getTemplates() {
114
122
  return __awaiter(this, void 0, void 0, function* () {
115
123
  let templates = yield TemplateService.getTemplates();
116
124
  return templates.map(template => new Template(template));
@@ -121,7 +129,7 @@ export class Bkper {
121
129
  *
122
130
  * @returns The retrieved User
123
131
  */
124
- static getUser() {
132
+ getUser() {
125
133
  return __awaiter(this, void 0, void 0, function* () {
126
134
  let user = yield UserService.getUser();
127
135
  return new User(user);
@@ -134,42 +142,11 @@ export class Bkper {
134
142
  *
135
143
  * @returns The URL to redirect the User to the billing portal
136
144
  */
137
- static getBillingPortalUrl(returnUrl) {
145
+ getBillingPortalUrl(returnUrl) {
138
146
  return __awaiter(this, void 0, void 0, function* () {
139
147
  let url = yield UserService.getBillingPortalUrl(returnUrl);
140
148
  return url.url;
141
149
  });
142
150
  }
143
- /**
144
- * Sets the API [[Config]] object.
145
- *
146
- * @param config - The Config object
147
- */
148
- static setConfig(config) {
149
- HttpApiRequest.config = config;
150
- }
151
- /**
152
- * Sets the API key to identify the agent.
153
- *
154
- * @param key - The API key
155
- *
156
- * @returns The defined [[App]] object
157
- *
158
- * @deprecated Use `setConfig()` instead
159
- */
160
- static setApiKey(key) {
161
- HttpApiRequest.config.apiKeyProvider = () => __awaiter(this, void 0, void 0, function* () { return key; });
162
- return new App({});
163
- }
164
- /**
165
- * Sets the provider of the valid OAuth2 access token
166
- *
167
- * @deprecated Use `setConfig()` instead
168
- */
169
- static setOAuthTokenProvider(oauthTokenProvider) {
170
- return __awaiter(this, void 0, void 0, function* () {
171
- HttpApiRequest.config.oauthTokenProvider = oauthTokenProvider;
172
- });
173
- }
174
151
  }
175
152
  //# sourceMappingURL=Bkper.js.map
@@ -830,17 +830,5 @@ export class Transaction {
830
830
  return this;
831
831
  });
832
832
  }
833
- /** @deprecated */
834
- remove() {
835
- return __awaiter(this, void 0, void 0, function* () {
836
- return this.trash();
837
- });
838
- }
839
- /** @deprecated */
840
- restore() {
841
- return __awaiter(this, void 0, void 0, function* () {
842
- return this.untrash();
843
- });
844
- }
845
833
  }
846
834
  //# sourceMappingURL=Transaction.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bkper-js",
3
- "version": "1.47.3",
3
+ "version": "2.0.0",
4
4
  "description": "Javascript client for Bkper REST API",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib/index.js",