@loomcore/common 0.0.25 → 0.0.27
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 +5 -1
- package/dist/models/authorization.model.js +5 -1
- package/dist/models/login-response.model.d.ts +16 -3
- package/dist/models/login-response.model.js +2 -2
- package/dist/models/user-context.model.d.ts +39 -3
- package/dist/models/user-context.model.js +9 -1
- package/dist/models/user.model.d.ts +5 -1
- package/dist/models/user.model.js +1 -0
- package/package.json +1 -1
|
@@ -8,4 +8,8 @@ export declare const AuthorizationSchema: import("@sinclair/typebox").TObject<{
|
|
|
8
8
|
config: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{}>>;
|
|
9
9
|
}>;
|
|
10
10
|
export declare const AuthorizationModelSpec: import("./model-spec.interface.js").IModelSpec<import("@sinclair/typebox").TSchema>;
|
|
11
|
-
export declare const PublicAuthorizationSchema: import("@sinclair/typebox").TObject<{
|
|
11
|
+
export declare const PublicAuthorizationSchema: import("@sinclair/typebox").TObject<{
|
|
12
|
+
feature: import("@sinclair/typebox").TString;
|
|
13
|
+
config: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{}>>;
|
|
14
|
+
}>;
|
|
15
|
+
export declare const PublicAuthorizationSpec: import("./model-spec.interface.js").IModelSpec<import("@sinclair/typebox").TSchema>;
|
|
@@ -5,4 +5,8 @@ export const AuthorizationSchema = Type.Object({
|
|
|
5
5
|
config: Type.Optional(Type.Object({}))
|
|
6
6
|
});
|
|
7
7
|
export const AuthorizationModelSpec = entityUtils.getModelSpec(AuthorizationSchema, { isAuditable: true });
|
|
8
|
-
export const PublicAuthorizationSchema = Type.
|
|
8
|
+
export const PublicAuthorizationSchema = Type.Object({
|
|
9
|
+
feature: Type.String({ minLength: 1 }),
|
|
10
|
+
config: Type.Optional(Type.Object({}))
|
|
11
|
+
});
|
|
12
|
+
export const PublicAuthorizationSpec = entityUtils.getModelSpec(PublicAuthorizationSchema);
|
|
@@ -11,15 +11,28 @@ 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").TIntersect<[import("@sinclair/typebox").TObject<{
|
|
15
|
+
_id: import("@sinclair/typebox").TString;
|
|
16
|
+
_orgId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
17
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
18
|
+
_created: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>;
|
|
19
|
+
_createdBy: import("@sinclair/typebox").TString;
|
|
20
|
+
_updated: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>;
|
|
21
|
+
_updatedBy: import("@sinclair/typebox").TString;
|
|
22
|
+
_deleted: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
23
|
+
_deletedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
24
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
15
25
|
email: import("@sinclair/typebox").TString;
|
|
16
26
|
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
17
27
|
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
18
28
|
displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
19
|
-
authorizations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
29
|
+
authorizations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
30
|
+
feature: import("@sinclair/typebox").TString;
|
|
31
|
+
config: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{}>>;
|
|
32
|
+
}>>>;
|
|
20
33
|
_lastLoggedIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
21
34
|
_lastPasswordChange: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
22
|
-
}>;
|
|
35
|
+
}>]>;
|
|
23
36
|
_orgId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
24
37
|
}>;
|
|
25
38
|
}>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { TokenResponseSchema } from './token-response.model.js';
|
|
2
2
|
import { Type } from '@sinclair/typebox';
|
|
3
|
-
import {
|
|
3
|
+
import { PublicUserContextSchema } from './user-context.model.js';
|
|
4
4
|
import { entityUtils } from '../utils/entity.utils.js';
|
|
5
5
|
export const LoginResponseSchema = Type.Object({
|
|
6
6
|
tokens: TokenResponseSchema,
|
|
7
|
-
userContext:
|
|
7
|
+
userContext: PublicUserContextSchema
|
|
8
8
|
});
|
|
9
9
|
export const LoginResponseSpec = entityUtils.getModelSpec(LoginResponseSchema);
|
|
@@ -5,18 +5,54 @@ 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").TIntersect<[import("@sinclair/typebox").TObject<{
|
|
9
|
+
_id: import("@sinclair/typebox").TString;
|
|
10
|
+
_orgId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
11
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
12
|
+
_created: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>;
|
|
13
|
+
_createdBy: import("@sinclair/typebox").TString;
|
|
14
|
+
_updated: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>;
|
|
15
|
+
_updatedBy: import("@sinclair/typebox").TString;
|
|
16
|
+
_deleted: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
17
|
+
_deletedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
18
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
9
19
|
email: import("@sinclair/typebox").TString;
|
|
10
20
|
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
11
21
|
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
12
22
|
displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
13
|
-
|
|
23
|
+
password: import("@sinclair/typebox").TString;
|
|
14
24
|
_lastLoggedIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
15
25
|
_lastPasswordChange: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
16
|
-
}>;
|
|
26
|
+
}>]>;
|
|
17
27
|
_orgId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
18
28
|
}>;
|
|
19
29
|
export declare const UserContextSpec: import("./model-spec.interface.js").IModelSpec<import("@sinclair/typebox").TSchema>;
|
|
30
|
+
export declare const PublicUserContextSchema: import("@sinclair/typebox").TObject<{
|
|
31
|
+
user: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{
|
|
32
|
+
_id: import("@sinclair/typebox").TString;
|
|
33
|
+
_orgId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
34
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
35
|
+
_created: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>;
|
|
36
|
+
_createdBy: import("@sinclair/typebox").TString;
|
|
37
|
+
_updated: import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>;
|
|
38
|
+
_updatedBy: import("@sinclair/typebox").TString;
|
|
39
|
+
_deleted: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
40
|
+
_deletedBy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
41
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
42
|
+
email: import("@sinclair/typebox").TString;
|
|
43
|
+
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
44
|
+
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
45
|
+
displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
46
|
+
authorizations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
47
|
+
feature: import("@sinclair/typebox").TString;
|
|
48
|
+
config: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{}>>;
|
|
49
|
+
}>>>;
|
|
50
|
+
_lastLoggedIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
51
|
+
_lastPasswordChange: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
52
|
+
}>]>;
|
|
53
|
+
_orgId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
54
|
+
}>;
|
|
55
|
+
export declare const PublicUserContextSpec: import("./model-spec.interface.js").IModelSpec<import("@sinclair/typebox").TSchema>;
|
|
20
56
|
export declare function initializeSystemUserContext(systemEmail: string, metaOrgId: string | undefined): IUserContext;
|
|
21
57
|
export declare function getSystemUserContext(): IUserContext;
|
|
22
58
|
export declare function isSystemUserContextInitialized(): boolean;
|
|
@@ -1,16 +1,24 @@
|
|
|
1
|
+
import { UserSchema } from './user.model.js';
|
|
1
2
|
import { Type } from '@sinclair/typebox';
|
|
2
3
|
import { PublicUserSchema } from './user.model.js';
|
|
3
4
|
import { entityUtils } from '../utils/entity.utils.js';
|
|
5
|
+
import { EntitySchema } from './entity.model.js';
|
|
6
|
+
import { AuditableSchema } from './auditable.model.js';
|
|
4
7
|
export const EmptyUserContext = {
|
|
5
8
|
user: {},
|
|
6
9
|
_orgId: undefined
|
|
7
10
|
};
|
|
8
11
|
let _systemUserContext = null;
|
|
9
12
|
export const UserContextSchema = Type.Object({
|
|
10
|
-
user:
|
|
13
|
+
user: Type.Intersect([EntitySchema, AuditableSchema, UserSchema]),
|
|
11
14
|
_orgId: Type.Optional(Type.String())
|
|
12
15
|
});
|
|
13
16
|
export const UserContextSpec = entityUtils.getModelSpec(UserContextSchema);
|
|
17
|
+
export const PublicUserContextSchema = Type.Object({
|
|
18
|
+
user: Type.Intersect([EntitySchema, AuditableSchema, PublicUserSchema]),
|
|
19
|
+
_orgId: Type.Optional(Type.String())
|
|
20
|
+
});
|
|
21
|
+
export const PublicUserContextSpec = entityUtils.getModelSpec(PublicUserContextSchema);
|
|
14
22
|
export function initializeSystemUserContext(systemEmail, metaOrgId) {
|
|
15
23
|
_systemUserContext = {
|
|
16
24
|
user: {
|
|
@@ -32,7 +32,11 @@ export declare const PublicUserSchema: import("@sinclair/typebox").TObject<{
|
|
|
32
32
|
firstName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
33
33
|
lastName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
34
34
|
displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
35
|
-
authorizations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
35
|
+
authorizations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
36
|
+
feature: import("@sinclair/typebox").TString;
|
|
37
|
+
config: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{}>>;
|
|
38
|
+
}>>>;
|
|
36
39
|
_lastLoggedIn: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
37
40
|
_lastPasswordChange: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTransform<import("@sinclair/typebox").TString, Date>>;
|
|
38
41
|
}>;
|
|
42
|
+
export declare const PublicUserSpec: import("./model-spec.interface.js").IModelSpec<import("@sinclair/typebox").TSchema>;
|
|
@@ -48,3 +48,4 @@ export const PublicUserSchema = Type.Object({
|
|
|
48
48
|
_lastLoggedIn: Type.Optional(TypeboxIsoDate({ title: 'Last Login Date' })),
|
|
49
49
|
_lastPasswordChange: Type.Optional(TypeboxIsoDate({ title: 'Last Password Change Date' })),
|
|
50
50
|
});
|
|
51
|
+
export const PublicUserSpec = entityUtils.getModelSpec(PublicUserSchema, { isAuditable: true });
|
package/package.json
CHANGED