@loomcore/common 0.0.22 → 0.0.25
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/models/authorization.model.d.ts +3 -3
- package/dist/models/authorization.model.js +3 -3
- package/dist/models/login-response.model.d.ts +9 -1
- package/dist/models/user-context.model.d.ts +9 -1
- package/dist/models/user.model.d.ts +10 -6
- package/dist/models/user.model.js +19 -3
- package/package.json +1 -1
|
@@ -3,9 +3,9 @@ export interface IAuthorization extends IEntity, IAuditable {
|
|
|
3
3
|
feature: string;
|
|
4
4
|
config?: object;
|
|
5
5
|
}
|
|
6
|
-
export declare const
|
|
6
|
+
export declare const AuthorizationSchema: import("@sinclair/typebox").TObject<{
|
|
7
7
|
feature: import("@sinclair/typebox").TString;
|
|
8
8
|
config: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{}>>;
|
|
9
9
|
}>;
|
|
10
|
-
export declare const
|
|
11
|
-
export declare const
|
|
10
|
+
export declare const AuthorizationModelSpec: import("./model-spec.interface.js").IModelSpec<import("@sinclair/typebox").TSchema>;
|
|
11
|
+
export declare const PublicAuthorizationSchema: import("@sinclair/typebox").TObject<{}>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Type } from "@sinclair/typebox";
|
|
2
2
|
import { entityUtils } from "../utils/index.js";
|
|
3
|
-
export const
|
|
3
|
+
export const AuthorizationSchema = Type.Object({
|
|
4
4
|
feature: Type.String({ minLength: 1 }),
|
|
5
5
|
config: Type.Optional(Type.Object({}))
|
|
6
6
|
});
|
|
7
|
-
export const
|
|
8
|
-
export const
|
|
7
|
+
export const AuthorizationModelSpec = entityUtils.getModelSpec(AuthorizationSchema, { isAuditable: true });
|
|
8
|
+
export const PublicAuthorizationSchema = Type.Omit(AuthorizationModelSpec.fullSchema, ['_id', '_orgId', '_created', '_createdBy', '_updated', '_updatedBy']);
|
|
@@ -11,7 +11,15 @@ export declare const LoginResponseSchema: import("@sinclair/typebox").TObject<{
|
|
|
11
11
|
expiresOn: import("@sinclair/typebox").TNumber;
|
|
12
12
|
}>;
|
|
13
13
|
userContext: import("@sinclair/typebox").TObject<{
|
|
14
|
-
user: import("@sinclair/typebox").TObject<{
|
|
14
|
+
user: import("@sinclair/typebox").TObject<{
|
|
15
|
+
email: import("@sinclair/typebox").TString;
|
|
16
|
+
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
17
|
+
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
18
|
+
displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
19
|
+
authorizations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{}>>>;
|
|
20
|
+
_lastLoggedIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
21
|
+
_lastPasswordChange: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
22
|
+
}>;
|
|
15
23
|
_orgId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
16
24
|
}>;
|
|
17
25
|
}>;
|
|
@@ -5,7 +5,15 @@ export interface IUserContext {
|
|
|
5
5
|
}
|
|
6
6
|
export declare const EmptyUserContext: IUserContext;
|
|
7
7
|
export declare const UserContextSchema: import("@sinclair/typebox").TObject<{
|
|
8
|
-
user: import("@sinclair/typebox").TObject<{
|
|
8
|
+
user: import("@sinclair/typebox").TObject<{
|
|
9
|
+
email: import("@sinclair/typebox").TString;
|
|
10
|
+
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
11
|
+
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
12
|
+
displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
13
|
+
authorizations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{}>>>;
|
|
14
|
+
_lastLoggedIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
15
|
+
_lastPasswordChange: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
16
|
+
}>;
|
|
9
17
|
_orgId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
10
18
|
}>;
|
|
11
19
|
export declare const UserContextSpec: import("./model-spec.interface.js").IModelSpec<import("@sinclair/typebox").TSchema>;
|
|
@@ -7,7 +7,7 @@ export interface IUser extends IAuditable, IEntity {
|
|
|
7
7
|
lastName?: string;
|
|
8
8
|
displayName?: string;
|
|
9
9
|
password: string;
|
|
10
|
-
authorizations
|
|
10
|
+
authorizations?: IAuthorization[];
|
|
11
11
|
_lastLoggedIn?: Date;
|
|
12
12
|
_lastPasswordChange?: Date;
|
|
13
13
|
}
|
|
@@ -23,12 +23,16 @@ export declare const UserSchema: import("@sinclair/typebox").TObject<{
|
|
|
23
23
|
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
24
24
|
displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
25
25
|
password: import("@sinclair/typebox").TString;
|
|
26
|
-
authorizations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
27
|
-
feature: import("@sinclair/typebox").TString;
|
|
28
|
-
config: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{}>>;
|
|
29
|
-
}>>;
|
|
30
26
|
_lastLoggedIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
31
27
|
_lastPasswordChange: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
32
28
|
}>;
|
|
33
29
|
export declare const UserSpec: import("./model-spec.interface.js").IModelSpec<import("@sinclair/typebox").TSchema>;
|
|
34
|
-
export declare const PublicUserSchema: import("@sinclair/typebox").TObject<{
|
|
30
|
+
export declare const PublicUserSchema: import("@sinclair/typebox").TObject<{
|
|
31
|
+
email: import("@sinclair/typebox").TString;
|
|
32
|
+
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
33
|
+
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
34
|
+
displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
35
|
+
authorizations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{}>>>;
|
|
36
|
+
_lastLoggedIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
37
|
+
_lastPasswordChange: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
38
|
+
}>;
|
|
@@ -2,7 +2,7 @@ import { TypeboxIsoDate } from '../validation/typebox-extensions.js';
|
|
|
2
2
|
import { Type } from '@sinclair/typebox';
|
|
3
3
|
import { entityUtils } from '../utils/entity.utils.js';
|
|
4
4
|
import { TypeCompiler } from '@sinclair/typebox/compiler';
|
|
5
|
-
import {
|
|
5
|
+
import { PublicAuthorizationSchema } from './authorization.model.js';
|
|
6
6
|
export const UserPasswordSchema = Type.Object({
|
|
7
7
|
password: Type.String({
|
|
8
8
|
title: 'Password',
|
|
@@ -26,9 +26,25 @@ export const UserSchema = Type.Object({
|
|
|
26
26
|
title: 'Display Name'
|
|
27
27
|
})),
|
|
28
28
|
password: UserPasswordSchema.properties.password,
|
|
29
|
-
authorizations: Type.Array(authorizationSchema),
|
|
30
29
|
_lastLoggedIn: Type.Optional(TypeboxIsoDate({ title: 'Last Login Date' })),
|
|
31
30
|
_lastPasswordChange: Type.Optional(TypeboxIsoDate({ title: 'Last Password Change Date' })),
|
|
32
31
|
});
|
|
33
32
|
export const UserSpec = entityUtils.getModelSpec(UserSchema, { isAuditable: true });
|
|
34
|
-
export const PublicUserSchema = Type.
|
|
33
|
+
export const PublicUserSchema = Type.Object({
|
|
34
|
+
email: Type.String({
|
|
35
|
+
title: 'Email',
|
|
36
|
+
format: 'email'
|
|
37
|
+
}),
|
|
38
|
+
firstName: Type.Optional(Type.String({
|
|
39
|
+
title: 'First Name'
|
|
40
|
+
})),
|
|
41
|
+
lastName: Type.Optional(Type.String({
|
|
42
|
+
title: 'Last Name'
|
|
43
|
+
})),
|
|
44
|
+
displayName: Type.Optional(Type.String({
|
|
45
|
+
title: 'Display Name'
|
|
46
|
+
})),
|
|
47
|
+
authorizations: Type.Optional(Type.Array(PublicAuthorizationSchema)),
|
|
48
|
+
_lastLoggedIn: Type.Optional(TypeboxIsoDate({ title: 'Last Login Date' })),
|
|
49
|
+
_lastPasswordChange: Type.Optional(TypeboxIsoDate({ title: 'Last Password Change Date' })),
|
|
50
|
+
});
|
package/package.json
CHANGED