@metad/contracts 3.6.1 → 3.6.2

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 (286) hide show
  1. package/index.cjs.d.ts +1 -0
  2. package/index.cjs.js +4233 -5
  3. package/index.esm.d.ts +1 -0
  4. package/index.esm.js +4129 -0
  5. package/package.json +9 -2
  6. package/src/agent/{ai-model.ts → ai-model.d.ts} +2 -2
  7. package/src/agent/graph.d.ts +148 -0
  8. package/src/agent/index.d.ts +5 -0
  9. package/src/agent/token.d.ts +21 -0
  10. package/src/agent/utils.d.ts +19 -0
  11. package/src/agent/variables.d.ts +14 -0
  12. package/src/ai/ai-model.model.d.ts +198 -0
  13. package/src/ai/ai-provider.model.d.ts +43 -0
  14. package/src/ai/ai.model.d.ts +82 -0
  15. package/src/ai/chat-message-feedback.model.d.ts +24 -0
  16. package/src/ai/chat-message.model.d.ts +222 -0
  17. package/src/ai/chat.model.d.ts +189 -0
  18. package/src/ai/copilot-checkpoint.model.d.ts +23 -0
  19. package/src/ai/copilot-example.model.d.ts +19 -0
  20. package/src/ai/copilot-model.model.d.ts +26 -0
  21. package/src/ai/copilot-organization.model.d.ts +17 -0
  22. package/src/ai/copilot-provider.model.d.ts +31 -0
  23. package/src/ai/copilot-role.model.d.ts +43 -0
  24. package/src/ai/copilot-store.model.d.ts +29 -0
  25. package/src/ai/copilot-user.model.d.ts +20 -0
  26. package/src/ai/copilot.model.d.ts +36 -0
  27. package/src/ai/{environment.model.ts → environment.model.d.ts} +10 -12
  28. package/src/ai/feature.model.d.ts +6 -0
  29. package/src/ai/index.d.ts +39 -0
  30. package/src/ai/knowledge-doc-chunk.model.d.ts +60 -0
  31. package/src/ai/knowledge-doc-page.model.d.ts +15 -0
  32. package/src/ai/knowledge-doc.model.d.ts +192 -0
  33. package/src/ai/knowledge-pipeline.d.ts +107 -0
  34. package/src/ai/knowledge-retrieval-log.model.d.ts +10 -0
  35. package/src/ai/knowledgebase-task.model.d.ts +39 -0
  36. package/src/ai/knowledgebase.model.d.ts +162 -0
  37. package/src/ai/rag-web.d.ts +26 -0
  38. package/src/ai/rag.d.ts +24 -0
  39. package/src/ai/role-permissions.d.ts +13 -0
  40. package/src/ai/types.d.ts +39 -0
  41. package/src/ai/xpert-agent-execution.model.d.ts +96 -0
  42. package/src/ai/xpert-agent.model.d.ts +192 -0
  43. package/src/ai/xpert-project.model.d.ts +86 -0
  44. package/src/ai/xpert-task.model.d.ts +26 -0
  45. package/src/ai/xpert-template.model.d.ts +47 -0
  46. package/src/ai/xpert-tool-mcp.model.d.ts +67 -0
  47. package/src/ai/xpert-tool.model.d.ts +147 -0
  48. package/src/ai/xpert-toolset.model.d.ts +200 -0
  49. package/src/ai/xpert-workflow-task.prompt.d.ts +2 -0
  50. package/src/ai/xpert-workflow.model.d.ts +366 -0
  51. package/src/ai/xpert-workspace.model.d.ts +32 -0
  52. package/src/ai/xpert.model.d.ts +529 -0
  53. package/src/ai/xpert.utils.d.ts +80 -0
  54. package/src/analytics/ai.d.ts +73 -0
  55. package/src/analytics/approval-policy.model.d.ts +30 -0
  56. package/src/analytics/business-area-user.model.d.ts +35 -0
  57. package/src/analytics/business-area.d.ts +17 -0
  58. package/src/analytics/certification.model.d.ts +11 -0
  59. package/src/analytics/chatbi-conversation.model.d.ts +15 -0
  60. package/src/analytics/chatbi-model.model.d.ts +18 -0
  61. package/src/analytics/collection.model.d.ts +6 -0
  62. package/src/analytics/comment.model.d.ts +10 -0
  63. package/src/analytics/data-source-type.d.ts +16 -0
  64. package/src/analytics/data-source.d.ts +62 -0
  65. package/src/analytics/favorite.d.ts +14 -0
  66. package/src/analytics/features.d.ts +19 -0
  67. package/src/analytics/feed-model.d.ts +13 -0
  68. package/src/analytics/gateway.d.ts +27 -0
  69. package/src/analytics/index.d.ts +38 -0
  70. package/src/analytics/indicator-app.d.ts +44 -0
  71. package/src/analytics/{indicator-market.ts → indicator-market.d.ts} +2 -6
  72. package/src/analytics/indicator.d.ts +106 -0
  73. package/src/analytics/model-query-log.model.d.ts +41 -0
  74. package/src/analytics/model-query.d.ts +21 -0
  75. package/src/analytics/{notification-destination.ts → notification-destination.d.ts} +5 -9
  76. package/src/analytics/{permission-approval-user.model.ts → permission-approval-user.model.d.ts} +8 -10
  77. package/src/analytics/permission-approval.model.d.ts +47 -0
  78. package/src/analytics/project.model.d.ts +50 -0
  79. package/src/analytics/role-permissions.d.ts +25 -0
  80. package/src/analytics/schema.d.ts +262 -0
  81. package/src/analytics/screenshot.model.d.ts +25 -0
  82. package/src/analytics/semantic-model-entity.d.ts +37 -0
  83. package/src/analytics/semantic-model-member.d.ts +24 -0
  84. package/src/analytics/semantic-model.d.ts +175 -0
  85. package/src/analytics/{story-point.ts → story-point.d.ts} +6 -11
  86. package/src/analytics/story-template.model.d.ts +28 -0
  87. package/src/analytics/story-widget.d.ts +12 -0
  88. package/src/analytics/story.d.ts +93 -0
  89. package/src/analytics/subscription.d.ts +38 -0
  90. package/src/analytics/visit.model.d.ts +34 -0
  91. package/src/analytics/webSocket.d.ts +48 -0
  92. package/src/api-key.model.d.ts +10 -0
  93. package/src/base-entity.model.d.ts +27 -0
  94. package/src/contact.model.d.ts +41 -0
  95. package/src/core.model.d.ts +97 -0
  96. package/src/{country.model.ts → country.model.d.ts} +2 -3
  97. package/src/currency.model.d.ts +579 -0
  98. package/src/{custom-smtp.model.ts → custom-smtp.model.d.ts} +17 -21
  99. package/src/date-picker.model.d.ts +5 -0
  100. package/src/email-template.model.d.ts +39 -0
  101. package/src/email.model.d.ts +36 -0
  102. package/src/employee.model.d.ts +128 -0
  103. package/src/entity-with-members.model.d.ts +13 -0
  104. package/src/feature.model.d.ts +93 -0
  105. package/src/file-provider.d.ts +33 -0
  106. package/src/help-center-article.model.d.ts +0 -0
  107. package/src/help-center.model.d.ts +0 -0
  108. package/src/http-status.enum.d.ts +57 -0
  109. package/src/import-export.model.d.ts +36 -0
  110. package/src/index.d.ts +48 -0
  111. package/src/integration/dify.d.ts +0 -0
  112. package/src/integration/dingtalk.d.ts +2 -0
  113. package/src/integration/fastgpt.d.ts +0 -0
  114. package/src/integration/firecrawl.d.ts +2 -0
  115. package/src/integration/github.d.ts +69 -0
  116. package/src/integration/index.d.ts +4 -0
  117. package/src/integration/lark.d.ts +11 -0
  118. package/src/integration/wecom.d.ts +2 -0
  119. package/src/integration.model.d.ts +90 -0
  120. package/src/invite.model.d.ts +123 -0
  121. package/src/language.model.d.ts +19 -0
  122. package/src/organization-contact.model.d.ts +73 -0
  123. package/src/{organization-department.model.ts → organization-department.model.d.ts} +10 -16
  124. package/src/organization-language.model.d.ts +18 -0
  125. package/src/organization-projects.model.d.ts +80 -0
  126. package/src/organization-team-employee-model.d.ts +12 -0
  127. package/src/organization-team-model.d.ts +19 -0
  128. package/src/organization.model.d.ts +239 -0
  129. package/src/{password-reset.model.ts → password-reset.model.d.ts} +10 -14
  130. package/src/{plain-object.model.ts → plain-object.model.d.ts} +1 -1
  131. package/src/plugin.d.ts +13 -0
  132. package/src/role-permission.model.d.ts +61 -0
  133. package/src/role.model.d.ts +26 -0
  134. package/src/schedule.d.ts +27 -0
  135. package/src/secret-token.model.d.ts +11 -0
  136. package/src/seed.model.d.ts +37 -0
  137. package/src/storage-file.model.d.ts +40 -0
  138. package/src/tag-entity.model.d.ts +20 -0
  139. package/src/tenant.model.d.ts +40 -0
  140. package/src/tools/index.d.ts +1 -0
  141. package/src/tools/sandbox.d.ts +5 -0
  142. package/src/translation.model.d.ts +26 -0
  143. package/src/types.d.ts +241 -0
  144. package/src/user-organization.model.d.ts +24 -0
  145. package/src/user.model.d.ts +131 -0
  146. package/src/visibility.model.d.ts +6 -0
  147. package/.babelrc +0 -5
  148. package/.eslintrc.json +0 -18
  149. package/babel.config.json +0 -1
  150. package/jest.config.ts +0 -16
  151. package/project.json +0 -53
  152. package/src/agent/graph.ts +0 -272
  153. package/src/agent/index.ts +0 -5
  154. package/src/agent/token.ts +0 -23
  155. package/src/agent/utils.spec.ts +0 -283
  156. package/src/agent/utils.ts +0 -122
  157. package/src/agent/variables.ts +0 -21
  158. package/src/ai/ai-model.model.ts +0 -228
  159. package/src/ai/ai-provider.model.ts +0 -53
  160. package/src/ai/ai.model.ts +0 -87
  161. package/src/ai/chat-message-feedback.model.ts +0 -31
  162. package/src/ai/chat-message.model.ts +0 -277
  163. package/src/ai/chat.model.ts +0 -207
  164. package/src/ai/copilot-checkpoint.model.ts +0 -25
  165. package/src/ai/copilot-example.model.ts +0 -23
  166. package/src/ai/copilot-model.model.ts +0 -31
  167. package/src/ai/copilot-organization.model.ts +0 -21
  168. package/src/ai/copilot-provider.model.ts +0 -46
  169. package/src/ai/copilot-role.model.ts +0 -48
  170. package/src/ai/copilot-store.model.ts +0 -34
  171. package/src/ai/copilot-user.model.ts +0 -24
  172. package/src/ai/copilot.model.ts +0 -47
  173. package/src/ai/feature.model.ts +0 -6
  174. package/src/ai/index.ts +0 -39
  175. package/src/ai/knowledge-doc-chunk.model.ts +0 -120
  176. package/src/ai/knowledge-doc-chunk.spec.ts +0 -47
  177. package/src/ai/knowledge-doc-page.model.ts +0 -20
  178. package/src/ai/knowledge-doc.model.ts +0 -252
  179. package/src/ai/knowledge-pipeline.ts +0 -138
  180. package/src/ai/knowledge-retrieval-log.model.ts +0 -19
  181. package/src/ai/knowledgebase-task.model.ts +0 -46
  182. package/src/ai/knowledgebase.model.ts +0 -190
  183. package/src/ai/rag-web.ts +0 -54
  184. package/src/ai/rag.ts +0 -24
  185. package/src/ai/role-permissions.ts +0 -13
  186. package/src/ai/types.ts +0 -83
  187. package/src/ai/xpert-agent-execution.model.ts +0 -115
  188. package/src/ai/xpert-agent.model.ts +0 -258
  189. package/src/ai/xpert-project.model.ts +0 -103
  190. package/src/ai/xpert-task.model.ts +0 -32
  191. package/src/ai/xpert-template.model.ts +0 -53
  192. package/src/ai/xpert-tool-mcp.model.ts +0 -72
  193. package/src/ai/xpert-tool.model.ts +0 -211
  194. package/src/ai/xpert-toolset.model.ts +0 -220
  195. package/src/ai/xpert-workflow-task.prompt.ts +0 -71
  196. package/src/ai/xpert-workflow.model.ts +0 -449
  197. package/src/ai/xpert-workspace.model.ts +0 -42
  198. package/src/ai/xpert.model.ts +0 -613
  199. package/src/ai/xpert.utils.ts +0 -214
  200. package/src/analytics/ai.ts +0 -79
  201. package/src/analytics/approval-policy.model.ts +0 -40
  202. package/src/analytics/business-area-user.model.ts +0 -43
  203. package/src/analytics/business-area.ts +0 -20
  204. package/src/analytics/certification.model.ts +0 -12
  205. package/src/analytics/chatbi-conversation.model.ts +0 -16
  206. package/src/analytics/chatbi-model.model.ts +0 -22
  207. package/src/analytics/collection.model.ts +0 -8
  208. package/src/analytics/comment.model.ts +0 -14
  209. package/src/analytics/data-source-type.ts +0 -19
  210. package/src/analytics/data-source.ts +0 -72
  211. package/src/analytics/favorite.ts +0 -18
  212. package/src/analytics/features.ts +0 -19
  213. package/src/analytics/feed-model.ts +0 -15
  214. package/src/analytics/gateway.ts +0 -30
  215. package/src/analytics/index.ts +0 -39
  216. package/src/analytics/indicator-app.ts +0 -49
  217. package/src/analytics/indicator.ts +0 -127
  218. package/src/analytics/model-query-log.model.ts +0 -45
  219. package/src/analytics/model-query.ts +0 -22
  220. package/src/analytics/permission-approval.model.ts +0 -58
  221. package/src/analytics/project.model.ts +0 -56
  222. package/src/analytics/role-permissions.ts +0 -36
  223. package/src/analytics/schema.ts +0 -300
  224. package/src/analytics/screenshot.model.ts +0 -28
  225. package/src/analytics/semantic-model-entity.ts +0 -49
  226. package/src/analytics/semantic-model-member.ts +0 -45
  227. package/src/analytics/semantic-model.ts +0 -227
  228. package/src/analytics/story-template.model.ts +0 -34
  229. package/src/analytics/story-widget.ts +0 -15
  230. package/src/analytics/story.ts +0 -109
  231. package/src/analytics/subscription.ts +0 -43
  232. package/src/analytics/visit.model.ts +0 -39
  233. package/src/analytics/webSocket.ts +0 -53
  234. package/src/api-key.model.ts +0 -11
  235. package/src/base-entity.model.ts +0 -34
  236. package/src/contact.model.ts +0 -45
  237. package/src/core.model.ts +0 -103
  238. package/src/currency.model.ts +0 -582
  239. package/src/date-picker.model.ts +0 -5
  240. package/src/email-template.model.ts +0 -50
  241. package/src/email.model.ts +0 -46
  242. package/src/employee.model.ts +0 -199
  243. package/src/entity-with-members.model.ts +0 -16
  244. package/src/feature.model.ts +0 -108
  245. package/src/file-provider.ts +0 -37
  246. package/src/help-center-article.model.ts +0 -35
  247. package/src/help-center.model.ts +0 -33
  248. package/src/http-status.enum.ts +0 -58
  249. package/src/import-export.model.ts +0 -42
  250. package/src/index.ts +0 -60
  251. package/src/integration/dify.ts +0 -31
  252. package/src/integration/dingtalk.ts +0 -16
  253. package/src/integration/fastgpt.ts +0 -32
  254. package/src/integration/firecrawl.ts +0 -46
  255. package/src/integration/github.ts +0 -149
  256. package/src/integration/index.ts +0 -15
  257. package/src/integration/lark.ts +0 -79
  258. package/src/integration/wecom.ts +0 -16
  259. package/src/integration.model.ts +0 -119
  260. package/src/invite.model.ts +0 -144
  261. package/src/language.model.ts +0 -22
  262. package/src/organization-contact.model.ts +0 -84
  263. package/src/organization-language.model.ts +0 -24
  264. package/src/organization-projects.model.ts +0 -99
  265. package/src/organization-team-employee-model.ts +0 -14
  266. package/src/organization-team-model.ts +0 -25
  267. package/src/organization.model.ts +0 -266
  268. package/src/plugin.ts +0 -15
  269. package/src/role-permission.model.ts +0 -123
  270. package/src/role.model.ts +0 -31
  271. package/src/schedule.ts +0 -71
  272. package/src/secret-token.model.ts +0 -15
  273. package/src/seed.model.ts +0 -50
  274. package/src/storage-file.model.ts +0 -46
  275. package/src/tag-entity.model.ts +0 -23
  276. package/src/tenant.model.ts +0 -52
  277. package/src/tools/index.ts +0 -1
  278. package/src/tools/sandbox.ts +0 -5
  279. package/src/translation.model.ts +0 -37
  280. package/src/types.ts +0 -277
  281. package/src/user-organization.model.ts +0 -31
  282. package/src/user.model.ts +0 -151
  283. package/src/visibility.model.ts +0 -6
  284. package/tsconfig.json +0 -22
  285. package/tsconfig.lib.json +0 -10
  286. package/tsconfig.spec.json +0 -9
@@ -0,0 +1,131 @@
1
+ import { IRole } from './role.model';
2
+ import { IBasePerTenantEntityModel } from './base-entity.model';
3
+ import { ITag } from './tag-entity.model';
4
+ import { IEmployee } from './employee.model';
5
+ import { IOrganization } from './organization.model';
6
+ export declare enum UserType {
7
+ USER = "user",// Regular user
8
+ COMMUNICATION = "communication"
9
+ }
10
+ export interface IUser extends IBasePerTenantEntityModel {
11
+ thirdPartyId?: string;
12
+ name?: string;
13
+ firstName?: string;
14
+ lastName?: string;
15
+ email?: string;
16
+ mobile?: string;
17
+ username?: string;
18
+ timeZone?: string;
19
+ type?: UserType;
20
+ role?: IRole;
21
+ roleId?: string;
22
+ hash?: string;
23
+ imageUrl?: string;
24
+ employee?: IEmployee;
25
+ employeeId?: string;
26
+ tags?: ITag[];
27
+ preferredLanguage?: string;
28
+ paymentsId?: string;
29
+ fullName?: string;
30
+ organizations?: IOrganization[];
31
+ isImporting?: boolean;
32
+ sourceId?: string;
33
+ emailVerified?: boolean;
34
+ emailVerification?: IEmailVerification;
35
+ deletedAt?: Date;
36
+ }
37
+ export interface IEmailVerification extends IBasePerTenantEntityModel {
38
+ token: string;
39
+ userId: string;
40
+ user?: IUser;
41
+ validUntil: Date;
42
+ }
43
+ export interface IUserEmailInput {
44
+ email: string;
45
+ }
46
+ export interface IUserFindInput {
47
+ thirdPartyId?: string;
48
+ firstName?: string;
49
+ lastName?: string;
50
+ email?: string;
51
+ username?: string;
52
+ role?: IRole;
53
+ roleId?: string;
54
+ hash?: string;
55
+ imageUrl?: string;
56
+ tags?: ITag[];
57
+ preferredLanguage?: LanguagesEnum;
58
+ }
59
+ export interface IUserRegistrationInput {
60
+ user: IUser;
61
+ password?: string;
62
+ confirmPassword?: string;
63
+ originalUrl?: string;
64
+ organizationId?: string;
65
+ createdById?: string;
66
+ isImporting?: boolean;
67
+ sourceId?: string;
68
+ timeZone?: string;
69
+ }
70
+ export interface IUserLoginInput {
71
+ email: string;
72
+ password: string;
73
+ }
74
+ export interface IAuthResponse {
75
+ user: IUser;
76
+ token: string;
77
+ refreshToken: string;
78
+ }
79
+ export interface IUserCreateInput {
80
+ type?: UserType;
81
+ firstName?: string;
82
+ lastName?: string;
83
+ email?: string;
84
+ username?: string;
85
+ role?: IRole;
86
+ roleId?: string;
87
+ hash?: string;
88
+ imageUrl?: string;
89
+ tags?: ITag[];
90
+ preferredLanguage?: LanguagesEnum;
91
+ timeZone?: string;
92
+ thirdPartyId?: string;
93
+ roleName?: string;
94
+ }
95
+ export interface IUserUpdateInput extends Omit<IUserCreateInput, 'type'> {
96
+ password?: string;
97
+ confirmPassword?: string;
98
+ }
99
+ export interface IUserPasswordInput {
100
+ hash?: string;
101
+ password?: string;
102
+ confirmPassword?: string;
103
+ }
104
+ /**
105
+ * Browser http header `Language`
106
+ */
107
+ export declare enum LanguagesEnum {
108
+ Chinese = "zh-CN",
109
+ SimplifiedChinese = "zh-Hans",
110
+ TraditionalChinese = "zh-Hant",
111
+ English = "en"
112
+ }
113
+ export declare const LanguagesMap: {
114
+ 'zh-CN': LanguagesEnum;
115
+ 'zh-Hans': LanguagesEnum;
116
+ zh: LanguagesEnum;
117
+ };
118
+ export declare enum ProviderEnum {
119
+ GOOGLE = "google",
120
+ FACEBOOK = "facebook"
121
+ }
122
+ export interface IUserViewModel extends IBasePerTenantEntityModel {
123
+ fullName: string;
124
+ email: string;
125
+ bonus?: number;
126
+ endWork?: any;
127
+ id: string;
128
+ roleName?: string;
129
+ role?: string;
130
+ tags?: ITag[];
131
+ }
@@ -0,0 +1,6 @@
1
+ export declare enum Visibility {
2
+ Public = "public",
3
+ Internal = "internal",
4
+ Secret = "secret",
5
+ Private = "private"
6
+ }
package/.babelrc DELETED
@@ -1,5 +0,0 @@
1
- {
2
- "presets": [
3
- "@nrwl/js/babel"
4
- ]
5
- }
package/.eslintrc.json DELETED
@@ -1,18 +0,0 @@
1
- {
2
- "extends": ["../../.eslintrc.json"],
3
- "ignorePatterns": ["!**/*"],
4
- "overrides": [
5
- {
6
- "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
7
- "rules": {}
8
- },
9
- {
10
- "files": ["*.ts", "*.tsx"],
11
- "rules": {}
12
- },
13
- {
14
- "files": ["*.js", "*.jsx"],
15
- "rules": {}
16
- }
17
- ]
18
- }
package/babel.config.json DELETED
@@ -1 +0,0 @@
1
- {}
package/jest.config.ts DELETED
@@ -1,16 +0,0 @@
1
- /* eslint-disable */
2
- export default {
3
- displayName: 'contracts',
4
- preset: '../../jest.preset.js',
5
- globals: {},
6
- transform: {
7
- '^.+\\.[tj]s$': [
8
- 'ts-jest',
9
- {
10
- tsconfig: '<rootDir>/tsconfig.spec.json'
11
- }
12
- ]
13
- },
14
- moduleFileExtensions: ['ts', 'js', 'html'],
15
- coverageDirectory: '../../coverage/packages/contracts'
16
- }
package/project.json DELETED
@@ -1,53 +0,0 @@
1
- {
2
- "name": "contracts",
3
- "$schema": "../../node_modules/nx/schemas/project-schema.json",
4
- "sourceRoot": "packages/contracts/src",
5
- "projectType": "library",
6
- "targets": {
7
- "build": {
8
- "executor": "@nx/rollup:rollup",
9
- "outputs": ["{options.outputPath}"],
10
- "options": {
11
- "outputPath": "packages/contracts/dist",
12
- "project": "packages/contracts/package.json",
13
- "main": "packages/contracts/src/index.ts",
14
- "tsConfig": "packages/contracts/tsconfig.lib.json",
15
- "assets": [
16
- {
17
- "glob": "README.md",
18
- "input": "packages/contracts/",
19
- "output": "."
20
- }
21
- ],
22
- "compiler": "swc",
23
- "format": ["cjs", "esm"]
24
- }
25
- },
26
- "publish": {
27
- "command": "node tools/scripts/publish.mjs contracts {args.ver} {args.tag}",
28
- "dependsOn": ["build"]
29
- },
30
- "lint": {
31
- "executor": "@nx/eslint:lint",
32
- "outputs": ["{options.outputFile}"],
33
- "options": {
34
- "lintFilePatterns": ["packages/contracts/**/*.ts", "packages/contracts/package.json"]
35
- }
36
- },
37
- "test": {
38
- "executor": "@nx/jest:jest",
39
- "outputs": ["{workspaceRoot}/coverage/packages/contracts"],
40
- "options": {
41
- "jestConfig": "packages/contracts/jest.config.ts"
42
- }
43
- },
44
- "nx-release-publish": {
45
- "executor": "@nx/js:release-publish",
46
- "options": {
47
- "packageRoot": "packages/contracts/dist",
48
- "access": "public"
49
- }
50
- }
51
- },
52
- "tags": []
53
- }
@@ -1,272 +0,0 @@
1
- import { BaseMessage } from '@langchain/core/messages'
2
- import { RunnableConfig } from '@langchain/core/runnables'
3
- import { Subscriber } from 'rxjs'
4
- import { IWFNTrigger, TWorkflowVarGroup, WorkflowNodeTypeEnum } from '../ai/xpert-workflow.model'
5
- import { TMessageContentComplex } from '../ai/chat-message.model'
6
- import { I18nObject } from '../types'
7
- import { TStateVariable, TXpertGraph, TXpertParameter, TXpertTeamNode, XpertParameterTypeEnum } from '../ai/xpert.model'
8
- import { agentLabel, IXpertAgent } from '../ai/xpert-agent.model'
9
-
10
- /**
11
- * @deprecated can use getCurrentTaskInput instead?
12
- */
13
- export const CONTEXT_VARIABLE_CURRENTSTATE = 'currentState'
14
- export const STATE_VARIABLE_SYS = 'sys'
15
- export const STATE_VARIABLE_HUMAN = 'human'
16
- export const GRAPH_NODE_SUMMARIZE_CONVERSATION = 'summarize_conversation'
17
- export const GRAPH_NODE_TITLE_CONVERSATION = 'title_conversation'
18
- export const STATE_VARIABLE_FILES = 'files'
19
- export const STATE_VARIABLE_INPUT = 'input'
20
- export const STATE_VARIABLE_TITLE_CHANNEL = channelName('title')
21
-
22
- export type TMessageChannel = {
23
- system: string
24
- messages: BaseMessage[]
25
- summary?: string
26
- error?: string | null
27
- }
28
-
29
- export type TAgentRunnableConfigurable = {
30
- /**
31
- * Thread id
32
- */
33
- thread_id: string
34
- checkpoint_ns: string
35
- checkpoint_id: string
36
- tool_call_id?: string
37
-
38
- // Custom configurable of invoke
39
- tenantId: string
40
- organizationId: string
41
- language: string
42
- userId: string
43
- /**
44
- * Xpert project id
45
- */
46
- projectId?: string
47
- xpertId?: string
48
- // Caller
49
- agentKey: string
50
- xpertName?: string
51
- toolName?: string
52
-
53
- subscriber: Subscriber<any>
54
- /**
55
- * Execution id of agent workflow node
56
- */
57
- executionId: string
58
- // /**
59
- // * Knowledge xpert's knowledgebase
60
- // */
61
- // knowledgebaseId?: string
62
- // knowledgeTaskId?: string
63
-
64
- signal?: AbortSignal
65
- }
66
-
67
- export type TToolCall = {
68
- id?: string
69
- name: string
70
- type?: 'tool_call'
71
- args: Record<string, any>
72
- }
73
-
74
- /**
75
- *
76
- * Example:
77
- *
78
- * ```typescript
79
- * const result = interrupt<TInterruptMessage<{ name: string }>, { projectId: string }>({
80
- * category: 'BI',
81
- * type: 'switch_project',
82
- * title: {
83
- * en_US: 'Switch project',
84
- * zh_Hans: '切换项目'
85
- * },
86
- * message: {
87
- * en_US: 'Please select a project or create a new one',
88
- * zh_Hans: '请选择或创建一个新的项目'
89
- * },
90
- * data: { name: '' }
91
- * })
92
- * ```
93
- */
94
- export type TInterruptMessage<T = unknown> = {
95
- /**
96
- * Major categories of interrupt components
97
- */
98
- category: 'BI'
99
- /**
100
- * The specific type of interactive component
101
- */
102
- type: string
103
- /**
104
- * Title of the interrupt component
105
- */
106
- title: string | I18nObject
107
- /**
108
- * Message content of the interrupt component
109
- */
110
- message: string | I18nObject
111
- /**
112
- * Additional data
113
- */
114
- data?: T
115
- }
116
-
117
- export type TInterruptCommand = {
118
- resume?: any
119
- update?: any
120
- toolCalls?: TToolCall[]
121
- agentKey?: string
122
- }
123
-
124
- // Helpers
125
- export function channelName(name: string) {
126
- return name.toLowerCase() + '_channel'
127
- }
128
-
129
- export function messageContentText(content: string | TMessageContentComplex) {
130
- return typeof content === 'string' ? content : content.type === 'text' ? content.text : ''
131
- }
132
-
133
- export function getWorkspaceFromRunnable(configurable: TAgentRunnableConfigurable): {type?: 'project' | 'conversation'; id?: string} {
134
- return configurable?.projectId ? {type: 'project', id: ''} :
135
- configurable?.thread_id ? {
136
- type: 'conversation',
137
- id: configurable.thread_id
138
- } : {}
139
- }
140
-
141
- export function getToolCallFromConfig(config): TToolCall {
142
- return config?.toolCall || config?.configurable?.toolCall
143
- }
144
-
145
- export function getToolCallIdFromConfig(config): string {
146
- return config.metadata?.tool_call_id || config?.configurable?.tool_call_id || getToolCallFromConfig(config)?.id
147
- }
148
-
149
- /**
150
- * Compute long-term memory namespace:
151
- * 1. When a user talks to a digital expert individually, use `ExpertId` + `UserId` to store memory
152
- * 2. When talking to a digital expert in a project, all users and digital experts share `ProjectId` to store memory
153
- *
154
- * @param config
155
- * @returns
156
- */
157
- export function getStoreNamespace(config: RunnableConfig): string[] {
158
- const configurable = config.configurable as TAgentRunnableConfigurable
159
- return configurableStoreNamespace(configurable)
160
- }
161
-
162
- export function configurableStoreNamespace(configurable: Partial<TAgentRunnableConfigurable>): string[] {
163
- return configurable?.projectId ? [configurable?.projectId] : configurable?.userId ? [configurable.xpertId, configurable.userId] : []
164
- }
165
-
166
- /**
167
- * Set value into variable of state.
168
- *
169
- * @param state
170
- * @param varName
171
- * @param value
172
- * @returns
173
- */
174
- export function setStateVariable(state: Record<string, any>, varName: string, value: any) {
175
- const [agentChannelName, variableName] = varName.split('.')
176
- if (variableName) {
177
- state[agentChannelName] = {
178
- ...(state[agentChannelName] ?? {}),
179
- [variableName]: value
180
- }
181
- } else {
182
- state[agentChannelName] = value
183
- }
184
-
185
- return state
186
- }
187
-
188
- /**
189
- * Get agent variable group from graph.
190
- *
191
- * @param key
192
- * @param graph
193
- * @returns
194
- */
195
- export function getAgentVarGroup(key: string, graph: TXpertGraph): TWorkflowVarGroup {
196
- const node = graph.nodes.find((_) => _.type === 'agent' && _.key === key) as TXpertTeamNode & {type: 'agent'}
197
-
198
- const variables: TXpertParameter[] = []
199
- const varGroup: TWorkflowVarGroup = {
200
- group: {
201
- name: channelName(node.key),
202
- description: {
203
- en_US: agentLabel(node.entity)
204
- },
205
- },
206
- variables
207
- }
208
-
209
- variables.push({
210
- name: `messages`,
211
- type: XpertParameterTypeEnum.ARRAY,
212
- description: {
213
- zh_Hans: `消息列表`,
214
- en_US: `Message List`
215
- }
216
- })
217
- variables.push({
218
- name: `output`,
219
- type: XpertParameterTypeEnum.STRING,
220
- description: {
221
- zh_Hans: `输出`,
222
- en_US: `Output`
223
- }
224
- })
225
- variables.push({
226
- name: `error`,
227
- type: XpertParameterTypeEnum.STRING,
228
- description: {
229
- zh_Hans: `错误`,
230
- en_US: `Error`
231
- }
232
- })
233
- const agent = <IXpertAgent>node.entity
234
- if (agent.options?.structuredOutputMethod && agent.outputVariables) {
235
- agent.outputVariables.forEach((variable) => {
236
- variables.push({
237
- name: variable.name || '',
238
- type: variable.type as TStateVariable['type'],
239
- description: variable.description,
240
- item: variable.item
241
- })
242
- })
243
- }
244
-
245
- return varGroup
246
- }
247
-
248
-
249
- // Swarm
250
- /**
251
- * Get swarm partners of agent in team
252
- *
253
- * @param graph
254
- * @param agentKey
255
- */
256
- export function getSwarmPartners(graph: TXpertGraph, agentKey: string, partners: string[], leaderKey?: string) {
257
- const connections = graph.connections.filter((conn) => conn.type === 'agent' && conn.to === agentKey && (leaderKey ? conn.from !== leaderKey : true)
258
- && graph.connections.some((_) => _.type === 'agent' && _.to === conn.from && _.from === agentKey))
259
-
260
- connections.forEach((conn) => {
261
- const key = conn.from
262
- if (partners.indexOf(key) < 0) {
263
- partners.push(key)
264
- getSwarmPartners(graph, key, partners)
265
- }
266
- })
267
- return partners
268
- }
269
-
270
- export function getWorkflowTriggers(graph: TXpertGraph, from: string) {
271
- return graph.nodes.filter((node) => node.type === 'workflow' && node.entity.type === WorkflowNodeTypeEnum.TRIGGER && (<IWFNTrigger>node.entity).from === from)
272
- }
@@ -1,5 +0,0 @@
1
- export * from './ai-model'
2
- export * from './token'
3
- export * from './graph'
4
- export * from './utils'
5
- export * from './variables'
@@ -1,23 +0,0 @@
1
- export type TTokenUsage = {
2
- promptTokens: number
3
- completionTokens: number
4
- totalTokens: number
5
- }
6
-
7
- export interface IModelUsage {
8
- totalTokens: number
9
- totalPrice: number
10
- currency: string
11
- latency: number
12
- }
13
-
14
- export interface ILLMUsage extends IModelUsage {
15
- promptTokens: number
16
- promptUnitPrice: number
17
- promptPriceUnit: number
18
- promptPrice: number
19
- completionTokens: number
20
- completionUnitPrice: number
21
- completionPriceUnit: number
22
- completionPrice: number
23
- }