@metad/contracts 0.0.1 → 3.6.0-beta.1
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/.babelrc +5 -0
- package/.eslintrc.json +18 -0
- package/README.md +3 -1
- package/babel.config.json +1 -0
- package/jest.config.ts +16 -0
- package/package.json +5 -5
- package/project.json +46 -0
- package/src/agent/ai-model.ts +9 -0
- package/src/agent/graph.ts +272 -0
- package/src/agent/index.ts +5 -0
- package/src/agent/token.ts +23 -0
- package/src/agent/utils.spec.ts +283 -0
- package/src/agent/utils.ts +122 -0
- package/src/agent/variables.ts +21 -0
- package/src/ai/ai-model.model.ts +228 -0
- package/src/ai/ai-provider.model.ts +53 -0
- package/src/ai/ai.model.ts +87 -0
- package/src/ai/chat-message-feedback.model.ts +31 -0
- package/src/ai/chat-message.model.ts +277 -0
- package/src/ai/chat.model.ts +207 -0
- package/src/ai/copilot-checkpoint.model.ts +25 -0
- package/src/ai/copilot-example.model.ts +23 -0
- package/src/ai/copilot-model.model.ts +31 -0
- package/src/ai/copilot-organization.model.ts +21 -0
- package/src/ai/copilot-provider.model.ts +46 -0
- package/src/ai/copilot-role.model.ts +48 -0
- package/src/ai/copilot-store.model.ts +34 -0
- package/src/ai/copilot-user.model.ts +24 -0
- package/src/ai/copilot.model.ts +47 -0
- package/src/ai/environment.model.ts +18 -0
- package/src/ai/feature.model.ts +6 -0
- package/src/ai/index.ts +37 -0
- package/src/ai/knowledge-doc-page.model.ts +20 -0
- package/src/ai/knowledge-doc.model.ts +217 -0
- package/src/ai/knowledge-pipeline.ts +106 -0
- package/src/ai/knowledge-retrieval-log.model.ts +19 -0
- package/src/ai/knowledgebase-task.model.ts +42 -0
- package/src/ai/knowledgebase.model.ts +173 -0
- package/src/ai/rag-web.ts +54 -0
- package/src/ai/rag.ts +24 -0
- package/src/ai/role-permissions.ts +13 -0
- package/src/ai/types.ts +83 -0
- package/src/ai/xpert-agent-execution.model.ts +115 -0
- package/src/ai/xpert-agent.model.ts +258 -0
- package/src/ai/xpert-project.model.ts +103 -0
- package/src/ai/xpert-task.model.ts +32 -0
- package/src/ai/xpert-template.model.ts +53 -0
- package/src/ai/xpert-tool-mcp.model.ts +72 -0
- package/src/ai/xpert-tool.model.ts +211 -0
- package/src/ai/xpert-toolset.model.ts +220 -0
- package/src/ai/xpert-workflow-task.prompt.ts +71 -0
- package/src/ai/xpert-workflow.model.ts +449 -0
- package/src/ai/xpert-workspace.model.ts +42 -0
- package/src/ai/xpert.model.ts +781 -0
- package/src/analytics/ai.ts +79 -0
- package/src/analytics/approval-policy.model.ts +40 -0
- package/src/analytics/business-area-user.model.ts +43 -0
- package/src/analytics/business-area.ts +20 -0
- package/src/analytics/certification.model.ts +12 -0
- package/src/analytics/chatbi-conversation.model.ts +16 -0
- package/src/analytics/chatbi-model.model.ts +22 -0
- package/src/analytics/collection.model.ts +8 -0
- package/src/analytics/comment.model.ts +14 -0
- package/src/analytics/data-source-type.ts +19 -0
- package/src/analytics/data-source.ts +72 -0
- package/src/analytics/favorite.ts +18 -0
- package/src/analytics/features.ts +19 -0
- package/src/analytics/feed-model.ts +15 -0
- package/src/analytics/gateway.ts +30 -0
- package/src/analytics/index.ts +39 -0
- package/src/analytics/indicator-app.ts +49 -0
- package/{analytics/indicator-market.d.ts → src/analytics/indicator-market.ts} +8 -4
- package/src/analytics/indicator.ts +127 -0
- package/src/analytics/model-query-log.model.ts +45 -0
- package/src/analytics/model-query.ts +22 -0
- package/{analytics/notification-destination.d.ts → src/analytics/notification-destination.ts} +14 -10
- package/src/analytics/permission-approval-user.model.ts +12 -0
- package/src/analytics/permission-approval.model.ts +58 -0
- package/src/analytics/project.model.ts +56 -0
- package/src/analytics/role-permissions.ts +36 -0
- package/src/analytics/schema.ts +300 -0
- package/src/analytics/screenshot.model.ts +28 -0
- package/src/analytics/semantic-model-entity.ts +49 -0
- package/src/analytics/semantic-model-member.ts +45 -0
- package/src/analytics/semantic-model.ts +227 -0
- package/{analytics/story-point.d.ts → src/analytics/story-point.ts} +16 -10
- package/src/analytics/story-template.model.ts +34 -0
- package/src/analytics/story-widget.ts +15 -0
- package/src/analytics/story.ts +109 -0
- package/src/analytics/subscription.ts +43 -0
- package/src/analytics/visit.model.ts +39 -0
- package/src/analytics/webSocket.ts +53 -0
- package/src/api-key.model.ts +11 -0
- package/src/base-entity.model.ts +33 -0
- package/src/contact.model.ts +45 -0
- package/src/core.model.ts +103 -0
- package/{country.model.d.ts → src/country.model.ts} +6 -5
- package/src/currency.model.ts +582 -0
- package/src/custom-smtp.model.ts +27 -0
- package/src/date-picker.model.ts +5 -0
- package/src/email-template.model.ts +50 -0
- package/src/email.model.ts +46 -0
- package/src/employee.model.ts +199 -0
- package/src/entity-with-members.model.ts +16 -0
- package/src/feature.model.ts +108 -0
- package/src/file-provider.ts +37 -0
- package/src/help-center-article.model.ts +35 -0
- package/src/help-center.model.ts +33 -0
- package/src/http-status.enum.ts +58 -0
- package/src/import-export.model.ts +42 -0
- package/src/index.ts +60 -0
- package/src/integration/dify.ts +31 -0
- package/src/integration/dingtalk.ts +16 -0
- package/src/integration/fastgpt.ts +32 -0
- package/src/integration/firecrawl.ts +46 -0
- package/src/integration/github.ts +149 -0
- package/src/integration/index.ts +19 -0
- package/src/integration/lark.ts +79 -0
- package/src/integration/ragflow.ts +32 -0
- package/src/integration/wecom.ts +16 -0
- package/src/integration.model.ts +118 -0
- package/src/invite.model.ts +144 -0
- package/src/language.model.ts +22 -0
- package/src/organization-contact.model.ts +84 -0
- package/src/organization-department.model.ts +26 -0
- package/src/organization-language.model.ts +24 -0
- package/src/organization-projects.model.ts +99 -0
- package/src/organization-team-employee-model.ts +14 -0
- package/src/organization-team-model.ts +25 -0
- package/src/organization.model.ts +266 -0
- package/src/password-reset.model.ts +24 -0
- package/src/plain-object.model.ts +13 -0
- package/src/plugin.ts +15 -0
- package/src/role-permission.model.ts +123 -0
- package/src/role.model.ts +31 -0
- package/src/schedule.ts +71 -0
- package/src/secret-token.model.ts +15 -0
- package/src/seed.model.ts +50 -0
- package/src/storage-file.model.ts +46 -0
- package/src/tag-entity.model.ts +23 -0
- package/src/tenant.model.ts +52 -0
- package/src/tools/index.ts +1 -0
- package/src/tools/sandbox.ts +5 -0
- package/src/translation.model.ts +37 -0
- package/src/types.ts +276 -0
- package/src/user-organization.model.ts +31 -0
- package/src/user.model.ts +147 -0
- package/src/visibility.model.ts +6 -0
- package/tsconfig.json +22 -0
- package/tsconfig.lib.json +10 -0
- package/tsconfig.spec.json +9 -0
- package/analytics/business-area-user.model.d.ts +0 -29
- package/analytics/business-area.d.ts +0 -16
- package/analytics/business-group.d.ts +0 -12
- package/analytics/data-source-type.d.ts +0 -12
- package/analytics/data-source.d.ts +0 -43
- package/analytics/favorite.d.ts +0 -14
- package/analytics/features.d.ts +0 -19
- package/analytics/feed-model.d.ts +0 -13
- package/analytics/index.d.ts +0 -20
- package/analytics/indicator.d.ts +0 -31
- package/analytics/insight-model.d.ts +0 -14
- package/analytics/model-query.d.ts +0 -12
- package/analytics/role-permissions.d.ts +0 -19
- package/analytics/semantic-model.d.ts +0 -42
- package/analytics/story-widget.d.ts +0 -11
- package/analytics/story.d.ts +0 -18
- package/analytics/subscription.d.ts +0 -38
- package/analytics/user-business-group.model.d.ts +0 -29
- package/analytics/visit.model.d.ts +0 -27
- package/analytics/webSocket.d.ts +0 -40
- package/base-entity.model.d.ts +0 -21
- package/contact.model.d.ts +0 -41
- package/core.model.d.ts +0 -25
- package/currency.model.d.ts +0 -579
- package/email-template.model.d.ts +0 -47
- package/email.model.d.ts +0 -36
- package/employee.model.d.ts +0 -128
- package/entity-with-members.model.d.ts +0 -13
- package/feature.model.d.ts +0 -134
- package/file-provider.d.ts +0 -31
- package/help-center-article.model.d.ts +0 -27
- package/help-center.model.d.ts +0 -28
- package/http-status.enum.d.ts +0 -57
- package/import-export.model.d.ts +0 -36
- package/index.cjs +0 -1283
- package/index.d.ts +0 -33
- package/index.js +0 -1272
- package/language.model.d.ts +0 -19
- package/organization-contact.model.d.ts +0 -73
- package/organization-department.model.d.ts +0 -20
- package/organization-language.model.d.ts +0 -18
- package/organization-team-employee-model.d.ts +0 -12
- package/organization-team-model.d.ts +0 -19
- package/organization.model.d.ts +0 -227
- package/role-permission.model.d.ts +0 -63
- package/role.model.d.ts +0 -21
- package/seed.model.d.ts +0 -38
- package/tag-entity.model.d.ts +0 -10
- package/tenant.model.d.ts +0 -24
- package/translation.model.d.ts +0 -20
- package/user-organization.model.d.ts +0 -24
- package/user.model.d.ts +0 -117
- package/visibility.model.d.ts +0 -5
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-empty-interface */
|
|
2
|
+
import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
|
|
3
|
+
|
|
4
|
+
export interface ICustomSmtp extends IBasePerTenantAndOrganizationEntityModel {
|
|
5
|
+
host: string;
|
|
6
|
+
port: number;
|
|
7
|
+
secure: boolean;
|
|
8
|
+
username: string;
|
|
9
|
+
password: string;
|
|
10
|
+
isValidate?: boolean;
|
|
11
|
+
fromAddress?: string;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface ICustomSmtpFindInput extends IBasePerTenantAndOrganizationEntityModel {
|
|
15
|
+
id?: string;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface ICustomSmtpCreateInput extends ICustomSmtp { }
|
|
19
|
+
|
|
20
|
+
export interface IVerifySMTPTransport extends Omit<ICustomSmtpCreateInput, 'isValidate'> { }
|
|
21
|
+
|
|
22
|
+
export interface ICustomSmtpUpdateInput extends ICustomSmtpCreateInput { }
|
|
23
|
+
|
|
24
|
+
export enum SMTPSecureEnum {
|
|
25
|
+
TRUE = 'True',
|
|
26
|
+
FALSE = 'False'
|
|
27
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
|
|
2
|
+
import { LanguagesEnum } from './user.model';
|
|
3
|
+
|
|
4
|
+
export interface IEmailTemplate
|
|
5
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
6
|
+
name: string;
|
|
7
|
+
mjml: string;
|
|
8
|
+
hbs: string;
|
|
9
|
+
languageCode: string;
|
|
10
|
+
title?: string;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface IEmailTemplateFindInput
|
|
14
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
15
|
+
name?: string;
|
|
16
|
+
languageCode?: string;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export enum EmailTemplateNameEnum {
|
|
20
|
+
PASSWORD_RESET = 'password',
|
|
21
|
+
WELCOME_USER = 'welcome-user',
|
|
22
|
+
INVITE_USER = 'invite-user',
|
|
23
|
+
EMAIL_VERIFICATION = 'email-verification'
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export enum EmailTemplateEnum {
|
|
27
|
+
PASSWORD_RESET = 'password',
|
|
28
|
+
MULTI_TENANT_PASSWORD_RESET = 'multi-tenant-password',
|
|
29
|
+
PASSWORD_LESS_AUTHENTICATION = 'password-less-authentication',
|
|
30
|
+
WELCOME_USER = 'welcome-user',
|
|
31
|
+
EMAIL_VERIFICATION = 'email-verification',
|
|
32
|
+
INVITE_USER = 'invite-user',
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export interface ICustomizeEmailTemplateFindInput
|
|
36
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
37
|
+
name: EmailTemplateNameEnum;
|
|
38
|
+
languageCode: LanguagesEnum;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export interface ICustomizableEmailTemplate {
|
|
42
|
+
template: string;
|
|
43
|
+
subject: string;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface IEmailTemplateSaveInput
|
|
47
|
+
extends ICustomizeEmailTemplateFindInput {
|
|
48
|
+
mjml: string;
|
|
49
|
+
subject: string;
|
|
50
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
|
|
2
|
+
import {
|
|
3
|
+
IEmailTemplate,
|
|
4
|
+
IEmailTemplateFindInput
|
|
5
|
+
} from './email-template.model';
|
|
6
|
+
import { IUser } from './user.model';
|
|
7
|
+
|
|
8
|
+
export interface IEmail
|
|
9
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
10
|
+
name: string;
|
|
11
|
+
content: string;
|
|
12
|
+
email: string;
|
|
13
|
+
isArchived?: boolean;
|
|
14
|
+
user?: IUser;
|
|
15
|
+
userId?: string;
|
|
16
|
+
emailTemplate: IEmailTemplate;
|
|
17
|
+
emailTemplateId: string;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export interface IEmailUpdateInput
|
|
21
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
22
|
+
name?: string;
|
|
23
|
+
content?: string;
|
|
24
|
+
email?: string;
|
|
25
|
+
emailTemplate?: IEmailTemplate;
|
|
26
|
+
emailTemplateId?: string;
|
|
27
|
+
user?: IUser;
|
|
28
|
+
userId?: string;
|
|
29
|
+
isArchived?: boolean;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface IEmailFindInput
|
|
33
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
34
|
+
emailTemplate?: IEmailTemplateFindInput;
|
|
35
|
+
emailTemplateId?: string;
|
|
36
|
+
user?: IUser;
|
|
37
|
+
userId?: string;
|
|
38
|
+
email?: string;
|
|
39
|
+
isArchived?: boolean;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export interface DisplayEmail {
|
|
43
|
+
from: string;
|
|
44
|
+
to: string;
|
|
45
|
+
date: string;
|
|
46
|
+
}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
|
|
2
|
+
import { IContact } from './contact.model';
|
|
3
|
+
// import { IEmployeeJobsStatistics } from './employee-job.model';
|
|
4
|
+
// import { IOrganizationDepartment } from './organization-department.model';
|
|
5
|
+
// import { IOrganizationEmploymentType } from './organization-employment-type.model';
|
|
6
|
+
import { CrudActionEnum, IOrganizationFindInput } from './organization.model';
|
|
7
|
+
// import { IOrganizationPosition } from './organization-positions.model';
|
|
8
|
+
import { IOrganizationTeam } from './organization-team-model';
|
|
9
|
+
// import { IRequestApprovalEmployee } from './request-approval-employee.model';
|
|
10
|
+
// import { ISkill } from './skill-entity.model';
|
|
11
|
+
import { ITag } from './tag-entity.model';
|
|
12
|
+
import { IUser, IUserFindInput } from './user.model';
|
|
13
|
+
// import { IOrganizationContact } from './organization-contact.model';
|
|
14
|
+
// import { IOrganizationProject } from './organization-projects.model';
|
|
15
|
+
// import { IEmployeeSetting } from './employee-settings.model';
|
|
16
|
+
// import { IExpense } from './expense.model';
|
|
17
|
+
// import { ITimesheet } from './timesheet.model';
|
|
18
|
+
|
|
19
|
+
export interface IEmployee extends IBasePerTenantAndOrganizationEntityModel {
|
|
20
|
+
[x: string]: any;
|
|
21
|
+
endWork?: any;
|
|
22
|
+
startedWorkOn?: any;
|
|
23
|
+
user: IUser;
|
|
24
|
+
userId: string;
|
|
25
|
+
valueDate?: Date;
|
|
26
|
+
isActive: boolean;
|
|
27
|
+
short_description?: string;
|
|
28
|
+
description?: string;
|
|
29
|
+
teams?: IOrganizationTeam[];
|
|
30
|
+
payPeriod?: string;
|
|
31
|
+
billRateValue?: number;
|
|
32
|
+
billRateCurrency?: string;
|
|
33
|
+
reWeeklyLimit?: number;
|
|
34
|
+
// organizationDepartments?: IOrganizationDepartment[];
|
|
35
|
+
// organizationContacts?: IOrganizationContact[];
|
|
36
|
+
// projects?: IOrganizationProject[];
|
|
37
|
+
// organizationPosition?: IOrganizationPosition;
|
|
38
|
+
tags: ITag[];
|
|
39
|
+
// skills: ISkill[];
|
|
40
|
+
offerDate?: Date;
|
|
41
|
+
acceptDate?: Date;
|
|
42
|
+
rejectDate?: Date;
|
|
43
|
+
employeeLevel?: string;
|
|
44
|
+
anonymousBonus?: boolean;
|
|
45
|
+
// organizationEmploymentTypes?: IOrganizationEmploymentType[];
|
|
46
|
+
// requestApprovalEmployee?: IRequestApprovalEmployee[];
|
|
47
|
+
// settings?: IEmployeeSetting[];
|
|
48
|
+
// expenses?: IExpense[];
|
|
49
|
+
// timesheets?: ITimesheet[];
|
|
50
|
+
// contact: IContact;
|
|
51
|
+
// averageIncome?: number;
|
|
52
|
+
// totalWorkHours?: number;
|
|
53
|
+
// averageExpenses?: number;
|
|
54
|
+
// averageBonus?: number;
|
|
55
|
+
// show_anonymous_bonus?: boolean;
|
|
56
|
+
// show_average_bonus?: boolean;
|
|
57
|
+
// show_average_expenses?: boolean;
|
|
58
|
+
// show_average_income?: boolean;
|
|
59
|
+
// show_billrate?: boolean;
|
|
60
|
+
// show_payperiod?: boolean;
|
|
61
|
+
// isJobSearchActive?: boolean;
|
|
62
|
+
// linkedInUrl?: string;
|
|
63
|
+
// facebookUrl?: string;
|
|
64
|
+
// instagramUrl?: string;
|
|
65
|
+
// twitterUrl?: string;
|
|
66
|
+
// githubUrl?: string;
|
|
67
|
+
// gitlabUrl?: string;
|
|
68
|
+
// upworkUrl?: string;
|
|
69
|
+
// jobSuccess?: number;
|
|
70
|
+
// isVerified?: boolean;
|
|
71
|
+
// isVetted?: boolean;
|
|
72
|
+
// totalJobs?: number;
|
|
73
|
+
// fullName?: string;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// export type IEmployeeJobsStatisticsResponse = IEmployee &
|
|
77
|
+
// IEmployeeJobsStatistics;
|
|
78
|
+
|
|
79
|
+
export interface UpdateEmployeeJobsStatistics {
|
|
80
|
+
isJobSearchActive?: boolean;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export interface IEmployeeFindInput {
|
|
84
|
+
id?: string;
|
|
85
|
+
organization?: IOrganizationFindInput;
|
|
86
|
+
user?: IUserFindInput;
|
|
87
|
+
valueDate?: Date;
|
|
88
|
+
organizationId?: string;
|
|
89
|
+
tenantId?: string;
|
|
90
|
+
tags?: ITag[];
|
|
91
|
+
// skills?: ISkill[];
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export interface IEmployeeUpdateInput
|
|
95
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
96
|
+
payPeriod?: string;
|
|
97
|
+
billRateValue?: number;
|
|
98
|
+
billRateCurrency?: string;
|
|
99
|
+
reWeeklyLimit?: number;
|
|
100
|
+
// organizationDepartment?: IOrganizationDepartment;
|
|
101
|
+
// organizationPosition?: IOrganizationPosition;
|
|
102
|
+
offerDate?: Date;
|
|
103
|
+
acceptDate?: Date;
|
|
104
|
+
rejectDate?: Date;
|
|
105
|
+
short_description?: string;
|
|
106
|
+
description?: string;
|
|
107
|
+
averageIncome?: number;
|
|
108
|
+
averageExpenses?: number;
|
|
109
|
+
averageBonus?: number;
|
|
110
|
+
// skills?: ISkill[];
|
|
111
|
+
isJobSearchActive?: boolean;
|
|
112
|
+
contact?: IContact;
|
|
113
|
+
linkedInUrl?: string;
|
|
114
|
+
facebookUrl?: string;
|
|
115
|
+
instagramUrl?: string;
|
|
116
|
+
twitterUrl?: string;
|
|
117
|
+
githubUrl?: string;
|
|
118
|
+
gitlabUrl?: string;
|
|
119
|
+
upworkUrl?: string;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
export interface IEmployeeCreateInput
|
|
123
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
124
|
+
user: IUser;
|
|
125
|
+
password?: string;
|
|
126
|
+
offerDate?: Date;
|
|
127
|
+
acceptDate?: Date;
|
|
128
|
+
rejectDate?: Date;
|
|
129
|
+
members?: IEmployee[];
|
|
130
|
+
tags?: ITag[];
|
|
131
|
+
// skills?: ISkill[];
|
|
132
|
+
startedWorkOn?: any;
|
|
133
|
+
short_description?: string;
|
|
134
|
+
description?: string;
|
|
135
|
+
originalUrl?: string;
|
|
136
|
+
isActive?: boolean;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
export interface ISelectedEmployee {
|
|
140
|
+
id: string;
|
|
141
|
+
firstName: string;
|
|
142
|
+
lastName: string;
|
|
143
|
+
fullName?: string;
|
|
144
|
+
imageUrl: string;
|
|
145
|
+
defaultType?: DEFAULT_TYPE;
|
|
146
|
+
tags?: ITag[];
|
|
147
|
+
// skills?: ISkill[];
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export enum DEFAULT_TYPE {
|
|
151
|
+
ALL_EMPLOYEE = 'ALL_EMPLOYEE',
|
|
152
|
+
NO_EMPLOYEE = 'NO_EMPLOYEE'
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export enum PayPeriodEnum {
|
|
156
|
+
NONE = 'NONE',
|
|
157
|
+
BI_WEEKLY = 'BI_WEEKLY',
|
|
158
|
+
WEEKLY = 'WEEKLY',
|
|
159
|
+
TWICE_PER_MONTH = 'TWICE_PER_MONTH',
|
|
160
|
+
MONTHLY = 'MONTHLY'
|
|
161
|
+
}
|
|
162
|
+
export interface IEmployeeLevel
|
|
163
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
164
|
+
level: string;
|
|
165
|
+
tag?: ITag[];
|
|
166
|
+
// skills?: ISkill[];
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
export interface IEmployeeLevelInput
|
|
170
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
171
|
+
level: string;
|
|
172
|
+
tags?: ITag[];
|
|
173
|
+
// skills?: ISkill[];
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
export interface IEmployeeLevelFindInput {
|
|
177
|
+
organizationId?: string;
|
|
178
|
+
tenantId: string;
|
|
179
|
+
}
|
|
180
|
+
export interface EmployeeViewModel {
|
|
181
|
+
fullName: string;
|
|
182
|
+
email: string;
|
|
183
|
+
bonus?: number;
|
|
184
|
+
endWork?: any;
|
|
185
|
+
id: string;
|
|
186
|
+
imageUrl?: string;
|
|
187
|
+
averageIncome?: number;
|
|
188
|
+
averageExpenses?: number;
|
|
189
|
+
averageBonus?: number;
|
|
190
|
+
workStatus?: string;
|
|
191
|
+
startedWorkOn?: string;
|
|
192
|
+
isActive?: boolean;
|
|
193
|
+
tags?: ITag[];
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
export interface IEmployeeStoreState {
|
|
197
|
+
employee: IEmployee | IEmployee[];
|
|
198
|
+
action: CrudActionEnum;
|
|
199
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IEmployee } from './employee.model';
|
|
2
|
+
import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
|
|
3
|
+
import { ITag } from './tag-entity.model';
|
|
4
|
+
|
|
5
|
+
export interface IBaseEntityWithMembers
|
|
6
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
7
|
+
members?: IEmployee[];
|
|
8
|
+
name?: string;
|
|
9
|
+
tags?: ITag[];
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export interface IEditEntityByMemberInput {
|
|
13
|
+
addedEntityIds?: string[];
|
|
14
|
+
removedEntityIds?: string[];
|
|
15
|
+
member: IEmployee;
|
|
16
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
|
|
2
|
+
|
|
3
|
+
export interface IFeature extends IBasePerTenantAndOrganizationEntityModel {
|
|
4
|
+
code: string;
|
|
5
|
+
description: string;
|
|
6
|
+
featureOrganizations?: IFeatureOrganization[];
|
|
7
|
+
image?: string;
|
|
8
|
+
readonly imageUrl?: string;
|
|
9
|
+
link: string;
|
|
10
|
+
name: string;
|
|
11
|
+
status: string;
|
|
12
|
+
icon: string;
|
|
13
|
+
isEnabled?: boolean;
|
|
14
|
+
isPaid?: boolean;
|
|
15
|
+
readonly parentId?: string;
|
|
16
|
+
parent?: IFeature;
|
|
17
|
+
children?: IFeature[];
|
|
18
|
+
}
|
|
19
|
+
export interface IFeatureCreateInput extends IFeature {
|
|
20
|
+
isEnabled: boolean;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface IFeatureOrganization
|
|
24
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
25
|
+
feature: IFeature;
|
|
26
|
+
featureId?: string;
|
|
27
|
+
isEnabled: boolean;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface IFeatureOrganizationUpdateInput
|
|
31
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
32
|
+
featureId: string;
|
|
33
|
+
isEnabled: boolean;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export interface IFeatureOrganizationFindInput
|
|
37
|
+
extends IBasePerTenantAndOrganizationEntityModel {
|
|
38
|
+
featureId?: string;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export enum FeatureStatusEnum {
|
|
42
|
+
INFO = 'info',
|
|
43
|
+
PRIMARY = 'primary',
|
|
44
|
+
SUCCESS = 'success',
|
|
45
|
+
WARNING = 'warning'
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export enum IFeatureToggleTypeEnum {
|
|
49
|
+
RELEASE = 'release',
|
|
50
|
+
KILL_SWITCH = 'kill-switch',
|
|
51
|
+
EXPERIMENT = 'experiment',
|
|
52
|
+
OPERATIONAL = 'operational',
|
|
53
|
+
PERMISSION = 'permission'
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export interface IFeatureToggleVariant {
|
|
57
|
+
name?: string;
|
|
58
|
+
weight?: number;
|
|
59
|
+
weightType?: string;
|
|
60
|
+
payload?: IFeatureTogglePayload;
|
|
61
|
+
overrides?: IFeatureToggleOverride[];
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export interface IFeatureToggleOverride {
|
|
65
|
+
contextName?: string;
|
|
66
|
+
values?: string[];
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
export interface IFeatureTogglePayload {
|
|
70
|
+
type?: string;
|
|
71
|
+
value?: string;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export interface IFeatureToggle {
|
|
75
|
+
name: string;
|
|
76
|
+
description?: string;
|
|
77
|
+
type: IFeatureToggleTypeEnum;
|
|
78
|
+
project?: string;
|
|
79
|
+
enabled: boolean;
|
|
80
|
+
stale?: boolean;
|
|
81
|
+
strategies?: any;
|
|
82
|
+
variants?: IFeatureToggleVariant[];
|
|
83
|
+
createdAt?: string;
|
|
84
|
+
lastSeenAt?: string | null;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export enum FeatureEnum {
|
|
88
|
+
FEATURE_DASHBOARD = 'FEATURE_DASHBOARD',
|
|
89
|
+
FEATURE_HOME = 'FEATURE_HOME',
|
|
90
|
+
FEATURE_JOB = 'FEATURE_JOB',
|
|
91
|
+
FEATURE_EMPLOYEES = 'FEATURE_EMPLOYEES',
|
|
92
|
+
FEATURE_MANAGE_INVITE = 'FEATURE_MANAGE_INVITE',
|
|
93
|
+
FEATURE_ORGANIZATION = 'FEATURE_ORGANIZATION',
|
|
94
|
+
FEATURE_ORGANIZATION_TAG = 'FEATURE_ORGANIZATION_TAG',
|
|
95
|
+
FEATURE_ORGANIZATION_PROJECT = 'FEATURE_ORGANIZATION_PROJECT',
|
|
96
|
+
FEATURE_CONTACT = 'FEATURE_CONTACT',
|
|
97
|
+
FEATURE_USER = 'FEATURE_USER',
|
|
98
|
+
FEATURE_ORGANIZATIONS = 'FEATURE_ORGANIZATIONS',
|
|
99
|
+
// FEATURE_APP_INTEGRATION = 'FEATURE_APP_INTEGRATION',
|
|
100
|
+
FEATURE_SETTING = 'FEATURE_SETTING',
|
|
101
|
+
FEATURE_EMAIL_HISTORY = 'FEATURE_EMAIL_HISTORY',
|
|
102
|
+
FEATURE_EMAIL_TEMPLATE = 'FEATURE_EMAIL_TEMPLATE',
|
|
103
|
+
FEATURE_FILE_STORAGE = 'FEATURE_FILE_STORAGE',
|
|
104
|
+
FEATURE_SMS_GATEWAY = 'FEATURE_SMS_GATEWAY',
|
|
105
|
+
FEATURE_SMTP = 'FEATURE_SMTP',
|
|
106
|
+
FEATURE_ROLES_PERMISSION = 'FEATURE_ROLES_PERMISSION',
|
|
107
|
+
FEATURE_INTEGRATION = 'FEATURE_INTEGRATION',
|
|
108
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface FileStorageOption {
|
|
2
|
+
dest: string | CallableFunction;
|
|
3
|
+
provider?: FileStorageProviderEnum;
|
|
4
|
+
prefix?: string;
|
|
5
|
+
filename?: string | CallableFunction;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface FileSystem {
|
|
9
|
+
rootPath: string;
|
|
10
|
+
baseUrl?: string;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export enum FileStorageProviderEnum {
|
|
14
|
+
LOCAL = 'LOCAL',
|
|
15
|
+
S3 = 'S3',
|
|
16
|
+
WASABI = 'WASABI',
|
|
17
|
+
OSS = 'OSS', // 阿里云对象存储 OSS(Object Storage Service)
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export interface UploadedFile {
|
|
21
|
+
fieldname: string;
|
|
22
|
+
key: string; // path of the file in storage
|
|
23
|
+
originalname: string; // orignal file name
|
|
24
|
+
size: number; // files in bytes
|
|
25
|
+
encoding?: string;
|
|
26
|
+
mimetype?: string;
|
|
27
|
+
filename: string;
|
|
28
|
+
url: string; // file public url
|
|
29
|
+
path: string; // Full path of the file
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface S3FileStorageProviderConfig {
|
|
33
|
+
aws_access_key_id?: string;
|
|
34
|
+
aws_secret_access_key?: string;
|
|
35
|
+
aws_default_region?: string;
|
|
36
|
+
aws_bucket?: string;
|
|
37
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
|
|
2
|
+
// import { IEmployee } from './employee.model';
|
|
3
|
+
|
|
4
|
+
// export interface IHelpCenterArticle
|
|
5
|
+
// extends IBasePerTenantAndOrganizationEntityModel {
|
|
6
|
+
// name: string;
|
|
7
|
+
// description: string;
|
|
8
|
+
// data: string;
|
|
9
|
+
// index: number;
|
|
10
|
+
// draft: boolean;
|
|
11
|
+
// privacy: boolean;
|
|
12
|
+
// categoryId: string;
|
|
13
|
+
// employees?: IEmployee[];
|
|
14
|
+
// authors?: IHelpCenterAuthor[];
|
|
15
|
+
// }
|
|
16
|
+
|
|
17
|
+
// export interface IHelpCenterAuthor
|
|
18
|
+
// extends IBasePerTenantAndOrganizationEntityModel {
|
|
19
|
+
// articleId: string;
|
|
20
|
+
// article?: IHelpCenterArticle;
|
|
21
|
+
// employeeId: string;
|
|
22
|
+
// employee?: IEmployee;
|
|
23
|
+
// articles?: IHelpCenterArticle[];
|
|
24
|
+
// }
|
|
25
|
+
|
|
26
|
+
// export interface IHelpCenterAuthorCreate
|
|
27
|
+
// extends IBasePerTenantAndOrganizationEntityModel {
|
|
28
|
+
// articleId: string;
|
|
29
|
+
// employeeIds: string[];
|
|
30
|
+
// }
|
|
31
|
+
|
|
32
|
+
// export interface IHelpCenterAuthorFind
|
|
33
|
+
// extends IBasePerTenantAndOrganizationEntityModel {
|
|
34
|
+
// id?: string;
|
|
35
|
+
// }
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// import { IHelpCenterArticle } from './help-center-article.model';
|
|
2
|
+
// import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
|
|
3
|
+
|
|
4
|
+
// export interface IHelpCenter extends IBasePerTenantAndOrganizationEntityModel {
|
|
5
|
+
// name: string;
|
|
6
|
+
// icon: string;
|
|
7
|
+
// flag: string;
|
|
8
|
+
// privacy: string;
|
|
9
|
+
// language: string;
|
|
10
|
+
// color: string;
|
|
11
|
+
// description?: string;
|
|
12
|
+
// data?: string;
|
|
13
|
+
// index: number;
|
|
14
|
+
// children?: IHelpCenter[];
|
|
15
|
+
// parent?: IHelpCenter;
|
|
16
|
+
// article?: IHelpCenterArticle[];
|
|
17
|
+
// parentId?: string;
|
|
18
|
+
// }
|
|
19
|
+
|
|
20
|
+
// export interface IHelpCenterFind
|
|
21
|
+
// extends IBasePerTenantAndOrganizationEntityModel {
|
|
22
|
+
// id?: string;
|
|
23
|
+
// }
|
|
24
|
+
|
|
25
|
+
// export enum HelpCenterActionEnum {
|
|
26
|
+
// ADD = 'add',
|
|
27
|
+
// EDIT = 'edit'
|
|
28
|
+
// }
|
|
29
|
+
|
|
30
|
+
// export enum HelpCenterFlagEnum {
|
|
31
|
+
// BASE = 'base',
|
|
32
|
+
// CATEGORY = 'category'
|
|
33
|
+
// }
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export enum HttpStatus {
|
|
2
|
+
CONTINUE = 100,
|
|
3
|
+
SWITCHING_PROTOCOLS = 101,
|
|
4
|
+
PROCESSING = 102,
|
|
5
|
+
OK = 200,
|
|
6
|
+
CREATED = 201,
|
|
7
|
+
ACCEPTED = 202,
|
|
8
|
+
NON_AUTHORITATIVE_INFORMATION = 203,
|
|
9
|
+
NO_CONTENT = 204,
|
|
10
|
+
RESET_CONTENT = 205,
|
|
11
|
+
PARTIAL_CONTENT = 206,
|
|
12
|
+
AMBIGUOUS = 300,
|
|
13
|
+
MOVED_PERMANENTLY = 301,
|
|
14
|
+
FOUND = 302,
|
|
15
|
+
SEE_OTHER = 303,
|
|
16
|
+
NOT_MODIFIED = 304,
|
|
17
|
+
TEMPORARY_REDIRECT = 307,
|
|
18
|
+
PERMANENT_REDIRECT = 308,
|
|
19
|
+
BAD_REQUEST = 400,
|
|
20
|
+
UNAUTHORIZED = 401,
|
|
21
|
+
PAYMENT_REQUIRED = 402,
|
|
22
|
+
FORBIDDEN = 403,
|
|
23
|
+
NOT_FOUND = 404,
|
|
24
|
+
METHOD_NOT_ALLOWED = 405,
|
|
25
|
+
NOT_ACCEPTABLE = 406,
|
|
26
|
+
PROXY_AUTHENTICATION_REQUIRED = 407,
|
|
27
|
+
REQUEST_TIMEOUT = 408,
|
|
28
|
+
CONFLICT = 409,
|
|
29
|
+
GONE = 410,
|
|
30
|
+
LENGTH_REQUIRED = 411,
|
|
31
|
+
PRECONDITION_FAILED = 412,
|
|
32
|
+
PAYLOAD_TOO_LARGE = 413,
|
|
33
|
+
URI_TOO_LONG = 414,
|
|
34
|
+
UNSUPPORTED_MEDIA_TYPE = 415,
|
|
35
|
+
REQUESTED_RANGE_NOT_SATISFIABLE = 416,
|
|
36
|
+
EXPECTATION_FAILED = 417,
|
|
37
|
+
I_AM_A_TEAPOT = 418,
|
|
38
|
+
UNPROCESSABLE_ENTITY = 422,
|
|
39
|
+
FAILED_DEPENDENCY = 424,
|
|
40
|
+
TOO_MANY_REQUESTS = 429,
|
|
41
|
+
INTERNAL_SERVER_ERROR = 500,
|
|
42
|
+
NOT_IMPLEMENTED = 501,
|
|
43
|
+
BAD_GATEWAY = 502,
|
|
44
|
+
SERVICE_UNAVAILABLE = 503,
|
|
45
|
+
GATEWAY_TIMEOUT = 504,
|
|
46
|
+
HTTP_VERSION_NOT_SUPPORTED = 505
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export enum RequestMethodEnum {
|
|
50
|
+
GET = 'GET',
|
|
51
|
+
POST = 'POST',
|
|
52
|
+
PUT = 'PUT',
|
|
53
|
+
DELETE = 'DELETE',
|
|
54
|
+
PATCH = 'PATCH',
|
|
55
|
+
ALL = 'ALL',
|
|
56
|
+
OPTIONS = 'OPTIONS',
|
|
57
|
+
HEAD = 'HEAD'
|
|
58
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { IBasePerTenantEntityModel } from "./base-entity.model";
|
|
2
|
+
|
|
3
|
+
export interface IImportRecord extends IBasePerTenantEntityModel {
|
|
4
|
+
entityType?: string;
|
|
5
|
+
sourceId?: string;
|
|
6
|
+
destinationId?: string;
|
|
7
|
+
importDate?: Date;
|
|
8
|
+
wasCreated?: boolean;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface IImportRecordFind extends IBasePerTenantEntityModel {
|
|
12
|
+
entityType?: string;
|
|
13
|
+
sourceId?: string;
|
|
14
|
+
destinationId?: string;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export interface IImportHistory extends IBasePerTenantEntityModel {
|
|
18
|
+
file: string;
|
|
19
|
+
path: string;
|
|
20
|
+
size: number;
|
|
21
|
+
status: string;
|
|
22
|
+
importDate?: Date;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export interface IEntityModel {
|
|
26
|
+
name: string;
|
|
27
|
+
value: string;
|
|
28
|
+
checked: boolean;
|
|
29
|
+
isGroup: boolean;
|
|
30
|
+
entities: IEntityModel[];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export enum ImportTypeEnum {
|
|
34
|
+
MERGE = 'merge',
|
|
35
|
+
CLEAN = 'clean',
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export enum ImportHistoryStatusEnum {
|
|
39
|
+
SUCCESS = 'Success',
|
|
40
|
+
FAILED = 'Failed',
|
|
41
|
+
CANCELLED = 'Cancelled'
|
|
42
|
+
}
|