@opengovsg/refx-ts-sdk 0.0.0-develop-alpha-1762754615 → 0.0.0-develop-alpha-1763368419
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +44 -1
- package/api/resources/eligibility/client/Client.js +1 -1
- package/api/resources/health/client/Client.js +1 -1
- package/api/resources/links/client/Client.js +1 -1
- package/api/resources/notes/client/Client.js +1 -1
- package/api/resources/offerings/client/Client.js +3 -3
- package/api/resources/public/client/Client.js +1 -1
- package/api/resources/referrals/client/Client.js +9 -9
- package/api/resources/webhooks/client/Client.js +2 -2
- package/api/types/TriggerEmailReminderBody.d.ts +4 -0
- package/browser/jsonwebtoken-stub.d.ts +5 -0
- package/browser/jsonwebtoken-stub.js +10 -0
- package/dist/api/resources/eligibility/client/Client.js +1 -1
- package/dist/api/resources/health/client/Client.js +1 -1
- package/dist/api/resources/links/client/Client.js +1 -1
- package/dist/api/resources/notes/client/Client.js +1 -1
- package/dist/api/resources/offerings/client/Client.js +3 -3
- package/dist/api/resources/public/client/Client.js +1 -1
- package/dist/api/resources/referrals/client/Client.js +9 -9
- package/dist/api/resources/webhooks/client/Client.js +2 -2
- package/dist/api/types/TriggerEmailReminderBody.d.ts +4 -0
- package/dist/browser/jsonwebtoken-stub.d.ts +5 -0
- package/dist/browser/jsonwebtoken-stub.js +10 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +7 -4
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/wrapper/ReferralExchangeJwtClient.d.ts +14 -0
- package/dist/wrapper/ReferralExchangeJwtClient.js +96 -0
- package/index.d.ts +2 -1
- package/index.js +7 -4
- package/package.json +6 -2
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/wrapper/ReferralExchangeJwtClient.d.ts +14 -0
- package/wrapper/ReferralExchangeJwtClient.js +96 -0
package/README.md
CHANGED
|
@@ -5,6 +5,21 @@
|
|
|
5
5
|
|
|
6
6
|
The Opengovsg TypeScript library provides convenient access to the Opengovsg APIs from TypeScript.
|
|
7
7
|
|
|
8
|
+
## Table of Contents
|
|
9
|
+
|
|
10
|
+
- [Installation](#installation)
|
|
11
|
+
- [Reference](#reference)
|
|
12
|
+
- [Usage](#usage)
|
|
13
|
+
- [Request and Response Types](#request-and-response-types)
|
|
14
|
+
- [Exception Handling](#exception-handling)
|
|
15
|
+
- [Advanced](#advanced)
|
|
16
|
+
- [Additional Headers](#additional-headers)
|
|
17
|
+
- [Retries](#retries)
|
|
18
|
+
- [Timeouts](#timeouts)
|
|
19
|
+
- [Aborting Requests](#aborting-requests)
|
|
20
|
+
- [Runtime Compatibility](#runtime-compatibility)
|
|
21
|
+
- [Contributing](#contributing)
|
|
22
|
+
|
|
8
23
|
## Installation
|
|
9
24
|
|
|
10
25
|
```sh
|
|
@@ -51,7 +66,7 @@ await client.referrals.upsert({
|
|
|
51
66
|
});
|
|
52
67
|
```
|
|
53
68
|
|
|
54
|
-
## Request
|
|
69
|
+
## Request and Response Types
|
|
55
70
|
|
|
56
71
|
The SDK exports all request and response types as TypeScript interfaces. Simply import them with the
|
|
57
72
|
following namespace:
|
|
@@ -165,6 +180,34 @@ const client = new ReferralExchangeClient({
|
|
|
165
180
|
});
|
|
166
181
|
```
|
|
167
182
|
|
|
183
|
+
### JWT Authenticated Client
|
|
184
|
+
|
|
185
|
+
If you need to authenticate requests by signing short-lived JWTs locally, use the `ReferralExchangeJwtClient`. It
|
|
186
|
+
accepts a PEM-encoded ES256 private key and the API key name to embed as the issuer claim. By default each request
|
|
187
|
+
receives a freshly signed token (15 second TTL) in the `Authorization` header, but you can opt into caching with a
|
|
188
|
+
refresh buffer to reuse tokens safely. When opting in, you must supply the refresh buffer explicitly so the SDK knows
|
|
189
|
+
how early to rotate tokens.
|
|
190
|
+
|
|
191
|
+
```typescript
|
|
192
|
+
import { ReferralExchangeJwtClient } from "@opengovsg/refx-ts-sdk";
|
|
193
|
+
|
|
194
|
+
const client = new ReferralExchangeJwtClient({
|
|
195
|
+
privateKey: process.env.REFX_PRIVATE_KEY!,
|
|
196
|
+
apiKeyName: process.env.REFX_API_KEY_NAME!,
|
|
197
|
+
environment: "Production", // or pass baseUrl
|
|
198
|
+
tokenCache: {
|
|
199
|
+
// The refresh buffer (required when enabling caching) is how much time must remain
|
|
200
|
+
// before we stop reusing a JWT so requests don't arrive after the token's exp timestamp.
|
|
201
|
+
refreshBufferSeconds: 5,
|
|
202
|
+
},
|
|
203
|
+
});
|
|
204
|
+
|
|
205
|
+
const offerings = await client.offerings.list();
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
Omit the `tokenCache` block (the default) to sign a new token for every request. When you opt in, you must specify
|
|
209
|
+
`refreshBufferSeconds` to control how early the SDK rotates tokens.
|
|
210
|
+
|
|
168
211
|
## Contributing
|
|
169
212
|
|
|
170
213
|
While we value open-source contributions to this SDK, this library is generated programmatically.
|
|
@@ -89,7 +89,7 @@ class Eligibility {
|
|
|
89
89
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
90
90
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/eligibility"),
|
|
91
91
|
method: "GET",
|
|
92
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
92
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
93
93
|
contentType: "application/json",
|
|
94
94
|
queryParameters: _queryParams,
|
|
95
95
|
requestType: "json",
|
|
@@ -69,7 +69,7 @@ class Health {
|
|
|
69
69
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
70
70
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/health"),
|
|
71
71
|
method: "GET",
|
|
72
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
72
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
73
73
|
contentType: "application/json",
|
|
74
74
|
requestType: "json",
|
|
75
75
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -79,7 +79,7 @@ class Links {
|
|
|
79
79
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
80
80
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/links/upsert"),
|
|
81
81
|
method: "POST",
|
|
82
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
82
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
83
83
|
contentType: "application/json",
|
|
84
84
|
requestType: "json",
|
|
85
85
|
body: request,
|
|
@@ -76,7 +76,7 @@ class Notes {
|
|
|
76
76
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
77
77
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/notes`),
|
|
78
78
|
method: "POST",
|
|
79
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
79
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
80
80
|
contentType: "application/json",
|
|
81
81
|
requestType: "json",
|
|
82
82
|
body: request,
|
|
@@ -85,7 +85,7 @@ class Offerings {
|
|
|
85
85
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
86
86
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/offerings"),
|
|
87
87
|
method: "GET",
|
|
88
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
88
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
89
89
|
contentType: "application/json",
|
|
90
90
|
queryParameters: _queryParams,
|
|
91
91
|
requestType: "json",
|
|
@@ -144,7 +144,7 @@ class Offerings {
|
|
|
144
144
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
145
145
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/offerings/recommended"),
|
|
146
146
|
method: "GET",
|
|
147
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
147
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
148
148
|
contentType: "application/json",
|
|
149
149
|
queryParameters: _queryParams,
|
|
150
150
|
requestType: "json",
|
|
@@ -207,7 +207,7 @@ class Offerings {
|
|
|
207
207
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
208
208
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/offerings/${encodeURIComponent(offeringId)}/timeslots`),
|
|
209
209
|
method: "GET",
|
|
210
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
210
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
211
211
|
contentType: "application/json",
|
|
212
212
|
queryParameters: _queryParams,
|
|
213
213
|
requestType: "json",
|
|
@@ -84,7 +84,7 @@ class Public {
|
|
|
84
84
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
85
85
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/public/referrals/${encodeURIComponent(referralId)}`),
|
|
86
86
|
method: "GET",
|
|
87
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
87
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
88
88
|
contentType: "application/json",
|
|
89
89
|
queryParameters: _queryParams,
|
|
90
90
|
requestType: "json",
|
|
@@ -107,7 +107,7 @@ class Referrals {
|
|
|
107
107
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
108
108
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/referrals"),
|
|
109
109
|
method: "GET",
|
|
110
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
110
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
111
111
|
contentType: "application/json",
|
|
112
112
|
queryParameters: _queryParams,
|
|
113
113
|
requestType: "json",
|
|
@@ -183,7 +183,7 @@ class Referrals {
|
|
|
183
183
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
184
184
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/referrals"),
|
|
185
185
|
method: "POST",
|
|
186
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
186
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
187
187
|
contentType: "application/json",
|
|
188
188
|
requestType: "json",
|
|
189
189
|
body: request,
|
|
@@ -249,7 +249,7 @@ class Referrals {
|
|
|
249
249
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
250
250
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}`),
|
|
251
251
|
method: "GET",
|
|
252
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
252
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
253
253
|
contentType: "application/json",
|
|
254
254
|
queryParameters: _queryParams,
|
|
255
255
|
requestType: "json",
|
|
@@ -303,7 +303,7 @@ class Referrals {
|
|
|
303
303
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
304
304
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}`),
|
|
305
305
|
method: "DELETE",
|
|
306
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
306
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
307
307
|
contentType: "application/json",
|
|
308
308
|
requestType: "json",
|
|
309
309
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -355,7 +355,7 @@ class Referrals {
|
|
|
355
355
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
356
356
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/cancel`),
|
|
357
357
|
method: "POST",
|
|
358
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
358
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
359
359
|
contentType: "application/json",
|
|
360
360
|
requestType: "json",
|
|
361
361
|
body: request,
|
|
@@ -410,7 +410,7 @@ class Referrals {
|
|
|
410
410
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
411
411
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/amend`),
|
|
412
412
|
method: "POST",
|
|
413
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
413
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
414
414
|
contentType: "application/json",
|
|
415
415
|
requestType: "json",
|
|
416
416
|
body: request,
|
|
@@ -463,7 +463,7 @@ class Referrals {
|
|
|
463
463
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
464
464
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/accept`),
|
|
465
465
|
method: "POST",
|
|
466
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
466
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
467
467
|
contentType: "application/json",
|
|
468
468
|
requestType: "json",
|
|
469
469
|
body: request,
|
|
@@ -518,7 +518,7 @@ class Referrals {
|
|
|
518
518
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
519
519
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/reject`),
|
|
520
520
|
method: "POST",
|
|
521
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
521
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
522
522
|
contentType: "application/json",
|
|
523
523
|
requestType: "json",
|
|
524
524
|
body: request,
|
|
@@ -570,7 +570,7 @@ class Referrals {
|
|
|
570
570
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
571
571
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/back-to-draft`),
|
|
572
572
|
method: "POST",
|
|
573
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
573
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
574
574
|
contentType: "application/json",
|
|
575
575
|
requestType: "json",
|
|
576
576
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -69,7 +69,7 @@ class Webhooks {
|
|
|
69
69
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
70
70
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/webhooks/formsg/singhealth-profile"),
|
|
71
71
|
method: "POST",
|
|
72
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
72
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
73
73
|
contentType: "application/json",
|
|
74
74
|
requestType: "json",
|
|
75
75
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -113,7 +113,7 @@ class Webhooks {
|
|
|
113
113
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
114
114
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/webhooks/formsg/form-submission/${encodeURIComponent(formId)}`),
|
|
115
115
|
method: "POST",
|
|
116
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
116
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
117
117
|
contentType: "application/json",
|
|
118
118
|
requestType: "json",
|
|
119
119
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -4,4 +4,8 @@
|
|
|
4
4
|
export interface TriggerEmailReminderBody {
|
|
5
5
|
/** Email to cc the reminder to */
|
|
6
6
|
ccEmail?: string;
|
|
7
|
+
/** Whether to send the reminder to the destination */
|
|
8
|
+
remindDestination: boolean;
|
|
9
|
+
/** Whether to send the reminder to the referrer */
|
|
10
|
+
remindReferrer: boolean;
|
|
7
11
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const browserOnlyMessage = "ReferralExchangeJwtClient is only supported in Node.js environments. " +
|
|
4
|
+
"The browser build intentionally excludes the jsonwebtoken dependency.";
|
|
5
|
+
const jsonwebtokenStub = {
|
|
6
|
+
sign() {
|
|
7
|
+
throw new Error(browserOnlyMessage);
|
|
8
|
+
},
|
|
9
|
+
};
|
|
10
|
+
exports.default = jsonwebtokenStub;
|
|
@@ -89,7 +89,7 @@ class Eligibility {
|
|
|
89
89
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
90
90
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/eligibility"),
|
|
91
91
|
method: "GET",
|
|
92
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
92
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
93
93
|
contentType: "application/json",
|
|
94
94
|
queryParameters: _queryParams,
|
|
95
95
|
requestType: "json",
|
|
@@ -69,7 +69,7 @@ class Health {
|
|
|
69
69
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
70
70
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/health"),
|
|
71
71
|
method: "GET",
|
|
72
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
72
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
73
73
|
contentType: "application/json",
|
|
74
74
|
requestType: "json",
|
|
75
75
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -79,7 +79,7 @@ class Links {
|
|
|
79
79
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
80
80
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/links/upsert"),
|
|
81
81
|
method: "POST",
|
|
82
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
82
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
83
83
|
contentType: "application/json",
|
|
84
84
|
requestType: "json",
|
|
85
85
|
body: request,
|
|
@@ -76,7 +76,7 @@ class Notes {
|
|
|
76
76
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
77
77
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/notes`),
|
|
78
78
|
method: "POST",
|
|
79
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
79
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
80
80
|
contentType: "application/json",
|
|
81
81
|
requestType: "json",
|
|
82
82
|
body: request,
|
|
@@ -85,7 +85,7 @@ class Offerings {
|
|
|
85
85
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
86
86
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/offerings"),
|
|
87
87
|
method: "GET",
|
|
88
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
88
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
89
89
|
contentType: "application/json",
|
|
90
90
|
queryParameters: _queryParams,
|
|
91
91
|
requestType: "json",
|
|
@@ -144,7 +144,7 @@ class Offerings {
|
|
|
144
144
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
145
145
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/offerings/recommended"),
|
|
146
146
|
method: "GET",
|
|
147
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
147
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
148
148
|
contentType: "application/json",
|
|
149
149
|
queryParameters: _queryParams,
|
|
150
150
|
requestType: "json",
|
|
@@ -207,7 +207,7 @@ class Offerings {
|
|
|
207
207
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
208
208
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/offerings/${encodeURIComponent(offeringId)}/timeslots`),
|
|
209
209
|
method: "GET",
|
|
210
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
210
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
211
211
|
contentType: "application/json",
|
|
212
212
|
queryParameters: _queryParams,
|
|
213
213
|
requestType: "json",
|
|
@@ -84,7 +84,7 @@ class Public {
|
|
|
84
84
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
85
85
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/public/referrals/${encodeURIComponent(referralId)}`),
|
|
86
86
|
method: "GET",
|
|
87
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
87
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
88
88
|
contentType: "application/json",
|
|
89
89
|
queryParameters: _queryParams,
|
|
90
90
|
requestType: "json",
|
|
@@ -107,7 +107,7 @@ class Referrals {
|
|
|
107
107
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
108
108
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/referrals"),
|
|
109
109
|
method: "GET",
|
|
110
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
110
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
111
111
|
contentType: "application/json",
|
|
112
112
|
queryParameters: _queryParams,
|
|
113
113
|
requestType: "json",
|
|
@@ -183,7 +183,7 @@ class Referrals {
|
|
|
183
183
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
184
184
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/referrals"),
|
|
185
185
|
method: "POST",
|
|
186
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
186
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
187
187
|
contentType: "application/json",
|
|
188
188
|
requestType: "json",
|
|
189
189
|
body: request,
|
|
@@ -249,7 +249,7 @@ class Referrals {
|
|
|
249
249
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
250
250
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}`),
|
|
251
251
|
method: "GET",
|
|
252
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
252
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
253
253
|
contentType: "application/json",
|
|
254
254
|
queryParameters: _queryParams,
|
|
255
255
|
requestType: "json",
|
|
@@ -303,7 +303,7 @@ class Referrals {
|
|
|
303
303
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
304
304
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}`),
|
|
305
305
|
method: "DELETE",
|
|
306
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
306
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
307
307
|
contentType: "application/json",
|
|
308
308
|
requestType: "json",
|
|
309
309
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -355,7 +355,7 @@ class Referrals {
|
|
|
355
355
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
356
356
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/cancel`),
|
|
357
357
|
method: "POST",
|
|
358
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
358
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
359
359
|
contentType: "application/json",
|
|
360
360
|
requestType: "json",
|
|
361
361
|
body: request,
|
|
@@ -410,7 +410,7 @@ class Referrals {
|
|
|
410
410
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
411
411
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/amend`),
|
|
412
412
|
method: "POST",
|
|
413
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
413
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
414
414
|
contentType: "application/json",
|
|
415
415
|
requestType: "json",
|
|
416
416
|
body: request,
|
|
@@ -463,7 +463,7 @@ class Referrals {
|
|
|
463
463
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
464
464
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/accept`),
|
|
465
465
|
method: "POST",
|
|
466
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
466
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
467
467
|
contentType: "application/json",
|
|
468
468
|
requestType: "json",
|
|
469
469
|
body: request,
|
|
@@ -518,7 +518,7 @@ class Referrals {
|
|
|
518
518
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
519
519
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/reject`),
|
|
520
520
|
method: "POST",
|
|
521
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
521
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
522
522
|
contentType: "application/json",
|
|
523
523
|
requestType: "json",
|
|
524
524
|
body: request,
|
|
@@ -570,7 +570,7 @@ class Referrals {
|
|
|
570
570
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
571
571
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/referrals/${encodeURIComponent(referralId)}/back-to-draft`),
|
|
572
572
|
method: "POST",
|
|
573
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
573
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
574
574
|
contentType: "application/json",
|
|
575
575
|
requestType: "json",
|
|
576
576
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -69,7 +69,7 @@ class Webhooks {
|
|
|
69
69
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
70
70
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, "api/v1/webhooks/formsg/singhealth-profile"),
|
|
71
71
|
method: "POST",
|
|
72
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
72
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
73
73
|
contentType: "application/json",
|
|
74
74
|
requestType: "json",
|
|
75
75
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -113,7 +113,7 @@ class Webhooks {
|
|
|
113
113
|
const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
|
|
114
114
|
url: (0, url_join_1.default)((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.ReferralExchangeEnvironment.SmartCms, `api/v1/webhooks/formsg/form-submission/${encodeURIComponent(formId)}`),
|
|
115
115
|
method: "POST",
|
|
116
|
-
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.
|
|
116
|
+
headers: Object.assign(Object.assign({ "X-Fern-Language": "JavaScript", "X-Fern-SDK-Name": "@opengovsg/refx-ts-sdk", "X-Fern-SDK-Version": "0.0.55", "User-Agent": "@opengovsg/refx-ts-sdk/0.0.55", "X-Fern-Runtime": core.RUNTIME.type, "X-Fern-Runtime-Version": core.RUNTIME.version }, (yield this._getCustomAuthorizationHeaders())), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers),
|
|
117
117
|
contentType: "application/json",
|
|
118
118
|
requestType: "json",
|
|
119
119
|
timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
|
|
@@ -4,4 +4,8 @@
|
|
|
4
4
|
export interface TriggerEmailReminderBody {
|
|
5
5
|
/** Email to cc the reminder to */
|
|
6
6
|
ccEmail?: string;
|
|
7
|
+
/** Whether to send the reminder to the destination */
|
|
8
|
+
remindDestination: boolean;
|
|
9
|
+
/** Whether to send the reminder to the referrer */
|
|
10
|
+
remindReferrer: boolean;
|
|
7
11
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const browserOnlyMessage = "ReferralExchangeJwtClient is only supported in Node.js environments. " +
|
|
4
|
+
"The browser build intentionally excludes the jsonwebtoken dependency.";
|
|
5
|
+
const jsonwebtokenStub = {
|
|
6
|
+
sign() {
|
|
7
|
+
throw new Error(browserOnlyMessage);
|
|
8
|
+
},
|
|
9
|
+
};
|
|
10
|
+
exports.default = jsonwebtokenStub;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * as ReferralExchange from "./api";
|
|
2
2
|
export { ReferralExchangeClient } from "./Client";
|
|
3
|
+
export { ReferralExchangeJwtClient } from "./wrapper/ReferralExchangeJwtClient";
|
|
3
4
|
export { ReferralExchangeEnvironment } from "./environments";
|
|
4
|
-
export
|
|
5
|
+
export * from "./errors";
|
package/dist/index.js
CHANGED
|
@@ -32,13 +32,16 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
32
32
|
return result;
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
36
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
|
+
};
|
|
35
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.
|
|
39
|
+
exports.ReferralExchangeEnvironment = exports.ReferralExchangeJwtClient = exports.ReferralExchangeClient = exports.ReferralExchange = void 0;
|
|
37
40
|
exports.ReferralExchange = __importStar(require("./api"));
|
|
38
41
|
var Client_1 = require("./Client");
|
|
39
42
|
Object.defineProperty(exports, "ReferralExchangeClient", { enumerable: true, get: function () { return Client_1.ReferralExchangeClient; } });
|
|
43
|
+
var ReferralExchangeJwtClient_1 = require("./wrapper/ReferralExchangeJwtClient");
|
|
44
|
+
Object.defineProperty(exports, "ReferralExchangeJwtClient", { enumerable: true, get: function () { return ReferralExchangeJwtClient_1.ReferralExchangeJwtClient; } });
|
|
40
45
|
var environments_1 = require("./environments");
|
|
41
46
|
Object.defineProperty(exports, "ReferralExchangeEnvironment", { enumerable: true, get: function () { return environments_1.ReferralExchangeEnvironment; } });
|
|
42
|
-
|
|
43
|
-
Object.defineProperty(exports, "ReferralExchangeError", { enumerable: true, get: function () { return errors_1.ReferralExchangeError; } });
|
|
44
|
-
Object.defineProperty(exports, "ReferralExchangeTimeoutError", { enumerable: true, get: function () { return errors_1.ReferralExchangeTimeoutError; } });
|
|
47
|
+
__exportStar(require("./errors"), exports);
|
package/dist/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "0.0.
|
|
1
|
+
export declare const SDK_VERSION = "0.0.55";
|
package/dist/version.js
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ReferralExchangeClient } from "../Client";
|
|
2
|
+
export declare namespace ReferralExchangeJwtClient {
|
|
3
|
+
interface Options extends Omit<ReferralExchangeClient.Options, "fetcher" | "apiKey"> {
|
|
4
|
+
privateKey: string;
|
|
5
|
+
apiKeyName: string;
|
|
6
|
+
tokenCache?: TokenCacheOptions;
|
|
7
|
+
}
|
|
8
|
+
interface TokenCacheOptions {
|
|
9
|
+
refreshBufferSeconds: number;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export declare class ReferralExchangeJwtClient extends ReferralExchangeClient {
|
|
13
|
+
constructor(options: ReferralExchangeJwtClient.Options);
|
|
14
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
+
var t = {};
|
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
+
t[p] = s[p];
|
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
+
t[p[i]] = s[p[i]];
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
22
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
23
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.ReferralExchangeJwtClient = void 0;
|
|
27
|
+
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
28
|
+
const Client_1 = require("../Client");
|
|
29
|
+
const Fetcher_1 = require("../core/fetcher/Fetcher");
|
|
30
|
+
const JWT_TTL_SECONDS = 15;
|
|
31
|
+
class ReferralExchangeJwtClient extends Client_1.ReferralExchangeClient {
|
|
32
|
+
constructor(options) {
|
|
33
|
+
const { privateKey, apiKeyName, tokenCache } = options, baseOptions = __rest(options, ["privateKey", "apiKeyName", "tokenCache"]);
|
|
34
|
+
const signer = new JwtSigner({ privateKey, issuer: apiKeyName, tokenCache });
|
|
35
|
+
const fetcher = createJwtFetcher(signer);
|
|
36
|
+
super(Object.assign(Object.assign({}, baseOptions), { fetcher }));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.ReferralExchangeJwtClient = ReferralExchangeJwtClient;
|
|
40
|
+
class JwtSigner {
|
|
41
|
+
constructor({ privateKey, issuer, tokenCache }) {
|
|
42
|
+
this.privateKey = privateKey;
|
|
43
|
+
this.issuer = issuer;
|
|
44
|
+
const cacheEnabled = tokenCache != null;
|
|
45
|
+
this.cacheEnabled = cacheEnabled;
|
|
46
|
+
this.refreshBufferSeconds = cacheEnabled ? clampRefreshBufferSeconds(tokenCache.refreshBufferSeconds) : 0;
|
|
47
|
+
}
|
|
48
|
+
getToken() {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
if (!this.cacheEnabled) {
|
|
51
|
+
return this.signToken().token;
|
|
52
|
+
}
|
|
53
|
+
const nowSeconds = Math.floor(Date.now() / 1000);
|
|
54
|
+
if (this.cachedToken != null &&
|
|
55
|
+
nowSeconds < this.cachedToken.expiresAtEpochSeconds - this.refreshBufferSeconds) {
|
|
56
|
+
return this.cachedToken.token;
|
|
57
|
+
}
|
|
58
|
+
const signedToken = this.signToken();
|
|
59
|
+
this.cachedToken = signedToken;
|
|
60
|
+
return signedToken.token;
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
signToken() {
|
|
64
|
+
return createSignedJwt({
|
|
65
|
+
privateKey: this.privateKey,
|
|
66
|
+
issuer: this.issuer,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
function createJwtFetcher(signer) {
|
|
71
|
+
return (args) => __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
var _a;
|
|
73
|
+
const token = yield signer.getToken();
|
|
74
|
+
const headers = Object.assign({}, ((_a = args.headers) !== null && _a !== void 0 ? _a : {}));
|
|
75
|
+
headers.Authorization = `Bearer ${token}`;
|
|
76
|
+
return (0, Fetcher_1.fetcherImpl)(Object.assign(Object.assign({}, args), { headers }));
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
function createSignedJwt({ privateKey, issuer }) {
|
|
80
|
+
const issuedAt = Math.floor(Date.now() / 1000);
|
|
81
|
+
const expiresAtEpochSeconds = issuedAt + JWT_TTL_SECONDS;
|
|
82
|
+
const token = jsonwebtoken_1.default.sign({}, privateKey, {
|
|
83
|
+
algorithm: "ES256",
|
|
84
|
+
issuer,
|
|
85
|
+
expiresIn: JWT_TTL_SECONDS,
|
|
86
|
+
});
|
|
87
|
+
return {
|
|
88
|
+
token,
|
|
89
|
+
expiresAtEpochSeconds,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function clampRefreshBufferSeconds(refreshBufferSeconds) {
|
|
93
|
+
const lowerBound = 0;
|
|
94
|
+
const upperBound = Math.max(JWT_TTL_SECONDS - 1, 0);
|
|
95
|
+
return Math.min(Math.max(refreshBufferSeconds, lowerBound), upperBound);
|
|
96
|
+
}
|
package/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * as ReferralExchange from "./api";
|
|
2
2
|
export { ReferralExchangeClient } from "./Client";
|
|
3
|
+
export { ReferralExchangeJwtClient } from "./wrapper/ReferralExchangeJwtClient";
|
|
3
4
|
export { ReferralExchangeEnvironment } from "./environments";
|
|
4
|
-
export
|
|
5
|
+
export * from "./errors";
|
package/index.js
CHANGED
|
@@ -32,13 +32,16 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
32
32
|
return result;
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
36
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
|
+
};
|
|
35
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.
|
|
39
|
+
exports.ReferralExchangeEnvironment = exports.ReferralExchangeJwtClient = exports.ReferralExchangeClient = exports.ReferralExchange = void 0;
|
|
37
40
|
exports.ReferralExchange = __importStar(require("./api"));
|
|
38
41
|
var Client_1 = require("./Client");
|
|
39
42
|
Object.defineProperty(exports, "ReferralExchangeClient", { enumerable: true, get: function () { return Client_1.ReferralExchangeClient; } });
|
|
43
|
+
var ReferralExchangeJwtClient_1 = require("./wrapper/ReferralExchangeJwtClient");
|
|
44
|
+
Object.defineProperty(exports, "ReferralExchangeJwtClient", { enumerable: true, get: function () { return ReferralExchangeJwtClient_1.ReferralExchangeJwtClient; } });
|
|
40
45
|
var environments_1 = require("./environments");
|
|
41
46
|
Object.defineProperty(exports, "ReferralExchangeEnvironment", { enumerable: true, get: function () { return environments_1.ReferralExchangeEnvironment; } });
|
|
42
|
-
|
|
43
|
-
Object.defineProperty(exports, "ReferralExchangeError", { enumerable: true, get: function () { return errors_1.ReferralExchangeError; } });
|
|
44
|
-
Object.defineProperty(exports, "ReferralExchangeTimeoutError", { enumerable: true, get: function () { return errors_1.ReferralExchangeTimeoutError; } });
|
|
47
|
+
__exportStar(require("./errors"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengovsg/refx-ts-sdk",
|
|
3
|
-
"version": "0.0.0-develop-alpha-
|
|
3
|
+
"version": "0.0.0-develop-alpha-1763368419",
|
|
4
4
|
"private": false,
|
|
5
5
|
"repository": "https://github.com/opengovsg/refer-ts-sdk",
|
|
6
6
|
"main": "./index.js",
|
|
@@ -9,12 +9,14 @@
|
|
|
9
9
|
"format": "prettier . --write --ignore-unknown",
|
|
10
10
|
"build": "tsc",
|
|
11
11
|
"prepack": "cp -rv dist/. .",
|
|
12
|
+
"pretest": "yarn build",
|
|
12
13
|
"test": "jest"
|
|
13
14
|
},
|
|
14
15
|
"dependencies": {
|
|
15
16
|
"url-join": "4.0.1",
|
|
16
17
|
"form-data": "^4.0.0",
|
|
17
18
|
"formdata-node": "^6.0.3",
|
|
19
|
+
"jsonwebtoken": "^9.0.2",
|
|
18
20
|
"node-fetch": "^2.7.0",
|
|
19
21
|
"qs": "^6.13.1",
|
|
20
22
|
"readable-stream": "^4.5.2"
|
|
@@ -23,6 +25,7 @@
|
|
|
23
25
|
"@types/url-join": "4.0.1",
|
|
24
26
|
"@types/qs": "^6.9.17",
|
|
25
27
|
"@types/node-fetch": "^2.6.12",
|
|
28
|
+
"@types/jsonwebtoken": "^9.0.7",
|
|
26
29
|
"@types/readable-stream": "^4.0.18",
|
|
27
30
|
"webpack": "^5.97.1",
|
|
28
31
|
"ts-loader": "^9.5.1",
|
|
@@ -37,6 +40,7 @@
|
|
|
37
40
|
"browser": {
|
|
38
41
|
"fs": false,
|
|
39
42
|
"os": false,
|
|
40
|
-
"path": false
|
|
43
|
+
"path": false,
|
|
44
|
+
"jsonwebtoken": "./dist/browser/jsonwebtoken-stub.js"
|
|
41
45
|
}
|
|
42
46
|
}
|
package/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "0.0.
|
|
1
|
+
export declare const SDK_VERSION = "0.0.55";
|
package/version.js
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ReferralExchangeClient } from "../Client";
|
|
2
|
+
export declare namespace ReferralExchangeJwtClient {
|
|
3
|
+
interface Options extends Omit<ReferralExchangeClient.Options, "fetcher" | "apiKey"> {
|
|
4
|
+
privateKey: string;
|
|
5
|
+
apiKeyName: string;
|
|
6
|
+
tokenCache?: TokenCacheOptions;
|
|
7
|
+
}
|
|
8
|
+
interface TokenCacheOptions {
|
|
9
|
+
refreshBufferSeconds: number;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export declare class ReferralExchangeJwtClient extends ReferralExchangeClient {
|
|
13
|
+
constructor(options: ReferralExchangeJwtClient.Options);
|
|
14
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
+
var t = {};
|
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
+
t[p] = s[p];
|
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
+
t[p[i]] = s[p[i]];
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
22
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
23
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.ReferralExchangeJwtClient = void 0;
|
|
27
|
+
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
28
|
+
const Client_1 = require("../Client");
|
|
29
|
+
const Fetcher_1 = require("../core/fetcher/Fetcher");
|
|
30
|
+
const JWT_TTL_SECONDS = 15;
|
|
31
|
+
class ReferralExchangeJwtClient extends Client_1.ReferralExchangeClient {
|
|
32
|
+
constructor(options) {
|
|
33
|
+
const { privateKey, apiKeyName, tokenCache } = options, baseOptions = __rest(options, ["privateKey", "apiKeyName", "tokenCache"]);
|
|
34
|
+
const signer = new JwtSigner({ privateKey, issuer: apiKeyName, tokenCache });
|
|
35
|
+
const fetcher = createJwtFetcher(signer);
|
|
36
|
+
super(Object.assign(Object.assign({}, baseOptions), { fetcher }));
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.ReferralExchangeJwtClient = ReferralExchangeJwtClient;
|
|
40
|
+
class JwtSigner {
|
|
41
|
+
constructor({ privateKey, issuer, tokenCache }) {
|
|
42
|
+
this.privateKey = privateKey;
|
|
43
|
+
this.issuer = issuer;
|
|
44
|
+
const cacheEnabled = tokenCache != null;
|
|
45
|
+
this.cacheEnabled = cacheEnabled;
|
|
46
|
+
this.refreshBufferSeconds = cacheEnabled ? clampRefreshBufferSeconds(tokenCache.refreshBufferSeconds) : 0;
|
|
47
|
+
}
|
|
48
|
+
getToken() {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
if (!this.cacheEnabled) {
|
|
51
|
+
return this.signToken().token;
|
|
52
|
+
}
|
|
53
|
+
const nowSeconds = Math.floor(Date.now() / 1000);
|
|
54
|
+
if (this.cachedToken != null &&
|
|
55
|
+
nowSeconds < this.cachedToken.expiresAtEpochSeconds - this.refreshBufferSeconds) {
|
|
56
|
+
return this.cachedToken.token;
|
|
57
|
+
}
|
|
58
|
+
const signedToken = this.signToken();
|
|
59
|
+
this.cachedToken = signedToken;
|
|
60
|
+
return signedToken.token;
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
signToken() {
|
|
64
|
+
return createSignedJwt({
|
|
65
|
+
privateKey: this.privateKey,
|
|
66
|
+
issuer: this.issuer,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
function createJwtFetcher(signer) {
|
|
71
|
+
return (args) => __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
var _a;
|
|
73
|
+
const token = yield signer.getToken();
|
|
74
|
+
const headers = Object.assign({}, ((_a = args.headers) !== null && _a !== void 0 ? _a : {}));
|
|
75
|
+
headers.Authorization = `Bearer ${token}`;
|
|
76
|
+
return (0, Fetcher_1.fetcherImpl)(Object.assign(Object.assign({}, args), { headers }));
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
function createSignedJwt({ privateKey, issuer }) {
|
|
80
|
+
const issuedAt = Math.floor(Date.now() / 1000);
|
|
81
|
+
const expiresAtEpochSeconds = issuedAt + JWT_TTL_SECONDS;
|
|
82
|
+
const token = jsonwebtoken_1.default.sign({}, privateKey, {
|
|
83
|
+
algorithm: "ES256",
|
|
84
|
+
issuer,
|
|
85
|
+
expiresIn: JWT_TTL_SECONDS,
|
|
86
|
+
});
|
|
87
|
+
return {
|
|
88
|
+
token,
|
|
89
|
+
expiresAtEpochSeconds,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function clampRefreshBufferSeconds(refreshBufferSeconds) {
|
|
93
|
+
const lowerBound = 0;
|
|
94
|
+
const upperBound = Math.max(JWT_TTL_SECONDS - 1, 0);
|
|
95
|
+
return Math.min(Math.max(refreshBufferSeconds, lowerBound), upperBound);
|
|
96
|
+
}
|