@metad/contracts 3.6.2 → 3.6.7

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 -4233
  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 +275 -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 +66 -0
  15. package/src/ai/ai-model.model.ts +232 -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 +40 -0
  33. package/src/ai/knowledge-doc-chunk.model.ts +123 -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 +364 -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 +205 -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 +264 -0
  47. package/src/ai/xpert-project.model.ts +103 -0
  48. package/src/ai/xpert-table.model.ts +100 -0
  49. package/src/ai/xpert-task.model.ts +32 -0
  50. package/src/ai/xpert-template.model.ts +53 -0
  51. package/src/ai/xpert-tool-mcp.model.ts +77 -0
  52. package/src/ai/xpert-tool.model.ts +216 -0
  53. package/src/ai/xpert-toolset.model.ts +220 -0
  54. package/src/ai/xpert-workflow-task.prompt.ts +71 -0
  55. package/src/ai/xpert-workflow.model.ts +502 -0
  56. package/src/ai/xpert-workspace.model.ts +42 -0
  57. package/src/ai/xpert.model.ts +637 -0
  58. package/src/ai/xpert.utils.ts +214 -0
  59. package/src/analytics/ai.ts +79 -0
  60. package/src/analytics/approval-policy.model.ts +40 -0
  61. package/src/analytics/business-area-user.model.ts +43 -0
  62. package/src/analytics/business-area.ts +20 -0
  63. package/src/analytics/certification.model.ts +12 -0
  64. package/src/analytics/chatbi-conversation.model.ts +16 -0
  65. package/src/analytics/chatbi-model.model.ts +22 -0
  66. package/src/analytics/collection.model.ts +8 -0
  67. package/src/analytics/comment.model.ts +14 -0
  68. package/src/analytics/data-source-type.ts +19 -0
  69. package/src/analytics/data-source.ts +72 -0
  70. package/src/analytics/favorite.ts +18 -0
  71. package/src/analytics/features.ts +19 -0
  72. package/src/analytics/feed-model.ts +15 -0
  73. package/src/analytics/gateway.ts +31 -0
  74. package/src/analytics/index.ts +39 -0
  75. package/src/analytics/indicator-app.ts +49 -0
  76. package/src/analytics/{indicator-market.d.ts → indicator-market.ts} +6 -2
  77. package/src/analytics/indicator.ts +143 -0
  78. package/src/analytics/model-query-log.model.ts +45 -0
  79. package/src/analytics/model-query.ts +22 -0
  80. package/src/analytics/{notification-destination.d.ts → notification-destination.ts} +9 -5
  81. package/src/analytics/{permission-approval-user.model.d.ts → permission-approval-user.model.ts} +10 -8
  82. package/src/analytics/permission-approval.model.ts +58 -0
  83. package/src/analytics/project.model.ts +56 -0
  84. package/src/analytics/role-permissions.ts +36 -0
  85. package/src/analytics/schema.ts +300 -0
  86. package/src/analytics/screenshot.model.ts +28 -0
  87. package/src/analytics/semantic-model-entity.ts +50 -0
  88. package/src/analytics/semantic-model-member.ts +49 -0
  89. package/src/analytics/semantic-model.ts +237 -0
  90. package/src/analytics/{story-point.d.ts → story-point.ts} +11 -6
  91. package/src/analytics/story-template.model.ts +34 -0
  92. package/src/analytics/story-widget.ts +15 -0
  93. package/src/analytics/story.ts +109 -0
  94. package/src/analytics/subscription.ts +43 -0
  95. package/src/analytics/visit.model.ts +39 -0
  96. package/src/analytics/webSocket.ts +53 -0
  97. package/src/api-key.model.ts +11 -0
  98. package/src/base-entity.model.ts +34 -0
  99. package/src/contact.model.ts +45 -0
  100. package/src/core.model.ts +103 -0
  101. package/src/{country.model.d.ts → country.model.ts} +3 -2
  102. package/src/currency.model.ts +582 -0
  103. package/src/{custom-smtp.model.d.ts → custom-smtp.model.ts} +21 -17
  104. package/src/date-picker.model.ts +5 -0
  105. package/src/email-template.model.ts +50 -0
  106. package/src/email.model.ts +46 -0
  107. package/src/employee.model.ts +199 -0
  108. package/src/entity-with-members.model.ts +16 -0
  109. package/src/feature.model.ts +108 -0
  110. package/src/file-provider.ts +37 -0
  111. package/src/help-center-article.model.ts +35 -0
  112. package/src/help-center.model.ts +33 -0
  113. package/src/http-status.enum.ts +58 -0
  114. package/src/import-export.model.ts +42 -0
  115. package/src/index.ts +60 -0
  116. package/src/integration/dify.ts +31 -0
  117. package/src/integration/dingtalk.ts +16 -0
  118. package/src/integration/fastgpt.ts +32 -0
  119. package/src/integration/firecrawl.ts +46 -0
  120. package/src/integration/github.ts +149 -0
  121. package/src/integration/index.ts +15 -0
  122. package/src/integration/lark.ts +79 -0
  123. package/src/integration/wecom.ts +16 -0
  124. package/src/integration.model.ts +119 -0
  125. package/src/invite.model.ts +144 -0
  126. package/src/language.model.ts +22 -0
  127. package/src/organization-contact.model.ts +84 -0
  128. package/src/{organization-department.model.d.ts → organization-department.model.ts} +16 -10
  129. package/src/organization-language.model.ts +24 -0
  130. package/src/organization-projects.model.ts +99 -0
  131. package/src/organization-team-employee-model.ts +14 -0
  132. package/src/organization-team-model.ts +25 -0
  133. package/src/organization.model.ts +266 -0
  134. package/src/{password-reset.model.d.ts → password-reset.model.ts} +14 -10
  135. package/src/{plain-object.model.d.ts → plain-object.model.ts} +1 -1
  136. package/src/plugin.ts +15 -0
  137. package/src/role-permission.model.ts +123 -0
  138. package/src/role.model.ts +31 -0
  139. package/src/schedule.ts +71 -0
  140. package/src/secret-token.model.ts +15 -0
  141. package/src/seed.model.ts +50 -0
  142. package/src/storage-file.model.ts +46 -0
  143. package/src/tag-entity.model.ts +23 -0
  144. package/src/tenant.model.ts +52 -0
  145. package/src/tools/index.ts +1 -0
  146. package/src/tools/sandbox.ts +5 -0
  147. package/src/translation.model.ts +37 -0
  148. package/src/types.ts +277 -0
  149. package/src/user-organization.model.ts +31 -0
  150. package/src/user.model.ts +151 -0
  151. package/src/visibility.model.ts +6 -0
  152. package/tsconfig.json +22 -0
  153. package/tsconfig.lib.json +10 -0
  154. package/tsconfig.spec.json +9 -0
  155. package/index.cjs.d.ts +0 -1
  156. package/index.esm.d.ts +0 -1
  157. package/index.esm.js +0 -4129
  158. package/src/agent/graph.d.ts +0 -148
  159. package/src/agent/index.d.ts +0 -5
  160. package/src/agent/token.d.ts +0 -21
  161. package/src/agent/utils.d.ts +0 -19
  162. package/src/agent/variables.d.ts +0 -14
  163. package/src/ai/ai-model.model.d.ts +0 -198
  164. package/src/ai/ai-provider.model.d.ts +0 -43
  165. package/src/ai/ai.model.d.ts +0 -82
  166. package/src/ai/chat-message-feedback.model.d.ts +0 -24
  167. package/src/ai/chat-message.model.d.ts +0 -222
  168. package/src/ai/chat.model.d.ts +0 -189
  169. package/src/ai/copilot-checkpoint.model.d.ts +0 -23
  170. package/src/ai/copilot-example.model.d.ts +0 -19
  171. package/src/ai/copilot-model.model.d.ts +0 -26
  172. package/src/ai/copilot-organization.model.d.ts +0 -17
  173. package/src/ai/copilot-provider.model.d.ts +0 -31
  174. package/src/ai/copilot-role.model.d.ts +0 -43
  175. package/src/ai/copilot-store.model.d.ts +0 -29
  176. package/src/ai/copilot-user.model.d.ts +0 -20
  177. package/src/ai/copilot.model.d.ts +0 -36
  178. package/src/ai/feature.model.d.ts +0 -6
  179. package/src/ai/index.d.ts +0 -39
  180. package/src/ai/knowledge-doc-chunk.model.d.ts +0 -60
  181. package/src/ai/knowledge-doc-page.model.d.ts +0 -15
  182. package/src/ai/knowledge-doc.model.d.ts +0 -192
  183. package/src/ai/knowledge-pipeline.d.ts +0 -107
  184. package/src/ai/knowledge-retrieval-log.model.d.ts +0 -10
  185. package/src/ai/knowledgebase-task.model.d.ts +0 -39
  186. package/src/ai/knowledgebase.model.d.ts +0 -162
  187. package/src/ai/rag-web.d.ts +0 -26
  188. package/src/ai/rag.d.ts +0 -24
  189. package/src/ai/role-permissions.d.ts +0 -13
  190. package/src/ai/types.d.ts +0 -39
  191. package/src/ai/xpert-agent-execution.model.d.ts +0 -96
  192. package/src/ai/xpert-agent.model.d.ts +0 -192
  193. package/src/ai/xpert-project.model.d.ts +0 -86
  194. package/src/ai/xpert-task.model.d.ts +0 -26
  195. package/src/ai/xpert-template.model.d.ts +0 -47
  196. package/src/ai/xpert-tool-mcp.model.d.ts +0 -67
  197. package/src/ai/xpert-tool.model.d.ts +0 -147
  198. package/src/ai/xpert-toolset.model.d.ts +0 -200
  199. package/src/ai/xpert-workflow-task.prompt.d.ts +0 -2
  200. package/src/ai/xpert-workflow.model.d.ts +0 -366
  201. package/src/ai/xpert-workspace.model.d.ts +0 -32
  202. package/src/ai/xpert.model.d.ts +0 -529
  203. package/src/ai/xpert.utils.d.ts +0 -80
  204. package/src/analytics/ai.d.ts +0 -73
  205. package/src/analytics/approval-policy.model.d.ts +0 -30
  206. package/src/analytics/business-area-user.model.d.ts +0 -35
  207. package/src/analytics/business-area.d.ts +0 -17
  208. package/src/analytics/certification.model.d.ts +0 -11
  209. package/src/analytics/chatbi-conversation.model.d.ts +0 -15
  210. package/src/analytics/chatbi-model.model.d.ts +0 -18
  211. package/src/analytics/collection.model.d.ts +0 -6
  212. package/src/analytics/comment.model.d.ts +0 -10
  213. package/src/analytics/data-source-type.d.ts +0 -16
  214. package/src/analytics/data-source.d.ts +0 -62
  215. package/src/analytics/favorite.d.ts +0 -14
  216. package/src/analytics/features.d.ts +0 -19
  217. package/src/analytics/feed-model.d.ts +0 -13
  218. package/src/analytics/gateway.d.ts +0 -27
  219. package/src/analytics/index.d.ts +0 -38
  220. package/src/analytics/indicator-app.d.ts +0 -44
  221. package/src/analytics/indicator.d.ts +0 -106
  222. package/src/analytics/model-query-log.model.d.ts +0 -41
  223. package/src/analytics/model-query.d.ts +0 -21
  224. package/src/analytics/permission-approval.model.d.ts +0 -47
  225. package/src/analytics/project.model.d.ts +0 -50
  226. package/src/analytics/role-permissions.d.ts +0 -25
  227. package/src/analytics/schema.d.ts +0 -262
  228. package/src/analytics/screenshot.model.d.ts +0 -25
  229. package/src/analytics/semantic-model-entity.d.ts +0 -37
  230. package/src/analytics/semantic-model-member.d.ts +0 -24
  231. package/src/analytics/semantic-model.d.ts +0 -175
  232. package/src/analytics/story-template.model.d.ts +0 -28
  233. package/src/analytics/story-widget.d.ts +0 -12
  234. package/src/analytics/story.d.ts +0 -93
  235. package/src/analytics/subscription.d.ts +0 -38
  236. package/src/analytics/visit.model.d.ts +0 -34
  237. package/src/analytics/webSocket.d.ts +0 -48
  238. package/src/api-key.model.d.ts +0 -10
  239. package/src/base-entity.model.d.ts +0 -27
  240. package/src/contact.model.d.ts +0 -41
  241. package/src/core.model.d.ts +0 -97
  242. package/src/currency.model.d.ts +0 -579
  243. package/src/date-picker.model.d.ts +0 -5
  244. package/src/email-template.model.d.ts +0 -39
  245. package/src/email.model.d.ts +0 -36
  246. package/src/employee.model.d.ts +0 -128
  247. package/src/entity-with-members.model.d.ts +0 -13
  248. package/src/feature.model.d.ts +0 -93
  249. package/src/file-provider.d.ts +0 -33
  250. package/src/help-center-article.model.d.ts +0 -0
  251. package/src/help-center.model.d.ts +0 -0
  252. package/src/http-status.enum.d.ts +0 -57
  253. package/src/import-export.model.d.ts +0 -36
  254. package/src/index.d.ts +0 -48
  255. package/src/integration/dify.d.ts +0 -0
  256. package/src/integration/dingtalk.d.ts +0 -2
  257. package/src/integration/fastgpt.d.ts +0 -0
  258. package/src/integration/firecrawl.d.ts +0 -2
  259. package/src/integration/github.d.ts +0 -69
  260. package/src/integration/index.d.ts +0 -4
  261. package/src/integration/lark.d.ts +0 -11
  262. package/src/integration/wecom.d.ts +0 -2
  263. package/src/integration.model.d.ts +0 -90
  264. package/src/invite.model.d.ts +0 -123
  265. package/src/language.model.d.ts +0 -19
  266. package/src/organization-contact.model.d.ts +0 -73
  267. package/src/organization-language.model.d.ts +0 -18
  268. package/src/organization-projects.model.d.ts +0 -80
  269. package/src/organization-team-employee-model.d.ts +0 -12
  270. package/src/organization-team-model.d.ts +0 -19
  271. package/src/organization.model.d.ts +0 -239
  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 -241
  285. package/src/user-organization.model.d.ts +0 -24
  286. package/src/user.model.d.ts +0 -131
  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
+ }
@@ -1,18 +1,22 @@
1
1
  import { IBasePerTenantEntityModel } from './base-entity.model';
2
+
2
3
  export interface IPasswordReset extends IBasePerTenantEntityModel {
3
- email: string;
4
- token: string;
5
- expired?: boolean;
4
+ email: string;
5
+ token: string;
6
+ expired?: boolean;
6
7
  }
8
+
7
9
  export interface IPasswordResetFindInput extends IBasePerTenantEntityModel {
8
- email?: string;
9
- token?: string;
10
+ email?: string;
11
+ token?: string;
10
12
  }
13
+
11
14
  export interface IChangePasswordRequest {
12
- token: string;
13
- password: string;
14
- confirmPassword: string;
15
+ token: string;
16
+ password: string;
17
+ confirmPassword: string;
15
18
  }
19
+
16
20
  export interface IResetPasswordRequest {
17
- email: string;
18
- }
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' | 'datasource' | 'database'
10
+ displayName: string
11
+ description: string
12
+ keywords?: string[]
13
+ author: string
14
+ homepage?: string
15
+ }