increase 0.3.0 → 0.4.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/.release-please-manifest.json +1 -1
- package/.stats.yml +1 -1
- package/CHANGELOG.md +46 -0
- package/README.md +3 -4
- package/api.md +11 -0
- package/core.ts +4 -140
- package/dist/cjs/core.d.ts +3 -53
- package/dist/cjs/core.d.ts.map +1 -1
- package/dist/cjs/core.js +12 -179
- package/dist/cjs/core.js.map +1 -1
- package/dist/cjs/error.d.ts +72 -27
- package/dist/cjs/error.d.ts.map +1 -1
- package/dist/cjs/error.js +176 -54
- package/dist/cjs/error.js.map +1 -1
- package/dist/cjs/index.d.ts +25 -28
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +30 -77
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/resources/account-numbers.d.ts +1 -20
- package/dist/cjs/resources/account-numbers.d.ts.map +1 -1
- package/dist/cjs/resources/account-statements.d.ts +1 -20
- package/dist/cjs/resources/account-statements.d.ts.map +1 -1
- package/dist/cjs/resources/account-transfers.d.ts +1 -20
- package/dist/cjs/resources/account-transfers.d.ts.map +1 -1
- package/dist/cjs/resources/accounts.d.ts +17 -25
- package/dist/cjs/resources/accounts.d.ts.map +1 -1
- package/dist/cjs/resources/ach-prenotifications.d.ts +6 -25
- package/dist/cjs/resources/ach-prenotifications.d.ts.map +1 -1
- package/dist/cjs/resources/ach-transfers.d.ts +70 -37
- package/dist/cjs/resources/ach-transfers.d.ts.map +1 -1
- package/dist/cjs/resources/bookkeeping-accounts.d.ts +4 -4
- package/dist/cjs/resources/bookkeeping-accounts.d.ts.map +1 -1
- package/dist/cjs/resources/bookkeeping-entry-sets.d.ts +4 -16
- package/dist/cjs/resources/bookkeeping-entry-sets.d.ts.map +1 -1
- package/dist/cjs/resources/card-disputes.d.ts +2 -26
- package/dist/cjs/resources/card-disputes.d.ts.map +1 -1
- package/dist/cjs/resources/card-profiles.d.ts +1 -63
- package/dist/cjs/resources/card-profiles.d.ts.map +1 -1
- package/dist/cjs/resources/cards.d.ts +1 -116
- package/dist/cjs/resources/cards.d.ts.map +1 -1
- package/dist/cjs/resources/check-deposits.d.ts +3 -21
- package/dist/cjs/resources/check-deposits.d.ts.map +1 -1
- package/dist/cjs/resources/check-transfers.d.ts +10 -58
- package/dist/cjs/resources/check-transfers.d.ts.map +1 -1
- package/dist/cjs/resources/declined-transactions.d.ts +2 -48
- package/dist/cjs/resources/declined-transactions.d.ts.map +1 -1
- package/dist/cjs/resources/digital-wallet-tokens.d.ts +1 -20
- package/dist/cjs/resources/digital-wallet-tokens.d.ts.map +1 -1
- package/dist/cjs/resources/documents.d.ts +2 -76
- package/dist/cjs/resources/documents.d.ts.map +1 -1
- package/dist/cjs/resources/entities/entities.d.ts +81 -1021
- package/dist/cjs/resources/entities/entities.d.ts.map +1 -1
- package/dist/cjs/resources/entities/index.d.ts +6 -1
- package/dist/cjs/resources/entities/index.d.ts.map +1 -1
- package/dist/cjs/resources/entities/index.js +8 -1
- package/dist/cjs/resources/entities/index.js.map +1 -1
- package/dist/cjs/resources/entities/supplemental-documents.d.ts +35 -0
- package/dist/cjs/resources/entities/supplemental-documents.d.ts.map +1 -1
- package/dist/cjs/resources/entities/supplemental-documents.js +14 -1
- package/dist/cjs/resources/entities/supplemental-documents.js.map +1 -1
- package/dist/cjs/resources/event-subscriptions.d.ts +4 -4
- package/dist/cjs/resources/event-subscriptions.d.ts.map +1 -1
- package/dist/cjs/resources/events.d.ts +24 -99
- package/dist/cjs/resources/events.d.ts.map +1 -1
- package/dist/cjs/resources/exports.d.ts +4 -86
- package/dist/cjs/resources/exports.d.ts.map +1 -1
- package/dist/cjs/resources/external-accounts.d.ts +5 -10
- package/dist/cjs/resources/external-accounts.d.ts.map +1 -1
- package/dist/cjs/resources/files.d.ts +6 -43
- package/dist/cjs/resources/files.d.ts.map +1 -1
- package/dist/cjs/resources/limits.d.ts +4 -4
- package/dist/cjs/resources/limits.d.ts.map +1 -1
- package/dist/cjs/resources/pending-transactions.d.ts +11 -86
- package/dist/cjs/resources/pending-transactions.d.ts.map +1 -1
- package/dist/cjs/resources/real-time-decisions.d.ts +0 -69
- package/dist/cjs/resources/real-time-decisions.d.ts.map +1 -1
- package/dist/cjs/resources/real-time-payments-transfers.d.ts +9 -28
- package/dist/cjs/resources/real-time-payments-transfers.d.ts.map +1 -1
- package/dist/cjs/resources/simulations/ach-transfers.d.ts +108 -214
- package/dist/cjs/resources/simulations/ach-transfers.d.ts.map +1 -1
- package/dist/cjs/resources/simulations/card-disputes.d.ts +4 -4
- package/dist/cjs/resources/simulations/card-disputes.d.ts.map +1 -1
- package/dist/cjs/resources/simulations/cards.d.ts +6 -83
- package/dist/cjs/resources/simulations/cards.d.ts.map +1 -1
- package/dist/cjs/resources/simulations/inbound-wire-drawdown-requests.d.ts +25 -25
- package/dist/cjs/resources/simulations/inbound-wire-drawdown-requests.d.ts.map +1 -1
- package/dist/cjs/resources/simulations/index.d.ts +1 -0
- package/dist/cjs/resources/simulations/index.d.ts.map +1 -1
- package/dist/cjs/resources/simulations/interest-payments.d.ts +57 -184
- package/dist/cjs/resources/simulations/interest-payments.d.ts.map +1 -1
- package/dist/cjs/resources/simulations/programs.d.ts +21 -0
- package/dist/cjs/resources/simulations/programs.d.ts.map +1 -0
- package/dist/cjs/resources/simulations/programs.js +17 -0
- package/dist/cjs/resources/simulations/programs.js.map +1 -0
- package/dist/cjs/resources/simulations/real-time-payments-transfers.d.ts +58 -242
- package/dist/cjs/resources/simulations/real-time-payments-transfers.d.ts.map +1 -1
- package/dist/cjs/resources/simulations/simulations.d.ts +2 -0
- package/dist/cjs/resources/simulations/simulations.d.ts.map +1 -1
- package/dist/cjs/resources/simulations/simulations.js +2 -0
- package/dist/cjs/resources/simulations/simulations.js.map +1 -1
- package/dist/cjs/resources/simulations/wire-transfers.d.ts +57 -184
- package/dist/cjs/resources/simulations/wire-transfers.d.ts.map +1 -1
- package/dist/cjs/resources/transactions.d.ts +81 -281
- package/dist/cjs/resources/transactions.d.ts.map +1 -1
- package/dist/cjs/resources/wire-drawdown-requests.d.ts +8 -8
- package/dist/cjs/resources/wire-drawdown-requests.d.ts.map +1 -1
- package/dist/cjs/resources/wire-transfers.d.ts +13 -32
- package/dist/cjs/resources/wire-transfers.d.ts.map +1 -1
- package/dist/cjs/streaming.d.ts +13 -0
- package/dist/cjs/streaming.d.ts.map +1 -0
- package/dist/cjs/streaming.js +282 -0
- package/dist/cjs/streaming.js.map +1 -0
- package/dist/cjs/tests/api-resources/account-numbers.test.js +7 -8
- package/dist/cjs/tests/api-resources/account-numbers.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/account-statements.test.js +6 -4
- package/dist/cjs/tests/api-resources/account-statements.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/account-transfers.test.js +6 -5
- package/dist/cjs/tests/api-resources/account-transfers.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/accounts.test.js +10 -12
- package/dist/cjs/tests/api-resources/accounts.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/ach-prenotifications.test.js +7 -15
- package/dist/cjs/tests/api-resources/ach-prenotifications.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/ach-transfers.test.js +8 -20
- package/dist/cjs/tests/api-resources/ach-transfers.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/balance-lookups.test.js +1 -4
- package/dist/cjs/tests/api-resources/balance-lookups.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/bookkeeping-accounts.test.js +2 -7
- package/dist/cjs/tests/api-resources/bookkeeping-accounts.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/bookkeeping-entry-sets.test.js +1 -3
- package/dist/cjs/tests/api-resources/bookkeeping-entry-sets.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/card-disputes.test.js +7 -5
- package/dist/cjs/tests/api-resources/card-disputes.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/card-profiles.test.js +1 -1
- package/dist/cjs/tests/api-resources/card-profiles.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/cards.test.js +8 -16
- package/dist/cjs/tests/api-resources/cards.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/check-deposits.test.js +6 -4
- package/dist/cjs/tests/api-resources/check-deposits.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/check-transfers.test.js +8 -10
- package/dist/cjs/tests/api-resources/check-transfers.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/declined-transactions.test.js +6 -4
- package/dist/cjs/tests/api-resources/declined-transactions.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/digital-wallet-tokens.test.js +6 -4
- package/dist/cjs/tests/api-resources/digital-wallet-tokens.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/documents.test.js +13 -9
- package/dist/cjs/tests/api-resources/documents.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/entities/entities.test.js +8 -76
- package/dist/cjs/tests/api-resources/entities/entities.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/entities/supplemental-documents.test.js +12 -0
- package/dist/cjs/tests/api-resources/entities/supplemental-documents.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/event-subscriptions.test.js +3 -7
- package/dist/cjs/tests/api-resources/event-subscriptions.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/events.test.js +7 -5
- package/dist/cjs/tests/api-resources/events.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/exports.test.js +2 -6
- package/dist/cjs/tests/api-resources/exports.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/external-accounts.test.js +3 -7
- package/dist/cjs/tests/api-resources/external-accounts.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/files.test.js +8 -7
- package/dist/cjs/tests/api-resources/files.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/limits.test.js +2 -7
- package/dist/cjs/tests/api-resources/limits.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/pending-transactions.test.js +7 -5
- package/dist/cjs/tests/api-resources/pending-transactions.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/real-time-decisions.test.js +1 -5
- package/dist/cjs/tests/api-resources/real-time-decisions.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/real-time-payments-transfers.test.js +8 -10
- package/dist/cjs/tests/api-resources/real-time-payments-transfers.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/routing-numbers.test.js +2 -6
- package/dist/cjs/tests/api-resources/routing-numbers.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/simulations/ach-transfers.test.js +4 -8
- package/dist/cjs/tests/api-resources/simulations/ach-transfers.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/simulations/card-disputes.test.js +1 -2
- package/dist/cjs/tests/api-resources/simulations/card-disputes.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/simulations/cards.test.js +2 -8
- package/dist/cjs/tests/api-resources/simulations/cards.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/simulations/inbound-wire-drawdown-requests.test.js +6 -18
- package/dist/cjs/tests/api-resources/simulations/inbound-wire-drawdown-requests.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/simulations/programs.test.d.ts +2 -0
- package/dist/cjs/tests/api-resources/simulations/programs.test.d.ts.map +1 -0
- package/dist/cjs/tests/api-resources/simulations/programs.test.js +52 -0
- package/dist/cjs/tests/api-resources/simulations/programs.test.js.map +1 -0
- package/dist/cjs/tests/api-resources/simulations/real-time-payments-transfers.test.js +1 -6
- package/dist/cjs/tests/api-resources/simulations/real-time-payments-transfers.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/simulations/wire-transfers.test.js +0 -13
- package/dist/cjs/tests/api-resources/simulations/wire-transfers.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/transactions.test.js +9 -9
- package/dist/cjs/tests/api-resources/transactions.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/wire-drawdown-requests.test.js +2 -5
- package/dist/cjs/tests/api-resources/wire-drawdown-requests.test.js.map +1 -1
- package/dist/cjs/tests/api-resources/wire-transfers.test.js +9 -14
- package/dist/cjs/tests/api-resources/wire-transfers.test.js.map +1 -1
- package/dist/cjs/tests/index.test.js +9 -4
- package/dist/cjs/tests/index.test.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/error.ts +195 -27
- package/index.ts +26 -94
- package/package.json +1 -1
- package/release-please-config.json +5 -8
- package/resources/account-numbers.ts +1 -23
- package/resources/account-statements.ts +1 -23
- package/resources/account-transfers.ts +1 -23
- package/resources/accounts.ts +19 -28
- package/resources/ach-prenotifications.ts +7 -29
- package/resources/ach-transfers.ts +73 -42
- package/resources/bookkeeping-accounts.ts +5 -5
- package/resources/bookkeeping-entry-sets.ts +5 -19
- package/resources/card-disputes.ts +2 -29
- package/resources/card-profiles.ts +1 -74
- package/resources/cards.ts +1 -135
- package/resources/check-deposits.ts +3 -24
- package/resources/check-transfers.ts +11 -68
- package/resources/declined-transactions.ts +2 -60
- package/resources/digital-wallet-tokens.ts +1 -23
- package/resources/documents.ts +2 -79
- package/resources/entities/entities.ts +112 -1210
- package/resources/entities/index.ts +6 -1
- package/resources/entities/supplemental-documents.ts +46 -0
- package/resources/event-subscriptions.ts +5 -5
- package/resources/events.ts +28 -106
- package/resources/exports.ts +5 -99
- package/resources/external-accounts.ts +6 -11
- package/resources/files.ts +6 -46
- package/resources/limits.ts +5 -5
- package/resources/pending-transactions.ts +12 -104
- package/resources/real-time-decisions.ts +0 -77
- package/resources/real-time-payments-transfers.ts +11 -33
- package/resources/simulations/ach-transfers.ts +109 -263
- package/resources/simulations/card-disputes.ts +4 -4
- package/resources/simulations/cards.ts +7 -107
- package/resources/simulations/inbound-wire-drawdown-requests.ts +28 -28
- package/resources/simulations/index.ts +1 -0
- package/resources/simulations/interest-payments.ts +58 -224
- package/resources/simulations/programs.ts +26 -0
- package/resources/simulations/real-time-payments-transfers.ts +59 -292
- package/resources/simulations/simulations.ts +2 -0
- package/resources/simulations/wire-transfers.ts +58 -224
- package/resources/transactions.ts +86 -328
- package/resources/wire-drawdown-requests.ts +10 -10
- package/resources/wire-transfers.ts +15 -37
- package/streaming.ts +199 -0
- package/tests/api-resources/account-numbers.test.ts +7 -8
- package/tests/api-resources/account-statements.test.ts +6 -4
- package/tests/api-resources/account-transfers.test.ts +6 -5
- package/tests/api-resources/accounts.test.ts +10 -12
- package/tests/api-resources/ach-prenotifications.test.ts +7 -15
- package/tests/api-resources/ach-transfers.test.ts +8 -20
- package/tests/api-resources/balance-lookups.test.ts +1 -4
- package/tests/api-resources/bookkeeping-accounts.test.ts +2 -7
- package/tests/api-resources/bookkeeping-entry-sets.test.ts +1 -3
- package/tests/api-resources/card-disputes.test.ts +7 -5
- package/tests/api-resources/card-profiles.test.ts +1 -1
- package/tests/api-resources/cards.test.ts +8 -16
- package/tests/api-resources/check-deposits.test.ts +6 -4
- package/tests/api-resources/check-transfers.test.ts +8 -10
- package/tests/api-resources/declined-transactions.test.ts +6 -4
- package/tests/api-resources/digital-wallet-tokens.test.ts +6 -4
- package/tests/api-resources/documents.test.ts +9 -9
- package/tests/api-resources/entities/entities.test.ts +9 -80
- package/tests/api-resources/entities/supplemental-documents.test.ts +12 -0
- package/tests/api-resources/event-subscriptions.test.ts +3 -7
- package/tests/api-resources/events.test.ts +7 -5
- package/tests/api-resources/exports.test.ts +2 -6
- package/tests/api-resources/external-accounts.test.ts +3 -7
- package/tests/api-resources/files.test.ts +8 -7
- package/tests/api-resources/limits.test.ts +2 -7
- package/tests/api-resources/pending-transactions.test.ts +7 -5
- package/tests/api-resources/real-time-decisions.test.ts +1 -5
- package/tests/api-resources/real-time-payments-transfers.test.ts +8 -10
- package/tests/api-resources/routing-numbers.test.ts +2 -6
- package/tests/api-resources/simulations/ach-transfers.test.ts +1 -8
- package/tests/api-resources/simulations/card-disputes.test.ts +1 -2
- package/tests/api-resources/simulations/cards.test.ts +2 -8
- package/tests/api-resources/simulations/inbound-wire-drawdown-requests.test.ts +6 -18
- package/tests/api-resources/simulations/programs.test.ts +15 -0
- package/tests/api-resources/simulations/real-time-payments-transfers.test.ts +1 -6
- package/tests/api-resources/simulations/wire-transfers.test.ts +0 -13
- package/tests/api-resources/transactions.test.ts +9 -9
- package/tests/api-resources/wire-drawdown-requests.test.ts +2 -5
- package/tests/api-resources/wire-transfers.test.ts +9 -14
- package/tests/index.test.ts +9 -4
- package/version.ts +1 -1
- package/.github/workflows/publish-npm.yml +0 -28
- package/.github/workflows/release-doctor.yml +0 -20
- package/.github/workflows/release.yml +0 -38
package/.stats.yml
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
configured_endpoints:
|
|
1
|
+
configured_endpoints: 133
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,51 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.4.0](https://github.com/Increase/increase-node/compare/v0.3.0...v0.4.0) (2023-06-19)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### ⚠ BREAKING CHANGES
|
|
7
|
+
|
|
8
|
+
* drop official support for EOL Node versions (Node 12, 13, 14, 15) ([#18](https://github.com/Increase/increase-node/issues/18))
|
|
9
|
+
* **api:** rename return reason enum member ([#12](https://github.com/Increase/increase-node/issues/12))
|
|
10
|
+
* change nested query parameters to be objects ([#8](https://github.com/Increase/increase-node/issues/8))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
* **client:** add support for specifying client-level default headers ([#5](https://github.com/Increase/increase-node/issues/5)) ([609c71a](https://github.com/Increase/increase-node/commit/609c71a7f657ec14fba3fa919d8b0dd4ff1ecb5d))
|
|
15
|
+
* **api:** add new endpoints + properties + enums ([#9](https://github.com/Increase/increase-node/issues/9)) ([8fd90c4](https://github.com/Increase/increase-node/commit/8fd90c4b8a50ce9f5a23cc17ee71508df6e34eca))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Bug Fixes
|
|
19
|
+
|
|
20
|
+
* **internal:** improve stream cancellation handling of abort controllers ([#17](https://github.com/Increase/increase-node/issues/17)) ([e8f15dd](https://github.com/Increase/increase-node/commit/e8f15dd5c2001dd6b3023266a2471c019ed96739))
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Chores
|
|
24
|
+
|
|
25
|
+
* **internal:** improve SSE decoding of lines ([#14](https://github.com/Increase/increase-node/issues/14)) ([74b9bdc](https://github.com/Increase/increase-node/commit/74b9bdcaa44639cd99865d8a2701a2232314f0fd))
|
|
26
|
+
* **internal:** restructure core streaming implementation ([#7](https://github.com/Increase/increase-node/issues/7)) ([b97964b](https://github.com/Increase/increase-node/commit/b97964bd5e22ed7ce4ffdd8e4a8fe5005db40976))
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
### Refactors
|
|
30
|
+
|
|
31
|
+
* **api:** remove unused properties and enum members ([#16](https://github.com/Increase/increase-node/issues/16)) ([51c8ab5](https://github.com/Increase/increase-node/commit/51c8ab5e5415d722768af8c53c5c8453398545a6))
|
|
32
|
+
* change nested query parameters to be objects ([#8](https://github.com/Increase/increase-node/issues/8)) ([fdcd3a4](https://github.com/Increase/increase-node/commit/fdcd3a47ff31cece47a646853086f9d9e024720c))
|
|
33
|
+
* **api:** rename return reason enum member ([#12](https://github.com/Increase/increase-node/issues/12)) ([51ba5d4](https://github.com/Increase/increase-node/commit/51ba5d42e07dbde522cf7ff49863fc0935c350bb))
|
|
34
|
+
* **docs:** cleanup api.md response types ([539848e](https://github.com/Increase/increase-node/commit/539848e9001e424f9492f60d82cfb861316cfcb2))
|
|
35
|
+
* move error type definitions to error.ts ([#15](https://github.com/Increase/increase-node/issues/15)) ([e50a9a1](https://github.com/Increase/increase-node/commit/e50a9a1f43e107ae989306f73f210e6b88493d60))
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
### Documentation
|
|
39
|
+
|
|
40
|
+
* drop official support for EOL Node versions (Node 12, 13, 14, 15) ([#18](https://github.com/Increase/increase-node/issues/18)) ([f3be71b](https://github.com/Increase/increase-node/commit/f3be71b1191f72a6785f6be07dcf79b45b9640ac))
|
|
41
|
+
* point to github repo instead of email contact ([#13](https://github.com/Increase/increase-node/issues/13)) ([72d7fef](https://github.com/Increase/increase-node/commit/72d7fef408e625906e2ec59c29b9a63ea5a9d64c))
|
|
42
|
+
* slight improvement to file uploads example ([#10](https://github.com/Increase/increase-node/issues/10)) ([b134725](https://github.com/Increase/increase-node/commit/b1347253a900c1af41a66363bc225a2b09a9e4c3))
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
### Build System
|
|
46
|
+
|
|
47
|
+
* add `.github` folder to `.npmignore` ([#19](https://github.com/Increase/increase-node/issues/19)) ([a263289](https://github.com/Increase/increase-node/commit/a263289da32b5e0d708c5c21a92a6a58faf74abc))
|
|
48
|
+
|
|
3
49
|
## [0.3.0](https://github.com/Increase/increase-node/compare/increase-v0.2.0...increase-v0.3.0) (2023-05-31)
|
|
4
50
|
|
|
5
51
|
|
package/README.md
CHANGED
|
@@ -70,7 +70,7 @@ import Increase, { fileFromPath } from 'increase';
|
|
|
70
70
|
|
|
71
71
|
const increase = new Increase();
|
|
72
72
|
|
|
73
|
-
const file = await fileFromPath('
|
|
73
|
+
const file = await fileFromPath('my/file.txt');
|
|
74
74
|
await increase.files.create({ file: file, purpose: 'other' });
|
|
75
75
|
```
|
|
76
76
|
|
|
@@ -212,14 +212,13 @@ This package is in beta. Its internals and interfaces are not stable
|
|
|
212
212
|
and subject to change without a major semver bump;
|
|
213
213
|
please reach out if you rely on any undocumented behavior.
|
|
214
214
|
|
|
215
|
-
We are keen for your feedback; please
|
|
216
|
-
or open an issue with questions, bugs, or suggestions.
|
|
215
|
+
We are keen for your feedback; please open an [issue](https://www.github.com/increase/increase-node/issues) with questions, bugs, or suggestions.
|
|
217
216
|
|
|
218
217
|
## Requirements
|
|
219
218
|
|
|
220
219
|
The following runtimes are supported:
|
|
221
220
|
|
|
222
|
-
- Node.js
|
|
221
|
+
- Node.js 16 LTS or later ([non-EOL](https://endoflife.date/nodejs)) versions.
|
|
223
222
|
- Deno v1.28.0 or higher (experimental).
|
|
224
223
|
Use `import Increase from "npm:increase"`.
|
|
225
224
|
|
package/api.md
CHANGED
|
@@ -329,9 +329,14 @@ Methods:
|
|
|
329
329
|
|
|
330
330
|
## SupplementalDocuments
|
|
331
331
|
|
|
332
|
+
Models:
|
|
333
|
+
|
|
334
|
+
- <code><a href="./resources/entities/supplemental-documents.ts">SupplementalDocument</a></code>
|
|
335
|
+
|
|
332
336
|
Methods:
|
|
333
337
|
|
|
334
338
|
- <code title="post /entities/{entity_id}/supplemental_documents">client.entities.supplementalDocuments.<a href="./resources/entities/supplemental-documents.ts">create</a>(entityId, { ...params }) -> Entity</code>
|
|
339
|
+
- <code title="get /entity_supplemental_documents">client.entities.supplementalDocuments.<a href="./resources/entities/supplemental-documents.ts">list</a>({ ...params }) -> SupplementalDocumentsPage</code>
|
|
335
340
|
|
|
336
341
|
# InboundWireDrawdownRequests
|
|
337
342
|
|
|
@@ -516,6 +521,12 @@ Methods:
|
|
|
516
521
|
- <code title="post /simulations/check_deposits/{check_deposit_id}/return">client.simulations.checkDeposits.<a href="./resources/simulations/check-deposits.ts">return</a>(checkDepositId) -> CheckDeposit</code>
|
|
517
522
|
- <code title="post /simulations/check_deposits/{check_deposit_id}/submit">client.simulations.checkDeposits.<a href="./resources/simulations/check-deposits.ts">submit</a>(checkDepositId) -> CheckDeposit</code>
|
|
518
523
|
|
|
524
|
+
## Programs
|
|
525
|
+
|
|
526
|
+
Methods:
|
|
527
|
+
|
|
528
|
+
- <code title="post /simulations/programs">client.simulations.programs.<a href="./resources/simulations/programs.ts">create</a>({ ...params }) -> Program</code>
|
|
529
|
+
|
|
519
530
|
## InboundWireDrawdownRequests
|
|
520
531
|
|
|
521
532
|
Methods:
|
package/core.ts
CHANGED
|
@@ -7,6 +7,8 @@ import { FormDataEncoder } from 'form-data-encoder';
|
|
|
7
7
|
import { Readable } from 'stream';
|
|
8
8
|
|
|
9
9
|
import { VERSION } from './version';
|
|
10
|
+
import { Stream } from './streaming';
|
|
11
|
+
import { APIError, APIConnectionError, APIConnectionTimeoutError } from './error';
|
|
10
12
|
import { Fetch, getDefaultAgent, getFetch } from './fetch-polyfill';
|
|
11
13
|
|
|
12
14
|
const MAX_RETRIES = 2;
|
|
@@ -476,66 +478,6 @@ export class PagePromise<
|
|
|
476
478
|
}
|
|
477
479
|
}
|
|
478
480
|
|
|
479
|
-
export class Stream<Item> implements AsyncIterable<Item>, APIResponse<Stream<Item>> {
|
|
480
|
-
response: Response;
|
|
481
|
-
responseHeaders: Headers;
|
|
482
|
-
controller: AbortController;
|
|
483
|
-
|
|
484
|
-
constructor(response: Response, controller: AbortController) {
|
|
485
|
-
this.response = response;
|
|
486
|
-
this.controller = controller;
|
|
487
|
-
this.responseHeaders = createResponseHeaders(response.headers);
|
|
488
|
-
}
|
|
489
|
-
|
|
490
|
-
async *[Symbol.asyncIterator](): AsyncIterator<Item, any, undefined> {
|
|
491
|
-
if (!this.response.body) {
|
|
492
|
-
this.controller.abort();
|
|
493
|
-
throw new Error(`Attempted to iterate over a response with no body`);
|
|
494
|
-
}
|
|
495
|
-
|
|
496
|
-
for await (const chunk of this.response.body) {
|
|
497
|
-
let text, done;
|
|
498
|
-
if (chunk instanceof Buffer) {
|
|
499
|
-
text = chunk.toString();
|
|
500
|
-
} else {
|
|
501
|
-
text = chunk;
|
|
502
|
-
}
|
|
503
|
-
|
|
504
|
-
// https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#event_stream_format
|
|
505
|
-
const messages = text.split('\n\n');
|
|
506
|
-
for (const msg of messages) {
|
|
507
|
-
let data = '';
|
|
508
|
-
for (const line of msg.split('\n')) {
|
|
509
|
-
if (line.startsWith('event: ping')) {
|
|
510
|
-
break;
|
|
511
|
-
}
|
|
512
|
-
if (line.startsWith('data: [DONE]')) {
|
|
513
|
-
done = true;
|
|
514
|
-
break;
|
|
515
|
-
}
|
|
516
|
-
|
|
517
|
-
if (line.startsWith('data: ')) {
|
|
518
|
-
data += line.substring(6);
|
|
519
|
-
}
|
|
520
|
-
}
|
|
521
|
-
|
|
522
|
-
if (!data) continue;
|
|
523
|
-
try {
|
|
524
|
-
yield JSON.parse(data);
|
|
525
|
-
} catch (e) {
|
|
526
|
-
console.error(`Could not parse message into JSON:`, data);
|
|
527
|
-
console.error(`From chunk:`, text);
|
|
528
|
-
throw e;
|
|
529
|
-
}
|
|
530
|
-
}
|
|
531
|
-
|
|
532
|
-
if (done) break;
|
|
533
|
-
}
|
|
534
|
-
|
|
535
|
-
this.controller.abort();
|
|
536
|
-
}
|
|
537
|
-
}
|
|
538
|
-
|
|
539
481
|
export const createResponseHeaders = (
|
|
540
482
|
headers: Awaited<ReturnType<Fetch>>['headers'],
|
|
541
483
|
): Record<string, string> => {
|
|
@@ -602,84 +544,6 @@ export type APIResponse<T> = T & {
|
|
|
602
544
|
responseHeaders: Headers;
|
|
603
545
|
};
|
|
604
546
|
|
|
605
|
-
export class APIError extends Error {
|
|
606
|
-
readonly status: number | undefined;
|
|
607
|
-
readonly headers: Headers | undefined;
|
|
608
|
-
readonly error: Object | undefined;
|
|
609
|
-
|
|
610
|
-
constructor(
|
|
611
|
-
status: number | undefined,
|
|
612
|
-
error: Object | undefined,
|
|
613
|
-
message: string | undefined,
|
|
614
|
-
headers: Headers | undefined,
|
|
615
|
-
) {
|
|
616
|
-
super(message || (error as any)?.message);
|
|
617
|
-
this.status = status;
|
|
618
|
-
this.headers = headers;
|
|
619
|
-
this.error = error;
|
|
620
|
-
}
|
|
621
|
-
|
|
622
|
-
static generate(
|
|
623
|
-
status: number | undefined,
|
|
624
|
-
error: Object | undefined,
|
|
625
|
-
message: string | undefined,
|
|
626
|
-
headers: Headers | undefined,
|
|
627
|
-
) {
|
|
628
|
-
if (!status) return new APIConnectionError({ cause: castToError(error) });
|
|
629
|
-
|
|
630
|
-
if (status === 400) return new BadRequestError(status, error, message, headers);
|
|
631
|
-
if (status === 401) return new AuthenticationError(status, error, message, headers);
|
|
632
|
-
if (status === 403) return new PermissionDeniedError(status, error, message, headers);
|
|
633
|
-
if (status === 404) return new NotFoundError(status, error, message, headers);
|
|
634
|
-
if (status === 409) return new ConflictError(status, error, message, headers);
|
|
635
|
-
if (status === 422) return new UnprocessableEntityError(status, error, message, headers);
|
|
636
|
-
if (status === 429) return new RateLimitError(status, error, message, headers);
|
|
637
|
-
if (status >= 500) return new InternalServerError(status, error, message, headers);
|
|
638
|
-
|
|
639
|
-
return new APIError(status, error, message, headers);
|
|
640
|
-
}
|
|
641
|
-
}
|
|
642
|
-
|
|
643
|
-
export class BadRequestError extends APIError {
|
|
644
|
-
override readonly status: 400 = 400;
|
|
645
|
-
}
|
|
646
|
-
export class AuthenticationError extends APIError {
|
|
647
|
-
override readonly status: 401 = 401;
|
|
648
|
-
}
|
|
649
|
-
export class PermissionDeniedError extends APIError {
|
|
650
|
-
override readonly status: 403 = 403;
|
|
651
|
-
}
|
|
652
|
-
export class NotFoundError extends APIError {
|
|
653
|
-
override readonly status: 404 = 404;
|
|
654
|
-
}
|
|
655
|
-
export class ConflictError extends APIError {
|
|
656
|
-
override readonly status: 409 = 409;
|
|
657
|
-
}
|
|
658
|
-
export class UnprocessableEntityError extends APIError {
|
|
659
|
-
override readonly status: 422 = 422;
|
|
660
|
-
}
|
|
661
|
-
export class RateLimitError extends APIError {
|
|
662
|
-
override readonly status: 429 = 429;
|
|
663
|
-
}
|
|
664
|
-
export class InternalServerError extends APIError {}
|
|
665
|
-
|
|
666
|
-
export class APIConnectionError extends APIError {
|
|
667
|
-
override readonly status: undefined = undefined;
|
|
668
|
-
|
|
669
|
-
constructor({ message, cause }: { message?: string; cause?: Error | undefined }) {
|
|
670
|
-
super(undefined, undefined, message || 'Connection error.', undefined);
|
|
671
|
-
// eslint-disable-next-line
|
|
672
|
-
// @ts-ignore
|
|
673
|
-
if (cause) this.cause = cause;
|
|
674
|
-
}
|
|
675
|
-
}
|
|
676
|
-
|
|
677
|
-
export class APIConnectionTimeoutError extends APIConnectionError {
|
|
678
|
-
constructor() {
|
|
679
|
-
super({ message: 'Request timed out.' });
|
|
680
|
-
}
|
|
681
|
-
}
|
|
682
|
-
|
|
683
547
|
declare const Deno: any;
|
|
684
548
|
type Arch = 'x32' | 'x64' | 'arm' | 'arm64' | `other:${string}` | 'unknown';
|
|
685
549
|
type PlatformName =
|
|
@@ -774,7 +638,7 @@ const getPlatformHeaders = () => {
|
|
|
774
638
|
return (_platformHeaders ??= getPlatformProperties());
|
|
775
639
|
};
|
|
776
640
|
|
|
777
|
-
const safeJSON = (text: string) => {
|
|
641
|
+
export const safeJSON = (text: string) => {
|
|
778
642
|
try {
|
|
779
643
|
return JSON.parse(text);
|
|
780
644
|
} catch (err) {
|
|
@@ -800,7 +664,7 @@ const validatePositiveInteger = (name: string, n: number) => {
|
|
|
800
664
|
return n;
|
|
801
665
|
};
|
|
802
666
|
|
|
803
|
-
const castToError = (err: any): Error => {
|
|
667
|
+
export const castToError = (err: any): Error => {
|
|
804
668
|
if (err instanceof Error) return err;
|
|
805
669
|
return new Error(err);
|
|
806
670
|
};
|
package/dist/cjs/core.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ import qs from 'qs';
|
|
|
6
6
|
import type { Agent } from 'http';
|
|
7
7
|
import type { RequestInfo, RequestInit, Response } from 'node-fetch';
|
|
8
8
|
import { Readable } from 'stream';
|
|
9
|
+
import { APIError } from './error';
|
|
9
10
|
import { Fetch } from './fetch-polyfill';
|
|
10
11
|
export declare abstract class APIClient {
|
|
11
12
|
baseURL: string;
|
|
@@ -170,13 +171,6 @@ export declare class PagePromise<
|
|
|
170
171
|
*/
|
|
171
172
|
[Symbol.asyncIterator](): AsyncGenerator<Awaited<Item>, void, unknown>;
|
|
172
173
|
}
|
|
173
|
-
export declare class Stream<Item> implements AsyncIterable<Item>, APIResponse<Stream<Item>> {
|
|
174
|
-
response: Response;
|
|
175
|
-
responseHeaders: Headers;
|
|
176
|
-
controller: AbortController;
|
|
177
|
-
constructor(response: Response, controller: AbortController);
|
|
178
|
-
[Symbol.asyncIterator](): AsyncIterator<Item, any, undefined>;
|
|
179
|
-
}
|
|
180
174
|
export declare const createResponseHeaders: (
|
|
181
175
|
headers: Awaited<ReturnType<Fetch>>['headers'],
|
|
182
176
|
) => Record<string, string>;
|
|
@@ -210,52 +204,8 @@ export type FinalRequestOptions<Req extends {} = Record<string, unknown> | Reada
|
|
|
210
204
|
export type APIResponse<T> = T & {
|
|
211
205
|
responseHeaders: Headers;
|
|
212
206
|
};
|
|
213
|
-
export declare
|
|
214
|
-
|
|
215
|
-
readonly headers: Headers | undefined;
|
|
216
|
-
readonly error: Object | undefined;
|
|
217
|
-
constructor(
|
|
218
|
-
status: number | undefined,
|
|
219
|
-
error: Object | undefined,
|
|
220
|
-
message: string | undefined,
|
|
221
|
-
headers: Headers | undefined,
|
|
222
|
-
);
|
|
223
|
-
static generate(
|
|
224
|
-
status: number | undefined,
|
|
225
|
-
error: Object | undefined,
|
|
226
|
-
message: string | undefined,
|
|
227
|
-
headers: Headers | undefined,
|
|
228
|
-
): APIError;
|
|
229
|
-
}
|
|
230
|
-
export declare class BadRequestError extends APIError {
|
|
231
|
-
readonly status: 400;
|
|
232
|
-
}
|
|
233
|
-
export declare class AuthenticationError extends APIError {
|
|
234
|
-
readonly status: 401;
|
|
235
|
-
}
|
|
236
|
-
export declare class PermissionDeniedError extends APIError {
|
|
237
|
-
readonly status: 403;
|
|
238
|
-
}
|
|
239
|
-
export declare class NotFoundError extends APIError {
|
|
240
|
-
readonly status: 404;
|
|
241
|
-
}
|
|
242
|
-
export declare class ConflictError extends APIError {
|
|
243
|
-
readonly status: 409;
|
|
244
|
-
}
|
|
245
|
-
export declare class UnprocessableEntityError extends APIError {
|
|
246
|
-
readonly status: 422;
|
|
247
|
-
}
|
|
248
|
-
export declare class RateLimitError extends APIError {
|
|
249
|
-
readonly status: 429;
|
|
250
|
-
}
|
|
251
|
-
export declare class InternalServerError extends APIError {}
|
|
252
|
-
export declare class APIConnectionError extends APIError {
|
|
253
|
-
readonly status: undefined;
|
|
254
|
-
constructor({ message, cause }: { message?: string; cause?: Error | undefined });
|
|
255
|
-
}
|
|
256
|
-
export declare class APIConnectionTimeoutError extends APIConnectionError {
|
|
257
|
-
constructor();
|
|
258
|
-
}
|
|
207
|
+
export declare const safeJSON: (text: string) => any;
|
|
208
|
+
export declare const castToError: (err: any) => Error;
|
|
259
209
|
/**
|
|
260
210
|
* Returns a multipart/form-data request if any part of the given request body contains a File / Blob value.
|
|
261
211
|
* Otherwise returns the request as is.
|
package/dist/cjs/core.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../core.ts"],"names":[],"mappings":";;;;AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGrE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../core.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/core.js
CHANGED
|
@@ -167,20 +167,10 @@ exports.getHeader =
|
|
|
167
167
|
exports.ensurePresent =
|
|
168
168
|
exports.multipartFormRequestOptions =
|
|
169
169
|
exports.maybeMultipartFormRequestOptions =
|
|
170
|
-
exports.
|
|
171
|
-
exports.
|
|
172
|
-
exports.InternalServerError =
|
|
173
|
-
exports.RateLimitError =
|
|
174
|
-
exports.UnprocessableEntityError =
|
|
175
|
-
exports.ConflictError =
|
|
176
|
-
exports.NotFoundError =
|
|
177
|
-
exports.PermissionDeniedError =
|
|
178
|
-
exports.AuthenticationError =
|
|
179
|
-
exports.BadRequestError =
|
|
180
|
-
exports.APIError =
|
|
170
|
+
exports.castToError =
|
|
171
|
+
exports.safeJSON =
|
|
181
172
|
exports.isRequestOptions =
|
|
182
173
|
exports.createResponseHeaders =
|
|
183
|
-
exports.Stream =
|
|
184
174
|
exports.PagePromise =
|
|
185
175
|
exports.AbstractPage =
|
|
186
176
|
exports.APIResource =
|
|
@@ -191,6 +181,8 @@ const formdata_node_1 = require('formdata-node');
|
|
|
191
181
|
const form_data_encoder_1 = require('form-data-encoder');
|
|
192
182
|
const stream_1 = require('stream');
|
|
193
183
|
const version_1 = require('./version');
|
|
184
|
+
const streaming_1 = require('./streaming');
|
|
185
|
+
const error_1 = require('./error');
|
|
194
186
|
const fetch_polyfill_1 = require('./fetch-polyfill');
|
|
195
187
|
const MAX_RETRIES = 2;
|
|
196
188
|
class APIClient {
|
|
@@ -313,7 +305,7 @@ class APIClient {
|
|
|
313
305
|
return __awaiter(this, void 0, void 0, function* () {});
|
|
314
306
|
}
|
|
315
307
|
makeStatusError(status, error, message, headers) {
|
|
316
|
-
return APIError.generate(status, error, message, headers);
|
|
308
|
+
return error_1.APIError.generate(status, error, message, headers);
|
|
317
309
|
}
|
|
318
310
|
request(options, retriesRemaining) {
|
|
319
311
|
var _a;
|
|
@@ -325,11 +317,11 @@ class APIClient {
|
|
|
325
317
|
yield this.prepareRequest(req, { url });
|
|
326
318
|
this.debug('request', url, options, req.headers);
|
|
327
319
|
const controller = new AbortController();
|
|
328
|
-
const response = yield this.fetchWithTimeout(url, req, timeout, controller).catch(castToError);
|
|
320
|
+
const response = yield this.fetchWithTimeout(url, req, timeout, controller).catch(exports.castToError);
|
|
329
321
|
if (response instanceof Error) {
|
|
330
322
|
if (retriesRemaining) return this.retryRequest(options, retriesRemaining);
|
|
331
|
-
if (response.name === 'AbortError') throw new APIConnectionTimeoutError();
|
|
332
|
-
throw new APIConnectionError({ cause: response });
|
|
323
|
+
if (response.name === 'AbortError') throw new error_1.APIConnectionTimeoutError();
|
|
324
|
+
throw new error_1.APIConnectionError({ cause: response });
|
|
333
325
|
}
|
|
334
326
|
const responseHeaders = (0, exports.createResponseHeaders)(response.headers);
|
|
335
327
|
if (!response.ok) {
|
|
@@ -337,7 +329,7 @@ class APIClient {
|
|
|
337
329
|
return this.retryRequest(options, retriesRemaining, responseHeaders);
|
|
338
330
|
}
|
|
339
331
|
const errText = yield response.text().catch(() => 'Unknown');
|
|
340
|
-
const errJSON = safeJSON(errText);
|
|
332
|
+
const errJSON = (0, exports.safeJSON)(errText);
|
|
341
333
|
const errMessage = errJSON ? undefined : errText;
|
|
342
334
|
this.debug('response', response.status, url, responseHeaders, errMessage);
|
|
343
335
|
const err = this.makeStatusError(response.status, errJSON, errMessage, responseHeaders);
|
|
@@ -346,7 +338,7 @@ class APIClient {
|
|
|
346
338
|
if (options.stream) {
|
|
347
339
|
// Note: there is an invariant here that isn't represented in the type system
|
|
348
340
|
// that if you set `stream: true` the response type must also be `Stream<T>`
|
|
349
|
-
return new Stream(response, controller);
|
|
341
|
+
return new streaming_1.Stream(response, controller);
|
|
350
342
|
}
|
|
351
343
|
const contentType = response.headers.get('content-type');
|
|
352
344
|
if (
|
|
@@ -604,79 +596,6 @@ class PagePromise extends Promise {
|
|
|
604
596
|
}
|
|
605
597
|
}
|
|
606
598
|
exports.PagePromise = PagePromise;
|
|
607
|
-
class Stream {
|
|
608
|
-
constructor(response, controller) {
|
|
609
|
-
this.response = response;
|
|
610
|
-
this.controller = controller;
|
|
611
|
-
this.responseHeaders = (0, exports.createResponseHeaders)(response.headers);
|
|
612
|
-
}
|
|
613
|
-
[Symbol.asyncIterator]() {
|
|
614
|
-
return __asyncGenerator(this, arguments, function* _a() {
|
|
615
|
-
var _b, e_3, _c, _d;
|
|
616
|
-
if (!this.response.body) {
|
|
617
|
-
this.controller.abort();
|
|
618
|
-
throw new Error(`Attempted to iterate over a response with no body`);
|
|
619
|
-
}
|
|
620
|
-
try {
|
|
621
|
-
for (
|
|
622
|
-
var _e = true, _f = __asyncValues(this.response.body), _g;
|
|
623
|
-
(_g = yield __await(_f.next())), (_b = _g.done), !_b;
|
|
624
|
-
|
|
625
|
-
) {
|
|
626
|
-
_d = _g.value;
|
|
627
|
-
_e = false;
|
|
628
|
-
try {
|
|
629
|
-
const chunk = _d;
|
|
630
|
-
let text, done;
|
|
631
|
-
if (chunk instanceof Buffer) {
|
|
632
|
-
text = chunk.toString();
|
|
633
|
-
} else {
|
|
634
|
-
text = chunk;
|
|
635
|
-
}
|
|
636
|
-
// https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#event_stream_format
|
|
637
|
-
const messages = text.split('\n\n');
|
|
638
|
-
for (const msg of messages) {
|
|
639
|
-
let data = '';
|
|
640
|
-
for (const line of msg.split('\n')) {
|
|
641
|
-
if (line.startsWith('event: ping')) {
|
|
642
|
-
break;
|
|
643
|
-
}
|
|
644
|
-
if (line.startsWith('data: [DONE]')) {
|
|
645
|
-
done = true;
|
|
646
|
-
break;
|
|
647
|
-
}
|
|
648
|
-
if (line.startsWith('data: ')) {
|
|
649
|
-
data += line.substring(6);
|
|
650
|
-
}
|
|
651
|
-
}
|
|
652
|
-
if (!data) continue;
|
|
653
|
-
try {
|
|
654
|
-
yield yield __await(JSON.parse(data));
|
|
655
|
-
} catch (e) {
|
|
656
|
-
console.error(`Could not parse message into JSON:`, data);
|
|
657
|
-
console.error(`From chunk:`, text);
|
|
658
|
-
throw e;
|
|
659
|
-
}
|
|
660
|
-
}
|
|
661
|
-
if (done) break;
|
|
662
|
-
} finally {
|
|
663
|
-
_e = true;
|
|
664
|
-
}
|
|
665
|
-
}
|
|
666
|
-
} catch (e_3_1) {
|
|
667
|
-
e_3 = { error: e_3_1 };
|
|
668
|
-
} finally {
|
|
669
|
-
try {
|
|
670
|
-
if (!_e && !_b && (_c = _f.return)) yield __await(_c.call(_f));
|
|
671
|
-
} finally {
|
|
672
|
-
if (e_3) throw e_3.error;
|
|
673
|
-
}
|
|
674
|
-
}
|
|
675
|
-
this.controller.abort();
|
|
676
|
-
});
|
|
677
|
-
}
|
|
678
|
-
}
|
|
679
|
-
exports.Stream = Stream;
|
|
680
599
|
const createResponseHeaders = (headers) => {
|
|
681
600
|
return new Proxy(Object.fromEntries(headers.entries()), {
|
|
682
601
|
get(target, name) {
|
|
@@ -710,94 +629,6 @@ const isRequestOptions = (obj) => {
|
|
|
710
629
|
);
|
|
711
630
|
};
|
|
712
631
|
exports.isRequestOptions = isRequestOptions;
|
|
713
|
-
class APIError extends Error {
|
|
714
|
-
constructor(status, error, message, headers) {
|
|
715
|
-
super(message || (error === null || error === void 0 ? void 0 : error.message));
|
|
716
|
-
this.status = status;
|
|
717
|
-
this.headers = headers;
|
|
718
|
-
this.error = error;
|
|
719
|
-
}
|
|
720
|
-
static generate(status, error, message, headers) {
|
|
721
|
-
if (!status) return new APIConnectionError({ cause: castToError(error) });
|
|
722
|
-
if (status === 400) return new BadRequestError(status, error, message, headers);
|
|
723
|
-
if (status === 401) return new AuthenticationError(status, error, message, headers);
|
|
724
|
-
if (status === 403) return new PermissionDeniedError(status, error, message, headers);
|
|
725
|
-
if (status === 404) return new NotFoundError(status, error, message, headers);
|
|
726
|
-
if (status === 409) return new ConflictError(status, error, message, headers);
|
|
727
|
-
if (status === 422) return new UnprocessableEntityError(status, error, message, headers);
|
|
728
|
-
if (status === 429) return new RateLimitError(status, error, message, headers);
|
|
729
|
-
if (status >= 500) return new InternalServerError(status, error, message, headers);
|
|
730
|
-
return new APIError(status, error, message, headers);
|
|
731
|
-
}
|
|
732
|
-
}
|
|
733
|
-
exports.APIError = APIError;
|
|
734
|
-
class BadRequestError extends APIError {
|
|
735
|
-
constructor() {
|
|
736
|
-
super(...arguments);
|
|
737
|
-
this.status = 400;
|
|
738
|
-
}
|
|
739
|
-
}
|
|
740
|
-
exports.BadRequestError = BadRequestError;
|
|
741
|
-
class AuthenticationError extends APIError {
|
|
742
|
-
constructor() {
|
|
743
|
-
super(...arguments);
|
|
744
|
-
this.status = 401;
|
|
745
|
-
}
|
|
746
|
-
}
|
|
747
|
-
exports.AuthenticationError = AuthenticationError;
|
|
748
|
-
class PermissionDeniedError extends APIError {
|
|
749
|
-
constructor() {
|
|
750
|
-
super(...arguments);
|
|
751
|
-
this.status = 403;
|
|
752
|
-
}
|
|
753
|
-
}
|
|
754
|
-
exports.PermissionDeniedError = PermissionDeniedError;
|
|
755
|
-
class NotFoundError extends APIError {
|
|
756
|
-
constructor() {
|
|
757
|
-
super(...arguments);
|
|
758
|
-
this.status = 404;
|
|
759
|
-
}
|
|
760
|
-
}
|
|
761
|
-
exports.NotFoundError = NotFoundError;
|
|
762
|
-
class ConflictError extends APIError {
|
|
763
|
-
constructor() {
|
|
764
|
-
super(...arguments);
|
|
765
|
-
this.status = 409;
|
|
766
|
-
}
|
|
767
|
-
}
|
|
768
|
-
exports.ConflictError = ConflictError;
|
|
769
|
-
class UnprocessableEntityError extends APIError {
|
|
770
|
-
constructor() {
|
|
771
|
-
super(...arguments);
|
|
772
|
-
this.status = 422;
|
|
773
|
-
}
|
|
774
|
-
}
|
|
775
|
-
exports.UnprocessableEntityError = UnprocessableEntityError;
|
|
776
|
-
class RateLimitError extends APIError {
|
|
777
|
-
constructor() {
|
|
778
|
-
super(...arguments);
|
|
779
|
-
this.status = 429;
|
|
780
|
-
}
|
|
781
|
-
}
|
|
782
|
-
exports.RateLimitError = RateLimitError;
|
|
783
|
-
class InternalServerError extends APIError {}
|
|
784
|
-
exports.InternalServerError = InternalServerError;
|
|
785
|
-
class APIConnectionError extends APIError {
|
|
786
|
-
constructor({ message, cause }) {
|
|
787
|
-
super(undefined, undefined, message || 'Connection error.', undefined);
|
|
788
|
-
this.status = undefined;
|
|
789
|
-
// eslint-disable-next-line
|
|
790
|
-
// @ts-ignore
|
|
791
|
-
if (cause) this.cause = cause;
|
|
792
|
-
}
|
|
793
|
-
}
|
|
794
|
-
exports.APIConnectionError = APIConnectionError;
|
|
795
|
-
class APIConnectionTimeoutError extends APIConnectionError {
|
|
796
|
-
constructor() {
|
|
797
|
-
super({ message: 'Request timed out.' });
|
|
798
|
-
}
|
|
799
|
-
}
|
|
800
|
-
exports.APIConnectionTimeoutError = APIConnectionTimeoutError;
|
|
801
632
|
const getPlatformProperties = () => {
|
|
802
633
|
if (typeof Deno !== 'undefined' && Deno.build != null) {
|
|
803
634
|
return {
|
|
@@ -875,6 +706,7 @@ const safeJSON = (text) => {
|
|
|
875
706
|
return undefined;
|
|
876
707
|
}
|
|
877
708
|
};
|
|
709
|
+
exports.safeJSON = safeJSON;
|
|
878
710
|
// https://stackoverflow.com/a/19709846
|
|
879
711
|
const startsWithSchemeRegexp = new RegExp('^(?:[a-z]+:)?//', 'i');
|
|
880
712
|
const isAbsoluteURL = (url) => {
|
|
@@ -894,6 +726,7 @@ const castToError = (err) => {
|
|
|
894
726
|
if (err instanceof Error) return err;
|
|
895
727
|
return new Error(err);
|
|
896
728
|
};
|
|
729
|
+
exports.castToError = castToError;
|
|
897
730
|
/**
|
|
898
731
|
* Returns a multipart/form-data request if any part of the given request body contains a File / Blob value.
|
|
899
732
|
* Otherwise returns the request as is.
|