@niledatabase/server 4.0.1 → 4.0.2-alpha.2
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 +19 -6
- package/dist/index.d.ts +19 -6
- package/dist/index.js +31 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +31 -5
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -108,8 +108,20 @@ type Database = {
|
|
|
108
108
|
interface CreateBasicUserRequest {
|
|
109
109
|
email: string;
|
|
110
110
|
password: string;
|
|
111
|
-
|
|
112
|
-
|
|
111
|
+
name?: string;
|
|
112
|
+
familyName?: string;
|
|
113
|
+
givenName?: string;
|
|
114
|
+
picture?: string;
|
|
115
|
+
newTenantName?: string;
|
|
116
|
+
tenantId?: string;
|
|
117
|
+
}
|
|
118
|
+
interface CreateTenantUserRequest {
|
|
119
|
+
email: string;
|
|
120
|
+
password: string;
|
|
121
|
+
name?: string;
|
|
122
|
+
familyName?: string;
|
|
123
|
+
givenName?: string;
|
|
124
|
+
picture?: string;
|
|
113
125
|
}
|
|
114
126
|
declare const LoginUserResponseTokenTypeEnum: {
|
|
115
127
|
readonly AccessToken: "ACCESS_TOKEN";
|
|
@@ -261,13 +273,13 @@ declare class Tenants extends Config {
|
|
|
261
273
|
declare class Users extends Config {
|
|
262
274
|
headers?: Headers;
|
|
263
275
|
constructor(config: Config, headers?: Headers);
|
|
264
|
-
|
|
276
|
+
usersUrl(user: CreateBasicUserRequest): string;
|
|
265
277
|
get tenantUsersUrl(): string;
|
|
266
278
|
get linkUsersUrl(): string;
|
|
267
279
|
get tenantUserUrl(): string;
|
|
268
280
|
handleHeaders(init?: RequestInit): RequestInit | undefined;
|
|
269
|
-
createUser: <T = User | Response>(
|
|
270
|
-
createTenantUser: <T = User | Response>(req: NileRequest<
|
|
281
|
+
createUser: <T = User | Response>(user: CreateBasicUserRequest, init?: RequestInit) => Promise<T>;
|
|
282
|
+
createTenantUser: <T = User | Response>(req: NileRequest<CreateTenantUserRequest>, init?: RequestInit) => Promise<T>;
|
|
271
283
|
updateUser: <T = User[] | Response>(req: NileRequest<Partial<Omit<User, "email" | "tenants" | "created" | "updated">>>, init?: RequestInit) => Promise<T>;
|
|
272
284
|
listUsers: <T = User[] | Response>(req: NileRequest<void> | Headers, init?: RequestInit) => Promise<T>;
|
|
273
285
|
linkUser: <T = User | Response>(req: NileRequest<{
|
|
@@ -308,6 +320,7 @@ declare class Api {
|
|
|
308
320
|
resetHeaders: (headers?: Headers) => void;
|
|
309
321
|
set headers(headers: Headers | Record<string, string>);
|
|
310
322
|
get headers(): Headers | undefined;
|
|
323
|
+
getCookie(req?: Request | Headers): string | null | undefined;
|
|
311
324
|
login: (payload: {
|
|
312
325
|
email: string;
|
|
313
326
|
password: string;
|
|
@@ -340,4 +353,4 @@ declare class Server {
|
|
|
340
353
|
}
|
|
341
354
|
declare function create(config?: ServerConfig): Promise<Server>;
|
|
342
355
|
|
|
343
|
-
export { type ActiveSession, type AfterCreate, type CreateBasicUserRequest, type Database, type JWT, type LoggerType, type LoginUserResponse, type LoginUserResponseToken, LoginUserResponseTokenTypeEnum, create as Nile, type NileDb, type NilePoolConfig, type Opts, Server, type ServerConfig, type Tenant, type User };
|
|
356
|
+
export { type ActiveSession, type AfterCreate, type CreateBasicUserRequest, type CreateTenantUserRequest, type Database, type JWT, type LoggerType, type LoginUserResponse, type LoginUserResponseToken, LoginUserResponseTokenTypeEnum, create as Nile, type NileDb, type NilePoolConfig, type Opts, Server, type ServerConfig, type Tenant, type User };
|
package/dist/index.d.ts
CHANGED
|
@@ -108,8 +108,20 @@ type Database = {
|
|
|
108
108
|
interface CreateBasicUserRequest {
|
|
109
109
|
email: string;
|
|
110
110
|
password: string;
|
|
111
|
-
|
|
112
|
-
|
|
111
|
+
name?: string;
|
|
112
|
+
familyName?: string;
|
|
113
|
+
givenName?: string;
|
|
114
|
+
picture?: string;
|
|
115
|
+
newTenantName?: string;
|
|
116
|
+
tenantId?: string;
|
|
117
|
+
}
|
|
118
|
+
interface CreateTenantUserRequest {
|
|
119
|
+
email: string;
|
|
120
|
+
password: string;
|
|
121
|
+
name?: string;
|
|
122
|
+
familyName?: string;
|
|
123
|
+
givenName?: string;
|
|
124
|
+
picture?: string;
|
|
113
125
|
}
|
|
114
126
|
declare const LoginUserResponseTokenTypeEnum: {
|
|
115
127
|
readonly AccessToken: "ACCESS_TOKEN";
|
|
@@ -261,13 +273,13 @@ declare class Tenants extends Config {
|
|
|
261
273
|
declare class Users extends Config {
|
|
262
274
|
headers?: Headers;
|
|
263
275
|
constructor(config: Config, headers?: Headers);
|
|
264
|
-
|
|
276
|
+
usersUrl(user: CreateBasicUserRequest): string;
|
|
265
277
|
get tenantUsersUrl(): string;
|
|
266
278
|
get linkUsersUrl(): string;
|
|
267
279
|
get tenantUserUrl(): string;
|
|
268
280
|
handleHeaders(init?: RequestInit): RequestInit | undefined;
|
|
269
|
-
createUser: <T = User | Response>(
|
|
270
|
-
createTenantUser: <T = User | Response>(req: NileRequest<
|
|
281
|
+
createUser: <T = User | Response>(user: CreateBasicUserRequest, init?: RequestInit) => Promise<T>;
|
|
282
|
+
createTenantUser: <T = User | Response>(req: NileRequest<CreateTenantUserRequest>, init?: RequestInit) => Promise<T>;
|
|
271
283
|
updateUser: <T = User[] | Response>(req: NileRequest<Partial<Omit<User, "email" | "tenants" | "created" | "updated">>>, init?: RequestInit) => Promise<T>;
|
|
272
284
|
listUsers: <T = User[] | Response>(req: NileRequest<void> | Headers, init?: RequestInit) => Promise<T>;
|
|
273
285
|
linkUser: <T = User | Response>(req: NileRequest<{
|
|
@@ -308,6 +320,7 @@ declare class Api {
|
|
|
308
320
|
resetHeaders: (headers?: Headers) => void;
|
|
309
321
|
set headers(headers: Headers | Record<string, string>);
|
|
310
322
|
get headers(): Headers | undefined;
|
|
323
|
+
getCookie(req?: Request | Headers): string | null | undefined;
|
|
311
324
|
login: (payload: {
|
|
312
325
|
email: string;
|
|
313
326
|
password: string;
|
|
@@ -340,4 +353,4 @@ declare class Server {
|
|
|
340
353
|
}
|
|
341
354
|
declare function create(config?: ServerConfig): Promise<Server>;
|
|
342
355
|
|
|
343
|
-
export { type ActiveSession, type AfterCreate, type CreateBasicUserRequest, type Database, type JWT, type LoggerType, type LoginUserResponse, type LoginUserResponseToken, LoginUserResponseTokenTypeEnum, create as Nile, type NileDb, type NilePoolConfig, type Opts, Server, type ServerConfig, type Tenant, type User };
|
|
356
|
+
export { type ActiveSession, type AfterCreate, type CreateBasicUserRequest, type CreateTenantUserRequest, type Database, type JWT, type LoggerType, type LoginUserResponse, type LoginUserResponseToken, LoginUserResponseTokenTypeEnum, create as Nile, type NileDb, type NilePoolConfig, type Opts, Server, type ServerConfig, type Tenant, type User };
|
package/dist/index.js
CHANGED
|
@@ -1988,7 +1988,7 @@ function serverLogin(config, handlers) {
|
|
|
1988
1988
|
if (!authCookie) {
|
|
1989
1989
|
throw new Error("authentication failed");
|
|
1990
1990
|
}
|
|
1991
|
-
const
|
|
1991
|
+
const token = parseToken(loginRes?.headers);
|
|
1992
1992
|
if (!token) {
|
|
1993
1993
|
error("Unable to obtain auth token", { authCookie });
|
|
1994
1994
|
throw new Error("Server login failed");
|
|
@@ -2001,6 +2001,17 @@ function serverLogin(config, handlers) {
|
|
|
2001
2001
|
return [headers, loginRes];
|
|
2002
2002
|
};
|
|
2003
2003
|
}
|
|
2004
|
+
function parseToken(headers) {
|
|
2005
|
+
let authCookie = headers?.get("set-cookie");
|
|
2006
|
+
if (!authCookie) {
|
|
2007
|
+
authCookie = headers?.get("cookie");
|
|
2008
|
+
}
|
|
2009
|
+
if (!authCookie) {
|
|
2010
|
+
return void 0;
|
|
2011
|
+
}
|
|
2012
|
+
const [, token] = /((__Secure-)?nile\.session-token=[^;]+)/.exec(authCookie) ?? [];
|
|
2013
|
+
return token;
|
|
2014
|
+
}
|
|
2004
2015
|
var Auth = class extends Config {
|
|
2005
2016
|
headers;
|
|
2006
2017
|
resetHeaders;
|
|
@@ -2247,8 +2258,15 @@ var Users = class extends Config {
|
|
|
2247
2258
|
super(config);
|
|
2248
2259
|
this.headers = headers;
|
|
2249
2260
|
}
|
|
2250
|
-
|
|
2251
|
-
|
|
2261
|
+
usersUrl(user) {
|
|
2262
|
+
const params = new URLSearchParams();
|
|
2263
|
+
if (user.newTenantName) {
|
|
2264
|
+
params.set("newTenantName", user.newTenantName);
|
|
2265
|
+
}
|
|
2266
|
+
if (user.tenantId) {
|
|
2267
|
+
params.set("tenantId", user.tenantId);
|
|
2268
|
+
}
|
|
2269
|
+
return `/users?${params.size > 0 ? params : ""}`;
|
|
2252
2270
|
}
|
|
2253
2271
|
get tenantUsersUrl() {
|
|
2254
2272
|
return `/tenants/${this.tenantId ?? "{tenantId}"}/users`;
|
|
@@ -2273,10 +2291,10 @@ var Users = class extends Config {
|
|
|
2273
2291
|
}
|
|
2274
2292
|
return void 0;
|
|
2275
2293
|
}
|
|
2276
|
-
createUser = async (
|
|
2294
|
+
createUser = async (user, init) => {
|
|
2277
2295
|
const _requester = new Requester(this);
|
|
2278
2296
|
const _init = this.handleHeaders(init);
|
|
2279
|
-
return await _requester.post(
|
|
2297
|
+
return await _requester.post(user, this.usersUrl(user), _init);
|
|
2280
2298
|
};
|
|
2281
2299
|
createTenantUser = async (req, init) => {
|
|
2282
2300
|
const _requester = new Requester(this);
|
|
@@ -2450,6 +2468,14 @@ var Api = class {
|
|
|
2450
2468
|
get headers() {
|
|
2451
2469
|
return this.#headers;
|
|
2452
2470
|
}
|
|
2471
|
+
getCookie(req) {
|
|
2472
|
+
if (req instanceof Headers) {
|
|
2473
|
+
return parseToken(req);
|
|
2474
|
+
} else if (req instanceof Request) {
|
|
2475
|
+
return parseToken(req.headers);
|
|
2476
|
+
}
|
|
2477
|
+
return null;
|
|
2478
|
+
}
|
|
2453
2479
|
login = async (payload, config) => {
|
|
2454
2480
|
const [headers, loginRes] = await serverLogin(
|
|
2455
2481
|
this.config,
|