@metad/contracts 3.6.0 → 3.6.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.
Files changed (287) hide show
  1. package/.babelrc +5 -0
  2. package/.eslintrc.json +18 -0
  3. package/babel.config.json +1 -0
  4. package/index.cjs.js +5 -3996
  5. package/jest.config.ts +16 -0
  6. package/package.json +2 -2
  7. package/project.json +53 -0
  8. package/src/agent/{ai-model.d.ts → ai-model.ts} +2 -2
  9. package/src/agent/graph.ts +272 -0
  10. package/src/agent/index.ts +5 -0
  11. package/src/agent/token.ts +23 -0
  12. package/src/agent/utils.spec.ts +283 -0
  13. package/src/agent/utils.ts +122 -0
  14. package/src/agent/variables.ts +21 -0
  15. package/src/ai/ai-model.model.ts +228 -0
  16. package/src/ai/ai-provider.model.ts +53 -0
  17. package/src/ai/ai.model.ts +87 -0
  18. package/src/ai/chat-message-feedback.model.ts +31 -0
  19. package/src/ai/chat-message.model.ts +277 -0
  20. package/src/ai/chat.model.ts +207 -0
  21. package/src/ai/copilot-checkpoint.model.ts +25 -0
  22. package/src/ai/copilot-example.model.ts +23 -0
  23. package/src/ai/copilot-model.model.ts +31 -0
  24. package/src/ai/copilot-organization.model.ts +21 -0
  25. package/src/ai/copilot-provider.model.ts +46 -0
  26. package/src/ai/copilot-role.model.ts +48 -0
  27. package/src/ai/copilot-store.model.ts +34 -0
  28. package/src/ai/copilot-user.model.ts +24 -0
  29. package/src/ai/copilot.model.ts +47 -0
  30. package/src/ai/{environment.model.d.ts → environment.model.ts} +12 -10
  31. package/src/ai/feature.model.ts +6 -0
  32. package/src/ai/index.ts +39 -0
  33. package/src/ai/knowledge-doc-chunk.model.ts +120 -0
  34. package/src/ai/knowledge-doc-chunk.spec.ts +47 -0
  35. package/src/ai/knowledge-doc-page.model.ts +20 -0
  36. package/src/ai/knowledge-doc.model.ts +252 -0
  37. package/src/ai/knowledge-pipeline.ts +138 -0
  38. package/src/ai/knowledge-retrieval-log.model.ts +19 -0
  39. package/src/ai/knowledgebase-task.model.ts +46 -0
  40. package/src/ai/knowledgebase.model.ts +190 -0
  41. package/src/ai/rag-web.ts +54 -0
  42. package/src/ai/rag.ts +24 -0
  43. package/src/ai/role-permissions.ts +13 -0
  44. package/src/ai/types.ts +83 -0
  45. package/src/ai/xpert-agent-execution.model.ts +115 -0
  46. package/src/ai/xpert-agent.model.ts +258 -0
  47. package/src/ai/xpert-project.model.ts +103 -0
  48. package/src/ai/xpert-task.model.ts +32 -0
  49. package/src/ai/xpert-template.model.ts +53 -0
  50. package/src/ai/xpert-tool-mcp.model.ts +72 -0
  51. package/src/ai/xpert-tool.model.ts +211 -0
  52. package/src/ai/xpert-toolset.model.ts +220 -0
  53. package/src/ai/xpert-workflow-task.prompt.ts +71 -0
  54. package/src/ai/xpert-workflow.model.ts +449 -0
  55. package/src/ai/xpert-workspace.model.ts +42 -0
  56. package/src/ai/xpert.model.ts +613 -0
  57. package/src/ai/xpert.utils.ts +214 -0
  58. package/src/analytics/ai.ts +79 -0
  59. package/src/analytics/approval-policy.model.ts +40 -0
  60. package/src/analytics/business-area-user.model.ts +43 -0
  61. package/src/analytics/business-area.ts +20 -0
  62. package/src/analytics/certification.model.ts +12 -0
  63. package/src/analytics/chatbi-conversation.model.ts +16 -0
  64. package/src/analytics/chatbi-model.model.ts +22 -0
  65. package/src/analytics/collection.model.ts +8 -0
  66. package/src/analytics/comment.model.ts +14 -0
  67. package/src/analytics/data-source-type.ts +19 -0
  68. package/src/analytics/data-source.ts +72 -0
  69. package/src/analytics/favorite.ts +18 -0
  70. package/src/analytics/features.ts +19 -0
  71. package/src/analytics/feed-model.ts +15 -0
  72. package/src/analytics/gateway.ts +30 -0
  73. package/src/analytics/index.ts +39 -0
  74. package/src/analytics/indicator-app.ts +49 -0
  75. package/src/analytics/{indicator-market.d.ts → indicator-market.ts} +6 -2
  76. package/src/analytics/indicator.ts +127 -0
  77. package/src/analytics/model-query-log.model.ts +45 -0
  78. package/src/analytics/model-query.ts +22 -0
  79. package/src/analytics/{notification-destination.d.ts → notification-destination.ts} +9 -5
  80. package/src/analytics/{permission-approval-user.model.d.ts → permission-approval-user.model.ts} +10 -8
  81. package/src/analytics/permission-approval.model.ts +58 -0
  82. package/src/analytics/project.model.ts +56 -0
  83. package/src/analytics/role-permissions.ts +36 -0
  84. package/src/analytics/schema.ts +300 -0
  85. package/src/analytics/screenshot.model.ts +28 -0
  86. package/src/analytics/semantic-model-entity.ts +49 -0
  87. package/src/analytics/semantic-model-member.ts +45 -0
  88. package/src/analytics/semantic-model.ts +227 -0
  89. package/src/analytics/{story-point.d.ts → story-point.ts} +11 -6
  90. package/src/analytics/story-template.model.ts +34 -0
  91. package/src/analytics/story-widget.ts +15 -0
  92. package/src/analytics/story.ts +109 -0
  93. package/src/analytics/subscription.ts +43 -0
  94. package/src/analytics/visit.model.ts +39 -0
  95. package/src/analytics/webSocket.ts +53 -0
  96. package/src/api-key.model.ts +11 -0
  97. package/src/base-entity.model.ts +34 -0
  98. package/src/contact.model.ts +45 -0
  99. package/src/core.model.ts +103 -0
  100. package/src/{country.model.d.ts → country.model.ts} +3 -2
  101. package/src/currency.model.ts +582 -0
  102. package/src/{custom-smtp.model.d.ts → custom-smtp.model.ts} +21 -17
  103. package/src/date-picker.model.ts +5 -0
  104. package/src/email-template.model.ts +50 -0
  105. package/src/email.model.ts +46 -0
  106. package/src/employee.model.ts +199 -0
  107. package/src/entity-with-members.model.ts +16 -0
  108. package/src/feature.model.ts +108 -0
  109. package/src/file-provider.ts +37 -0
  110. package/src/help-center-article.model.ts +35 -0
  111. package/src/help-center.model.ts +33 -0
  112. package/src/http-status.enum.ts +58 -0
  113. package/src/import-export.model.ts +42 -0
  114. package/src/index.ts +60 -0
  115. package/src/integration/dify.ts +31 -0
  116. package/src/integration/dingtalk.ts +16 -0
  117. package/src/integration/fastgpt.ts +32 -0
  118. package/src/integration/firecrawl.ts +46 -0
  119. package/src/integration/github.ts +149 -0
  120. package/src/integration/index.ts +15 -0
  121. package/src/integration/lark.ts +79 -0
  122. package/src/integration/wecom.ts +16 -0
  123. package/src/integration.model.ts +119 -0
  124. package/src/invite.model.ts +144 -0
  125. package/src/language.model.ts +22 -0
  126. package/src/organization-contact.model.ts +84 -0
  127. package/src/{organization-department.model.d.ts → organization-department.model.ts} +16 -10
  128. package/src/organization-language.model.ts +24 -0
  129. package/src/organization-projects.model.ts +99 -0
  130. package/src/organization-team-employee-model.ts +14 -0
  131. package/src/organization-team-model.ts +25 -0
  132. package/src/organization.model.ts +266 -0
  133. package/src/password-reset.model.ts +22 -0
  134. package/src/{plain-object.model.d.ts → plain-object.model.ts} +1 -1
  135. package/src/plugin.ts +15 -0
  136. package/src/role-permission.model.ts +123 -0
  137. package/src/role.model.ts +31 -0
  138. package/src/schedule.ts +71 -0
  139. package/src/secret-token.model.ts +15 -0
  140. package/src/seed.model.ts +50 -0
  141. package/src/storage-file.model.ts +46 -0
  142. package/src/tag-entity.model.ts +23 -0
  143. package/src/tenant.model.ts +52 -0
  144. package/src/tools/index.ts +1 -0
  145. package/src/tools/sandbox.ts +5 -0
  146. package/src/translation.model.ts +37 -0
  147. package/src/types.ts +277 -0
  148. package/src/user-organization.model.ts +31 -0
  149. package/src/user.model.ts +151 -0
  150. package/src/visibility.model.ts +6 -0
  151. package/tsconfig.json +22 -0
  152. package/tsconfig.lib.json +10 -0
  153. package/tsconfig.spec.json +9 -0
  154. package/index.cjs.d.ts +0 -1
  155. package/index.esm.d.ts +0 -1
  156. package/index.esm.js +0 -3900
  157. package/src/agent/graph.d.ts +0 -148
  158. package/src/agent/index.d.ts +0 -5
  159. package/src/agent/token.d.ts +0 -21
  160. package/src/agent/utils.d.ts +0 -19
  161. package/src/agent/variables.d.ts +0 -14
  162. package/src/ai/ai-model.model.d.ts +0 -195
  163. package/src/ai/ai-provider.model.d.ts +0 -43
  164. package/src/ai/ai.model.d.ts +0 -82
  165. package/src/ai/chat-message-feedback.model.d.ts +0 -24
  166. package/src/ai/chat-message.model.d.ts +0 -222
  167. package/src/ai/chat.model.d.ts +0 -189
  168. package/src/ai/copilot-checkpoint.model.d.ts +0 -23
  169. package/src/ai/copilot-example.model.d.ts +0 -19
  170. package/src/ai/copilot-model.model.d.ts +0 -26
  171. package/src/ai/copilot-organization.model.d.ts +0 -17
  172. package/src/ai/copilot-provider.model.d.ts +0 -31
  173. package/src/ai/copilot-role.model.d.ts +0 -43
  174. package/src/ai/copilot-store.model.d.ts +0 -29
  175. package/src/ai/copilot-user.model.d.ts +0 -20
  176. package/src/ai/copilot.model.d.ts +0 -36
  177. package/src/ai/feature.model.d.ts +0 -6
  178. package/src/ai/index.d.ts +0 -38
  179. package/src/ai/knowledge-doc-page.model.d.ts +0 -15
  180. package/src/ai/knowledge-doc.model.d.ts +0 -177
  181. package/src/ai/knowledge-pipeline.d.ts +0 -100
  182. package/src/ai/knowledge-retrieval-log.model.d.ts +0 -10
  183. package/src/ai/knowledgebase-task.model.d.ts +0 -36
  184. package/src/ai/knowledgebase.model.d.ts +0 -160
  185. package/src/ai/rag-web.d.ts +0 -26
  186. package/src/ai/rag.d.ts +0 -24
  187. package/src/ai/role-permissions.d.ts +0 -13
  188. package/src/ai/types.d.ts +0 -39
  189. package/src/ai/xpert-agent-execution.model.d.ts +0 -96
  190. package/src/ai/xpert-agent.model.d.ts +0 -192
  191. package/src/ai/xpert-project.model.d.ts +0 -86
  192. package/src/ai/xpert-task.model.d.ts +0 -26
  193. package/src/ai/xpert-template.model.d.ts +0 -47
  194. package/src/ai/xpert-tool-mcp.model.d.ts +0 -67
  195. package/src/ai/xpert-tool.model.d.ts +0 -147
  196. package/src/ai/xpert-toolset.model.d.ts +0 -200
  197. package/src/ai/xpert-workflow-task.prompt.d.ts +0 -2
  198. package/src/ai/xpert-workflow.model.d.ts +0 -365
  199. package/src/ai/xpert-workspace.model.d.ts +0 -32
  200. package/src/ai/xpert.model.d.ts +0 -497
  201. package/src/ai/xpert.utils.d.ts +0 -80
  202. package/src/analytics/ai.d.ts +0 -73
  203. package/src/analytics/approval-policy.model.d.ts +0 -30
  204. package/src/analytics/business-area-user.model.d.ts +0 -35
  205. package/src/analytics/business-area.d.ts +0 -17
  206. package/src/analytics/certification.model.d.ts +0 -11
  207. package/src/analytics/chatbi-conversation.model.d.ts +0 -15
  208. package/src/analytics/chatbi-model.model.d.ts +0 -18
  209. package/src/analytics/collection.model.d.ts +0 -6
  210. package/src/analytics/comment.model.d.ts +0 -10
  211. package/src/analytics/data-source-type.d.ts +0 -16
  212. package/src/analytics/data-source.d.ts +0 -62
  213. package/src/analytics/favorite.d.ts +0 -14
  214. package/src/analytics/features.d.ts +0 -19
  215. package/src/analytics/feed-model.d.ts +0 -13
  216. package/src/analytics/gateway.d.ts +0 -27
  217. package/src/analytics/index.d.ts +0 -38
  218. package/src/analytics/indicator-app.d.ts +0 -44
  219. package/src/analytics/indicator.d.ts +0 -106
  220. package/src/analytics/model-query-log.model.d.ts +0 -41
  221. package/src/analytics/model-query.d.ts +0 -21
  222. package/src/analytics/permission-approval.model.d.ts +0 -47
  223. package/src/analytics/project.model.d.ts +0 -50
  224. package/src/analytics/role-permissions.d.ts +0 -25
  225. package/src/analytics/schema.d.ts +0 -262
  226. package/src/analytics/screenshot.model.d.ts +0 -25
  227. package/src/analytics/semantic-model-entity.d.ts +0 -37
  228. package/src/analytics/semantic-model-member.d.ts +0 -24
  229. package/src/analytics/semantic-model.d.ts +0 -175
  230. package/src/analytics/story-template.model.d.ts +0 -28
  231. package/src/analytics/story-widget.d.ts +0 -12
  232. package/src/analytics/story.d.ts +0 -93
  233. package/src/analytics/subscription.d.ts +0 -38
  234. package/src/analytics/visit.model.d.ts +0 -34
  235. package/src/analytics/webSocket.d.ts +0 -48
  236. package/src/api-key.model.d.ts +0 -10
  237. package/src/base-entity.model.d.ts +0 -27
  238. package/src/contact.model.d.ts +0 -41
  239. package/src/core.model.d.ts +0 -97
  240. package/src/currency.model.d.ts +0 -579
  241. package/src/date-picker.model.d.ts +0 -5
  242. package/src/email-template.model.d.ts +0 -39
  243. package/src/email.model.d.ts +0 -36
  244. package/src/employee.model.d.ts +0 -128
  245. package/src/entity-with-members.model.d.ts +0 -13
  246. package/src/feature.model.d.ts +0 -93
  247. package/src/file-provider.d.ts +0 -33
  248. package/src/help-center-article.model.d.ts +0 -0
  249. package/src/help-center.model.d.ts +0 -0
  250. package/src/http-status.enum.d.ts +0 -57
  251. package/src/import-export.model.d.ts +0 -36
  252. package/src/index.d.ts +0 -48
  253. package/src/integration/dify.d.ts +0 -0
  254. package/src/integration/dingtalk.d.ts +0 -2
  255. package/src/integration/fastgpt.d.ts +0 -0
  256. package/src/integration/firecrawl.d.ts +0 -2
  257. package/src/integration/github.d.ts +0 -69
  258. package/src/integration/index.d.ts +0 -4
  259. package/src/integration/lark.d.ts +0 -11
  260. package/src/integration/ragflow.d.ts +0 -0
  261. package/src/integration/wecom.d.ts +0 -2
  262. package/src/integration.model.d.ts +0 -86
  263. package/src/invite.model.d.ts +0 -123
  264. package/src/language.model.d.ts +0 -19
  265. package/src/organization-contact.model.d.ts +0 -73
  266. package/src/organization-language.model.d.ts +0 -18
  267. package/src/organization-projects.model.d.ts +0 -80
  268. package/src/organization-team-employee-model.d.ts +0 -12
  269. package/src/organization-team-model.d.ts +0 -19
  270. package/src/organization.model.d.ts +0 -239
  271. package/src/password-reset.model.d.ts +0 -18
  272. package/src/plugin.d.ts +0 -13
  273. package/src/role-permission.model.d.ts +0 -61
  274. package/src/role.model.d.ts +0 -26
  275. package/src/schedule.d.ts +0 -27
  276. package/src/secret-token.model.d.ts +0 -11
  277. package/src/seed.model.d.ts +0 -37
  278. package/src/storage-file.model.d.ts +0 -40
  279. package/src/tag-entity.model.d.ts +0 -20
  280. package/src/tenant.model.d.ts +0 -40
  281. package/src/tools/index.d.ts +0 -1
  282. package/src/tools/sandbox.d.ts +0 -5
  283. package/src/translation.model.d.ts +0 -26
  284. package/src/types.d.ts +0 -240
  285. package/src/user-organization.model.d.ts +0 -24
  286. package/src/user.model.d.ts +0 -128
  287. package/src/visibility.model.d.ts +0 -6
@@ -0,0 +1,84 @@
1
+ import { IEmployee } from './employee.model';
2
+ import { IOrganizationCreateInput } from './organization.model';
3
+ import { IBaseEntityWithMembers } from './entity-with-members.model';
4
+ import { IUser, LanguagesEnum } from './user.model';
5
+ import { ITag } from './tag-entity.model';
6
+ import { IContact } from './contact.model';
7
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
8
+
9
+ export interface IOrganizationContact extends IBaseEntityWithMembers {
10
+ name: string;
11
+ contactType: string;
12
+ primaryEmail: string;
13
+ emailAddresses?: string[];
14
+ primaryPhone: string;
15
+ phones?: string[];
16
+ notes?: string;
17
+ members?: IEmployee[];
18
+ imageUrl?: string;
19
+ inviteStatus?: string;
20
+ tags: ITag[];
21
+ contact: IContact;
22
+ budget?: number;
23
+ budgetType?: OrganizationContactBudgetTypeEnum;
24
+ }
25
+
26
+ export enum OrganizationContactBudgetTypeEnum {
27
+ HOURS = 'hours',
28
+ COST = 'cost'
29
+ }
30
+
31
+ export interface IOrganizationContactFindInput
32
+ extends IBasePerTenantAndOrganizationEntityModel {
33
+ name?: string;
34
+ primaryEmail?: string;
35
+ primaryPhone?: string;
36
+ notes?: string;
37
+ imageUrl?: string;
38
+ contactType?: string;
39
+ // createdBy?: string;
40
+ }
41
+
42
+ export interface IOrganizationContactCreateInput extends IContact {
43
+ name: string;
44
+ organizationId: string;
45
+ contactId?: string;
46
+ primaryEmail?: string;
47
+ emailAddresses?: string[];
48
+ primaryPhone?: string;
49
+ phones?: string[];
50
+ members?: IEmployee[];
51
+ notes?: string;
52
+ imageUrl?: string;
53
+ contactType?: string;
54
+ // createdBy?: string;
55
+ }
56
+
57
+ export interface IOrganizationContactInviteInput {
58
+ id: string;
59
+ languageCode: LanguagesEnum;
60
+ originalUrl?: string;
61
+ inviterUser?: IUser;
62
+ }
63
+ export interface IOrganizationContactRegistrationInput {
64
+ user: IUser;
65
+ password: string;
66
+ contactOrganization: IOrganizationCreateInput;
67
+ }
68
+ export interface IOrganizationContactAcceptInviteInput
69
+ extends IOrganizationContactRegistrationInput {
70
+ inviteId: string;
71
+ originalUrl?: string;
72
+ }
73
+
74
+ export enum ContactOrganizationInviteStatus {
75
+ NOT_INVITED = 'NOT_INVITED',
76
+ INVITED = 'INVITED',
77
+ ACCEPTED = 'ACCEPTED'
78
+ }
79
+
80
+ export enum ContactType {
81
+ CLIENT = 'CLIENT',
82
+ CUSTOMER = 'CUSTOMER',
83
+ LEAD = 'LEAD'
84
+ }
@@ -2,19 +2,25 @@ import { IBaseEntityWithMembers } from './entity-with-members.model';
2
2
  import { IEmployee } from './employee.model';
3
3
  import { ITag } from './tag-entity.model';
4
4
  import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
5
+
5
6
  export interface IOrganizationDepartment extends IBaseEntityWithMembers {
6
- name: string;
7
- tags: ITag[];
7
+ name: string;
8
+ tags: ITag[];
8
9
  }
9
- export interface IOrganizationDepartmentFindInput extends IBasePerTenantAndOrganizationEntityModel {
10
- name?: string;
10
+
11
+ export interface IOrganizationDepartmentFindInput
12
+ extends IBasePerTenantAndOrganizationEntityModel {
13
+ name?: string;
11
14
  }
15
+
12
16
  export interface IOrganizationDepartmentFindByMemberInput {
13
- memberId: string;
14
- tags: ITag[];
17
+ memberId: string;
18
+ tags: ITag[];
15
19
  }
16
- export interface IOrganizationDepartmentCreateInput extends IBasePerTenantAndOrganizationEntityModel {
17
- name: string;
18
- members?: IEmployee[];
19
- tags: ITag[];
20
+
21
+ export interface IOrganizationDepartmentCreateInput
22
+ extends IBasePerTenantAndOrganizationEntityModel {
23
+ name: string;
24
+ members?: IEmployee[];
25
+ tags: ITag[];
20
26
  }
@@ -0,0 +1,24 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { ILanguage, ILanguageFindInput } from './language.model';
3
+
4
+ export interface IOrganizationLanguage
5
+ extends IBasePerTenantAndOrganizationEntityModel {
6
+ language: ILanguage;
7
+ languageCode: string;
8
+ level: string;
9
+ name: string;
10
+ }
11
+
12
+ export interface IOrganizationLanguageFindInput
13
+ extends IBasePerTenantAndOrganizationEntityModel {
14
+ language?: ILanguageFindInput;
15
+ level?: string;
16
+ name?: string;
17
+ }
18
+
19
+ export interface IOrganizationLanguageCreateInput
20
+ extends IBasePerTenantAndOrganizationEntityModel {
21
+ language: ILanguage;
22
+ level: string;
23
+ name: string;
24
+ }
@@ -0,0 +1,99 @@
1
+ import { IEmployee } from './employee.model';
2
+ import { IOrganizationContact } from './organization-contact.model';
3
+ import {
4
+ CrudActionEnum,
5
+ ProjectBillingEnum,
6
+ ProjectOwnerEnum
7
+ } from './organization.model';
8
+ import { IBaseEntityWithMembers } from './entity-with-members.model';
9
+ import { ITag } from './tag-entity.model';
10
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
11
+ import { CurrenciesEnum } from './currency.model';
12
+
13
+ export interface IOrganizationProject extends IBaseEntityWithMembers {
14
+ name: string;
15
+ organizationContact?: IOrganizationContact;
16
+ organizationContactId?: string;
17
+ startDate?: Date;
18
+ endDate?: Date;
19
+ billing: string;
20
+ currency: string;
21
+ members?: IEmployee[];
22
+ public: boolean;
23
+ tags: ITag[];
24
+ owner: string;
25
+
26
+ taskListType: string;
27
+ // prefix to project tasks / issues, e.g. GA-XXXX (GA is prefix)
28
+ code?: string;
29
+ description?: string;
30
+ // the color of project which is used in UI
31
+ color?: string;
32
+ // is project billable?
33
+ billable?: boolean;
34
+ // true if the project is flat rate, false if the project is time / materials billable
35
+ billingFlat?: boolean;
36
+ openSource?: boolean;
37
+ projectUrl?: string;
38
+ openSourceProjectUrl?: string;
39
+ budget?: number;
40
+ budgetType?: OrganizationProjectBudgetTypeEnum;
41
+ membersCount?: number;
42
+ imageUrl?: string;
43
+ }
44
+
45
+ export enum TaskListTypeEnum {
46
+ GRID = 'GRID',
47
+ SPRINT = 'SPRINT'
48
+ }
49
+
50
+ export enum OrganizationProjectBudgetTypeEnum {
51
+ HOURS = 'hours',
52
+ COST = 'cost'
53
+ }
54
+
55
+ export interface IOrganizationProjectsFindInput
56
+ extends IBasePerTenantAndOrganizationEntityModel {
57
+ name?: string;
58
+ organizationContactId?: string;
59
+ organizationContact?: IOrganizationContact;
60
+ members?: IEmployee[];
61
+ public?: boolean;
62
+ tags?: ITag[];
63
+ billable?: boolean;
64
+ billingFlat?: boolean;
65
+ }
66
+
67
+ export interface IOrganizationProjectsCreateInput
68
+ extends IBasePerTenantAndOrganizationEntityModel {
69
+ name: string;
70
+ organizationContact?: IOrganizationContact;
71
+ organizationContactId?: string;
72
+ startDate?: Date;
73
+ endDate?: Date;
74
+ billing?: ProjectBillingEnum;
75
+ currency?: CurrenciesEnum;
76
+ members?: IEmployee[];
77
+ public?: boolean;
78
+ tags?: ITag[];
79
+ owner?: ProjectOwnerEnum;
80
+ code?: string;
81
+ description?: string;
82
+ color?: string;
83
+ billable?: boolean;
84
+ billingFlat?: boolean;
85
+ status?: string;
86
+ openSource?: boolean;
87
+ projectUrl?: string;
88
+ openSourceProjectUrl?: string;
89
+ }
90
+
91
+ export interface IOrganizationProjectsUpdateInput
92
+ extends IOrganizationProjectsCreateInput {
93
+ id?: string;
94
+ }
95
+
96
+ export interface IOrganizationProjectStoreState {
97
+ project: IOrganizationProject;
98
+ action: CrudActionEnum;
99
+ }
@@ -0,0 +1,14 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { IOrganizationTeam } from './organization-team-model';
3
+ import { IEmployee } from './employee.model';
4
+ import { IRole } from './role.model';
5
+
6
+ export interface IOrganizationTeamEmployee
7
+ extends IBasePerTenantAndOrganizationEntityModel {
8
+ organizationTeamId: string;
9
+ employeeId: string;
10
+ roleId?: string;
11
+ organizationTeam: IOrganizationTeam;
12
+ employee: IEmployee;
13
+ role?: IRole;
14
+ }
@@ -0,0 +1,25 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from './base-entity.model';
2
+ import { IOrganizationTeamEmployee } from './organization-team-employee-model';
3
+ import { ITag } from './tag-entity.model';
4
+
5
+ export interface IOrganizationTeam
6
+ extends IBasePerTenantAndOrganizationEntityModel {
7
+ name: string;
8
+ members?: IOrganizationTeamEmployee[];
9
+ managers?: IOrganizationTeamEmployee[];
10
+ tags?: ITag[];
11
+ }
12
+
13
+ export interface IOrganizationTeamFindInput
14
+ extends IBasePerTenantAndOrganizationEntityModel {
15
+ name?: string;
16
+ tags?: ITag[];
17
+ }
18
+
19
+ export interface IOrganizationTeamCreateInput
20
+ extends IBasePerTenantAndOrganizationEntityModel {
21
+ name?: string;
22
+ members?: string[];
23
+ managers?: string[];
24
+ tags?: ITag[];
25
+ }
@@ -0,0 +1,266 @@
1
+ import { IBasePerTenantEntityModel } from './base-entity.model';
2
+ import { IContact } from './contact.model';
3
+ import { CurrenciesEnum } from './currency.model';
4
+ import { IEmployee } from './employee.model';
5
+ import { IFeatureOrganization } from './feature.model';
6
+ import { IOrganizationLanguage } from './organization-language.model';
7
+ import { ITag } from './tag-entity.model';
8
+ import { ITenant } from './tenant.model';
9
+ import { LanguagesEnum } from './user.model';
10
+
11
+ export enum OrganizationPermissionsEnum {
12
+ ALLOW_MANUAL_TIME = 'allowManualTime',
13
+ ALLOW_MODIFY_TIME = 'allowModifyTime',
14
+ ALLOW_DELETE_TIME = 'allowDeleteTime',
15
+ ALLOW_FUTURE_DATE = 'futureDateAllowed'
16
+ }
17
+
18
+ export enum ListsInputTypeEnum {
19
+ DEPARTMENTS = 'DEPARTMENTS',
20
+ POSITIONS = 'POSITIONS',
21
+ VENDORS = 'VENDORS'
22
+ }
23
+
24
+ export interface IOrganization extends IBasePerTenantEntityModel {
25
+ name: string;
26
+ isDefault: boolean;
27
+ profile_link: string;
28
+ valueDate?: Date;
29
+ totalEmployees: number;
30
+ status?: string;
31
+ // Organization logo Url
32
+ imageUrl?: string;
33
+ banner: string;
34
+ short_description: string;
35
+ client_focus: string;
36
+ createdDemo?: boolean
37
+ show_income?: boolean;
38
+ show_profits?: boolean;
39
+ show_bonuses_paid?: boolean;
40
+ show_total_hours?: boolean;
41
+ show_minimum_project_size?: boolean;
42
+ show_projects_count?: boolean;
43
+ show_clients_count?: boolean;
44
+ show_employees_count?: boolean;
45
+ overview: string;
46
+ currency: string;
47
+ isActive: boolean;
48
+ defaultValueDateType: string;
49
+ defaultAlignmentType?: string;
50
+ dateFormat?: string;
51
+ brandColor?: string;
52
+ timeZone?: string;
53
+ officialName?: string;
54
+ startWeekOn?: string;
55
+ taxId?: string;
56
+ numberFormat?: string;
57
+ bonusType?: string;
58
+ bonusPercentage?: number;
59
+ employees?: IEmployee[];
60
+ invitesAllowed?: boolean;
61
+ inviteExpiryPeriod?: number;
62
+ tags: ITag[];
63
+ futureDateAllowed?: boolean;
64
+ allowManualTime?: boolean;
65
+ allowModifyTime?: boolean;
66
+ allowDeleteTime?: boolean;
67
+ regionCode?: string;
68
+ requireReason?: boolean;
69
+ requireDescription?: boolean;
70
+ requireProject?: boolean;
71
+ requireTask?: boolean;
72
+ requireClient?: boolean;
73
+ timeFormat?: 12 | 24;
74
+ defaultStartTime?: string;
75
+ defaultEndTime?: string;
76
+ registrationDate?: Date;
77
+ contact: IContact;
78
+ separateInvoiceItemTaxAndDiscount?: boolean;
79
+ minimumProjectSize?: string;
80
+ show_clients?: boolean;
81
+ // "left" and "right" values, used to know where to put currency symbol relative to amount
82
+ currencyPosition?: string;
83
+ website?: string;
84
+ // used in invoice headers to display organization details
85
+ fiscalInformation?: string;
86
+ fiscalStartDate?: Date;
87
+ fiscalEndDate?: Date;
88
+ discountAfterTax?: boolean;
89
+ languages?: IOrganizationLanguage[];
90
+ featureOrganizations?: IFeatureOrganization[];
91
+ defaultInvoiceEstimateTerms?: string;
92
+ convertAcceptedEstimates?: boolean;
93
+ daysUntilDue?: number;
94
+ preferredLanguage?: LanguagesEnum;
95
+ }
96
+
97
+ export interface IOrganizationFindInput extends IBasePerTenantEntityModel {
98
+ id?: string;
99
+ name?: string;
100
+ isDefault?: boolean;
101
+ profile_link?: string;
102
+ valueDate?: Date;
103
+ imageUrl?: string;
104
+ currency?: CurrenciesEnum;
105
+ isActive?: boolean;
106
+ tags?: ITag[];
107
+ }
108
+
109
+ export interface IOrganizationCreateInput extends IContact {
110
+ name: string;
111
+ isDefault: boolean;
112
+ profile_link: string;
113
+ valueDate?: Date;
114
+ imageUrl: string;
115
+ currency: CurrenciesEnum;
116
+ client_focus: string;
117
+ show_income?: boolean;
118
+ show_profits?: boolean;
119
+ show_bonuses_paid?: boolean;
120
+ show_total_hours?: boolean;
121
+ show_minimum_project_size?: boolean;
122
+ show_projects_count?: boolean;
123
+ show_clients_count?: boolean;
124
+ show_employees_count?: boolean;
125
+ defaultValueDateType: DefaultValueDateTypeEnum;
126
+ dateFormat?: string;
127
+ timeZone?: string;
128
+ officialName?: string;
129
+ startWeekOn?: string;
130
+ taxId?: string;
131
+ numberFormat?: string;
132
+ bonusType: BonusTypeEnum;
133
+ bonusPercentage?: number;
134
+ invitesAllowed?: boolean;
135
+ inviteExpiryPeriod?: number;
136
+ tags?: ITag[];
137
+ tenant: ITenant;
138
+ contact?: IContact;
139
+ minimumProjectSize?: string;
140
+ show_clients?: boolean;
141
+ website?: string;
142
+ fiscalInformation?: string;
143
+ defaultInvoiceEstimateTerms?: string;
144
+ convertAcceptedEstimates?: boolean;
145
+ daysUntilDue?: number;
146
+ preferredLanguage?: LanguagesEnum;
147
+
148
+ isImporting?: boolean;
149
+ sourceId?: string;
150
+ userOrganizationSourceId?: string;
151
+ }
152
+
153
+ export interface IOrganizationUpdateInput extends IOrganizationCreateInput {
154
+ id?: string;
155
+ }
156
+
157
+ export enum OrganizationSelectInput {
158
+ id = 'id',
159
+ name = 'name',
160
+ profile_link = 'profile_link',
161
+ valueDate = 'valueDate',
162
+ imageUrl = 'imageUrl',
163
+ currency = 'currency',
164
+ createdAt = 'createdAt',
165
+ updatedAt = 'updatedAt',
166
+ isActive = 'isActive',
167
+ tags = 'tags'
168
+ }
169
+
170
+ export enum RegionsEnum {
171
+ 'EN' = 'English (United States)',
172
+ 'BG' = 'Bulgarian (Bulgaria)',
173
+ 'HE' = 'Hebrew (Israel)',
174
+ 'RU' = 'Rusian (Russia)'
175
+ }
176
+
177
+ export enum DefaultValueDateTypeEnum {
178
+ TODAY = 'TODAY',
179
+ END_OF_MONTH = 'END_OF_MONTH',
180
+ START_OF_MONTH = 'START_OF_MONTH'
181
+ }
182
+
183
+ export enum ProjectBillingEnum {
184
+ RATE = 'RATE',
185
+ FLAT_FEE = 'FLAT_FEE',
186
+ MILESTONES = 'MILESTONES'
187
+ }
188
+
189
+ export enum AlignmentOptions {
190
+ LEFT = 'LEFT',
191
+ RIGHT = 'RIGHT',
192
+ CENTER = 'CENTER'
193
+ }
194
+
195
+ export enum CurrencyPosition {
196
+ LEFT = 'LEFT',
197
+ RIGHT = 'RIGHT'
198
+ }
199
+
200
+ export enum WeekDaysEnum {
201
+ MONDAY = 'MONDAY',
202
+ TUESDAY = 'TUESDAY',
203
+ WEDNESDAY = 'WEDNESDAY',
204
+ THURSDAY = 'THURSDAY',
205
+ FRIDAY = 'FRIDAY',
206
+ SATURDAY = 'SATURDAY',
207
+ SUNDAY = 'SUNDAY'
208
+ }
209
+
210
+ export enum BonusTypeEnum {
211
+ PROFIT_BASED_BONUS = 'PROFIT_BASED_BONUS',
212
+ REVENUE_BASED_BONUS = 'REVENUE_BASED_BONUS'
213
+ }
214
+
215
+ export enum ClientFocusEnum {
216
+ VERY_SMALL_BUSINESSES = 'Very Small Businesses',
217
+ SMALL_BUSINESSES = 'Small Businesses',
218
+ MEDIUM_BUSINESSES = 'Medium Businesses',
219
+ LARGE_BUSINESSES = 'Large Businesses'
220
+ }
221
+
222
+ export enum ProjectOwnerEnum {
223
+ CLIENT = 'CLIENT',
224
+ INTERNAL = 'INTERNAL'
225
+ }
226
+
227
+ export enum MinimumProjectSizeEnum {
228
+ ONE_THOUSAND = '1000+',
229
+ FIVE_THOUSAND = '5000+',
230
+ TEN_THOUSAND = '10000+',
231
+ TWENTY_FIVE_THOUSAND = '25000+',
232
+ FIFTY_THOUSAND = '50000+',
233
+ ONE_HUNDRED_THOUSAND = '100000+'
234
+ }
235
+
236
+ export const DEFAULT_PROFIT_BASED_BONUS = 75;
237
+ export const DEFAULT_REVENUE_BASED_BONUS = 10;
238
+ export const DEFAULT_INVITE_EXPIRY_PERIOD = 7;
239
+
240
+ export interface IOrganizationStoreState {
241
+ organization: IOrganization;
242
+ action: CrudActionEnum;
243
+ }
244
+
245
+ export enum CrudActionEnum {
246
+ CREATED = 'CREATED',
247
+ UPDATED = 'UPDATED',
248
+ DELETED = 'DELETED'
249
+ }
250
+
251
+ export const DEFAULT_DATE_FORMATS: string[] = ['L', 'LL', 'dddd, LL'];
252
+ export const DEFAULT_TIME_FORMATS: number[] = [12, 24];
253
+ export interface IKeyValuePair {
254
+ key: string;
255
+ value: boolean | string;
256
+ }
257
+
258
+ export enum OrganizationDemoNetworkEnum {
259
+ github = 'github',
260
+ aliyun = 'aliyun'
261
+ }
262
+
263
+ export type OrgGenerateDemoOptions = {
264
+ source: OrganizationDemoNetworkEnum | string;
265
+ importData: boolean
266
+ }
@@ -0,0 +1,22 @@
1
+ import { IBasePerTenantEntityModel } from './base-entity.model';
2
+
3
+ export interface IPasswordReset extends IBasePerTenantEntityModel {
4
+ email: string;
5
+ token: string;
6
+ expired?: boolean;
7
+ }
8
+
9
+ export interface IPasswordResetFindInput extends IBasePerTenantEntityModel {
10
+ email?: string;
11
+ token?: string;
12
+ }
13
+
14
+ export interface IChangePasswordRequest {
15
+ token: string;
16
+ password: string;
17
+ confirmPassword: string;
18
+ }
19
+
20
+ export interface IResetPasswordRequest {
21
+ email: string;
22
+ }
@@ -9,5 +9,5 @@
9
9
  * }
10
10
  */
11
11
  export interface PlainObject {
12
- [key: string]: any;
12
+ [key: string]: any;
13
13
  }
package/src/plugin.ts ADDED
@@ -0,0 +1,15 @@
1
+ import { IconDefinition } from './types'
2
+
3
+ export type PluginName = string;
4
+
5
+ export interface PluginMeta {
6
+ name: PluginName
7
+ version: string
8
+ icon?: IconDefinition
9
+ category: 'set' | 'doc-source' | 'agent' | 'tools' | 'model' | 'vlm' | 'vector-store' | 'integration'
10
+ displayName: string
11
+ description: string
12
+ keywords?: string[]
13
+ author: string
14
+ homepage?: string
15
+ }