@kedaruma/revlm-client 1.0.13 → 1.0.15
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/dist/index.d.mts +0 -6
- package/dist/index.d.ts +0 -6
- package/dist/index.js +2 -47
- package/dist/index.mjs +2 -47
- package/package.json +2 -4
package/dist/index.d.mts
CHANGED
|
@@ -174,11 +174,6 @@ type RevlmOptions = {
|
|
|
174
174
|
provisionalAuthDomain?: string;
|
|
175
175
|
autoSetToken?: boolean;
|
|
176
176
|
autoRefreshOn401?: boolean;
|
|
177
|
-
sigv4SecretKey?: string;
|
|
178
|
-
sigv4AccessKey?: string;
|
|
179
|
-
sigv4Region?: string;
|
|
180
|
-
sigv4Service?: string;
|
|
181
|
-
sigv4Enabled?: boolean;
|
|
182
177
|
};
|
|
183
178
|
type RevlmResponse<T = any> = {
|
|
184
179
|
ok: boolean;
|
|
@@ -198,7 +193,6 @@ declare class Revlm {
|
|
|
198
193
|
private provisionalAuthDomain;
|
|
199
194
|
private autoSetToken;
|
|
200
195
|
private autoRefreshOn401;
|
|
201
|
-
private sigv4Signer;
|
|
202
196
|
constructor(baseUrl: string, opts?: RevlmOptions);
|
|
203
197
|
setToken(token: string): void;
|
|
204
198
|
getToken(): string | undefined;
|
package/dist/index.d.ts
CHANGED
|
@@ -174,11 +174,6 @@ type RevlmOptions = {
|
|
|
174
174
|
provisionalAuthDomain?: string;
|
|
175
175
|
autoSetToken?: boolean;
|
|
176
176
|
autoRefreshOn401?: boolean;
|
|
177
|
-
sigv4SecretKey?: string;
|
|
178
|
-
sigv4AccessKey?: string;
|
|
179
|
-
sigv4Region?: string;
|
|
180
|
-
sigv4Service?: string;
|
|
181
|
-
sigv4Enabled?: boolean;
|
|
182
177
|
};
|
|
183
178
|
type RevlmResponse<T = any> = {
|
|
184
179
|
ok: boolean;
|
|
@@ -198,7 +193,6 @@ declare class Revlm {
|
|
|
198
193
|
private provisionalAuthDomain;
|
|
199
194
|
private autoSetToken;
|
|
200
195
|
private autoRefreshOn401;
|
|
201
|
-
private sigv4Signer;
|
|
202
196
|
constructor(baseUrl: string, opts?: RevlmOptions);
|
|
203
197
|
setToken(token: string): void;
|
|
204
198
|
getToken(): string | undefined;
|
package/dist/index.js
CHANGED
|
@@ -46,8 +46,6 @@ module.exports = __toCommonJS(index_exports);
|
|
|
46
46
|
// src/Revlm.ts
|
|
47
47
|
var import_bson = require("bson");
|
|
48
48
|
var import_revlm_shared = require("@kedaruma/revlm-shared");
|
|
49
|
-
var import_signature_v4 = require("@aws-sdk/signature-v4");
|
|
50
|
-
var import_sha256_js = require("@aws-crypto/sha256-js");
|
|
51
49
|
|
|
52
50
|
// src/MdbCollection.ts
|
|
53
51
|
var MdbCollection = class {
|
|
@@ -158,7 +156,6 @@ var Revlm = class {
|
|
|
158
156
|
provisionalAuthDomain;
|
|
159
157
|
autoSetToken;
|
|
160
158
|
autoRefreshOn401;
|
|
161
|
-
sigv4Signer;
|
|
162
159
|
constructor(baseUrl, opts = {}) {
|
|
163
160
|
if (!baseUrl) throw new Error("baseUrl is required");
|
|
164
161
|
this.baseUrl = baseUrl.replace(/\/$/, "");
|
|
@@ -169,24 +166,6 @@ var Revlm = class {
|
|
|
169
166
|
this.provisionalAuthDomain = opts.provisionalAuthDomain || "";
|
|
170
167
|
this.autoSetToken = opts.autoSetToken ?? true;
|
|
171
168
|
this.autoRefreshOn401 = opts.autoRefreshOn401 || false;
|
|
172
|
-
const sigv4SecretKey = opts.sigv4SecretKey || process.env.REVLM_SIGV4_SECRET_KEY;
|
|
173
|
-
const sigv4AccessKey = opts.sigv4AccessKey || process.env.REVLM_SIGV4_ACCESS_KEY || "revlm-access";
|
|
174
|
-
const sigv4Region = opts.sigv4Region || process.env.REVLM_SIGV4_REGION || "revlm";
|
|
175
|
-
const sigv4Service = opts.sigv4Service || process.env.REVLM_SIGV4_SERVICE || "revlm";
|
|
176
|
-
const sigv4Enabled = opts.sigv4Enabled ?? true;
|
|
177
|
-
if (sigv4Enabled) {
|
|
178
|
-
if (!sigv4SecretKey) {
|
|
179
|
-
throw new Error("SigV4 is enabled but REVLM_SIGV4_SECRET_KEY or opts.sigv4SecretKey is not provided");
|
|
180
|
-
}
|
|
181
|
-
this.sigv4Signer = new import_signature_v4.SignatureV4({
|
|
182
|
-
credentials: { accessKeyId: sigv4AccessKey, secretAccessKey: sigv4SecretKey },
|
|
183
|
-
region: sigv4Region,
|
|
184
|
-
service: sigv4Service,
|
|
185
|
-
sha256: import_sha256_js.Sha256
|
|
186
|
-
});
|
|
187
|
-
} else {
|
|
188
|
-
this.sigv4Signer = null;
|
|
189
|
-
}
|
|
190
169
|
if (!this.fetchImpl) {
|
|
191
170
|
throw new Error("No fetch implementation available. Provide fetchImpl in options or run in Node 18+ with global fetch.");
|
|
192
171
|
}
|
|
@@ -259,32 +238,8 @@ var Revlm = class {
|
|
|
259
238
|
const pathname = path.startsWith("http") ? new URL(path).pathname : path;
|
|
260
239
|
return pathname.includes("/login") || pathname.includes("/provisional-login") || pathname.includes("/refresh-token") || pathname.includes("/verify-token");
|
|
261
240
|
}
|
|
262
|
-
async signIfNeeded(
|
|
263
|
-
|
|
264
|
-
return { signedUrl: url, signedHeaders: headers };
|
|
265
|
-
}
|
|
266
|
-
const u = new URL(url);
|
|
267
|
-
const signingHeaders = {
|
|
268
|
-
host: u.host,
|
|
269
|
-
...headers
|
|
270
|
-
};
|
|
271
|
-
const reqToSign = {
|
|
272
|
-
method,
|
|
273
|
-
protocol: u.protocol,
|
|
274
|
-
path: u.pathname + (u.search || ""),
|
|
275
|
-
hostname: u.hostname,
|
|
276
|
-
headers: signingHeaders,
|
|
277
|
-
body: body ?? ""
|
|
278
|
-
};
|
|
279
|
-
if (u.port) {
|
|
280
|
-
reqToSign.port = Number(u.port);
|
|
281
|
-
}
|
|
282
|
-
const signed = await this.sigv4Signer.sign(reqToSign);
|
|
283
|
-
const signedHeaders = {};
|
|
284
|
-
Object.entries(signed.headers || {}).forEach(([k, v]) => {
|
|
285
|
-
signedHeaders[k] = Array.isArray(v) ? v.join(",") : String(v);
|
|
286
|
-
});
|
|
287
|
-
return { signedUrl: url, signedHeaders };
|
|
241
|
+
async signIfNeeded(_url, _method, headers, _body) {
|
|
242
|
+
return { signedUrl: _url, signedHeaders: headers };
|
|
288
243
|
}
|
|
289
244
|
async requestWithRetry(path, method = "POST", body, opts = { allowAuthRetry: false, retrying: false }) {
|
|
290
245
|
const { allowAuthRetry, retrying } = opts;
|
package/dist/index.mjs
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
// src/Revlm.ts
|
|
2
2
|
import { EJSON } from "bson";
|
|
3
3
|
import { AuthClient } from "@kedaruma/revlm-shared";
|
|
4
|
-
import { SignatureV4 } from "@aws-sdk/signature-v4";
|
|
5
|
-
import { Sha256 } from "@aws-crypto/sha256-js";
|
|
6
4
|
|
|
7
5
|
// src/MdbCollection.ts
|
|
8
6
|
var MdbCollection = class {
|
|
@@ -113,7 +111,6 @@ var Revlm = class {
|
|
|
113
111
|
provisionalAuthDomain;
|
|
114
112
|
autoSetToken;
|
|
115
113
|
autoRefreshOn401;
|
|
116
|
-
sigv4Signer;
|
|
117
114
|
constructor(baseUrl, opts = {}) {
|
|
118
115
|
if (!baseUrl) throw new Error("baseUrl is required");
|
|
119
116
|
this.baseUrl = baseUrl.replace(/\/$/, "");
|
|
@@ -124,24 +121,6 @@ var Revlm = class {
|
|
|
124
121
|
this.provisionalAuthDomain = opts.provisionalAuthDomain || "";
|
|
125
122
|
this.autoSetToken = opts.autoSetToken ?? true;
|
|
126
123
|
this.autoRefreshOn401 = opts.autoRefreshOn401 || false;
|
|
127
|
-
const sigv4SecretKey = opts.sigv4SecretKey || process.env.REVLM_SIGV4_SECRET_KEY;
|
|
128
|
-
const sigv4AccessKey = opts.sigv4AccessKey || process.env.REVLM_SIGV4_ACCESS_KEY || "revlm-access";
|
|
129
|
-
const sigv4Region = opts.sigv4Region || process.env.REVLM_SIGV4_REGION || "revlm";
|
|
130
|
-
const sigv4Service = opts.sigv4Service || process.env.REVLM_SIGV4_SERVICE || "revlm";
|
|
131
|
-
const sigv4Enabled = opts.sigv4Enabled ?? true;
|
|
132
|
-
if (sigv4Enabled) {
|
|
133
|
-
if (!sigv4SecretKey) {
|
|
134
|
-
throw new Error("SigV4 is enabled but REVLM_SIGV4_SECRET_KEY or opts.sigv4SecretKey is not provided");
|
|
135
|
-
}
|
|
136
|
-
this.sigv4Signer = new SignatureV4({
|
|
137
|
-
credentials: { accessKeyId: sigv4AccessKey, secretAccessKey: sigv4SecretKey },
|
|
138
|
-
region: sigv4Region,
|
|
139
|
-
service: sigv4Service,
|
|
140
|
-
sha256: Sha256
|
|
141
|
-
});
|
|
142
|
-
} else {
|
|
143
|
-
this.sigv4Signer = null;
|
|
144
|
-
}
|
|
145
124
|
if (!this.fetchImpl) {
|
|
146
125
|
throw new Error("No fetch implementation available. Provide fetchImpl in options or run in Node 18+ with global fetch.");
|
|
147
126
|
}
|
|
@@ -214,32 +193,8 @@ var Revlm = class {
|
|
|
214
193
|
const pathname = path.startsWith("http") ? new URL(path).pathname : path;
|
|
215
194
|
return pathname.includes("/login") || pathname.includes("/provisional-login") || pathname.includes("/refresh-token") || pathname.includes("/verify-token");
|
|
216
195
|
}
|
|
217
|
-
async signIfNeeded(
|
|
218
|
-
|
|
219
|
-
return { signedUrl: url, signedHeaders: headers };
|
|
220
|
-
}
|
|
221
|
-
const u = new URL(url);
|
|
222
|
-
const signingHeaders = {
|
|
223
|
-
host: u.host,
|
|
224
|
-
...headers
|
|
225
|
-
};
|
|
226
|
-
const reqToSign = {
|
|
227
|
-
method,
|
|
228
|
-
protocol: u.protocol,
|
|
229
|
-
path: u.pathname + (u.search || ""),
|
|
230
|
-
hostname: u.hostname,
|
|
231
|
-
headers: signingHeaders,
|
|
232
|
-
body: body ?? ""
|
|
233
|
-
};
|
|
234
|
-
if (u.port) {
|
|
235
|
-
reqToSign.port = Number(u.port);
|
|
236
|
-
}
|
|
237
|
-
const signed = await this.sigv4Signer.sign(reqToSign);
|
|
238
|
-
const signedHeaders = {};
|
|
239
|
-
Object.entries(signed.headers || {}).forEach(([k, v]) => {
|
|
240
|
-
signedHeaders[k] = Array.isArray(v) ? v.join(",") : String(v);
|
|
241
|
-
});
|
|
242
|
-
return { signedUrl: url, signedHeaders };
|
|
196
|
+
async signIfNeeded(_url, _method, headers, _body) {
|
|
197
|
+
return { signedUrl: _url, signedHeaders: headers };
|
|
243
198
|
}
|
|
244
199
|
async requestWithRetry(path, method = "POST", body, opts = { allowAuthRetry: false, retrying: false }) {
|
|
245
200
|
const { allowAuthRetry, retrying } = opts;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kedaruma/revlm-client",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.15",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "TypeScript client SDK for talking to the Revlm server replacement for MongoDB Realm.",
|
|
6
6
|
"keywords": [
|
|
@@ -36,11 +36,9 @@
|
|
|
36
36
|
"access": "public"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@aws-sdk/signature-v4": "^3.374.0",
|
|
40
|
-
"@aws-crypto/sha256-js": "^5.2.0",
|
|
41
39
|
"bson": "^6.10.4",
|
|
42
40
|
"dotenv": "^17.2.3",
|
|
43
|
-
"@kedaruma/revlm-shared": "1.0.
|
|
41
|
+
"@kedaruma/revlm-shared": "1.0.5"
|
|
44
42
|
},
|
|
45
43
|
"devDependencies": {
|
|
46
44
|
"tsup": "^8.5.1"
|