@acorex-platform/module-ai-management-client 0.0.32 → 0.0.33

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 (44) hide show
  1. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-agent.mjs +474 -0
  2. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-agent.mjs.map +1 -0
  3. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-assist.mjs +583 -0
  4. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-assist.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-mcp-server.mjs +238 -0
  6. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-mcp-server.mjs.map +1 -0
  7. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-model.mjs +349 -0
  8. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-model.mjs.map +1 -0
  9. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-open-ai-endpoint.mjs +203 -0
  10. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-open-ai-endpoint.mjs.map +1 -0
  11. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-rule.mjs +189 -0
  12. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-rule.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-skill.mjs +190 -0
  14. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entities-skill.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-acorex-platform-module-ai-management-client-contracts-entity-catalog-DRh7A6uE.mjs +96 -0
  16. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-acorex-platform-module-ai-management-client-contracts-entity-catalog-DRh7A6uE.mjs.map +1 -0
  17. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-agent.entity-Cn8yH9Eb.mjs +403 -0
  18. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-agent.entity-Cn8yH9Eb.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-assist.entity-C5V2T4T5.mjs +512 -0
  20. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-assist.entity-C5V2T4T5.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-mcp-server.entity-D3Q6AWZ4.mjs +167 -0
  22. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-mcp-server.entity-D3Q6AWZ4.mjs.map +1 -0
  23. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-model.entity-BMAZ-ZMl.mjs +278 -0
  24. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-model.entity-BMAZ-ZMl.mjs.map +1 -0
  25. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-open-ai-endpoint.entity-BcxddrrU.mjs +132 -0
  26. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-open-ai-endpoint.entity-BcxddrrU.mjs.map +1 -0
  27. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-rule.entity-D_iNgAEh.mjs +118 -0
  28. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-rule.entity-D_iNgAEh.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-skill.entity-6Ykv67zV.mjs +119 -0
  30. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog-skill.entity-6Ykv67zV.mjs.map +1 -0
  31. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog.mjs +2 -0
  32. package/fesm2022/acorex-platform-module-ai-management-client-contracts-entity-catalog.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-module-ai-management-client-local-entities.mjs +35 -0
  34. package/fesm2022/acorex-platform-module-ai-management-client-local-entities.mjs.map +1 -0
  35. package/package.json +37 -1
  36. package/types/acorex-platform-module-ai-management-client-contracts-entities-agent.d.ts +5 -0
  37. package/types/acorex-platform-module-ai-management-client-contracts-entities-assist.d.ts +5 -0
  38. package/types/acorex-platform-module-ai-management-client-contracts-entities-mcp-server.d.ts +5 -0
  39. package/types/acorex-platform-module-ai-management-client-contracts-entities-model.d.ts +5 -0
  40. package/types/acorex-platform-module-ai-management-client-contracts-entities-open-ai-endpoint.d.ts +5 -0
  41. package/types/acorex-platform-module-ai-management-client-contracts-entities-rule.d.ts +5 -0
  42. package/types/acorex-platform-module-ai-management-client-contracts-entities-skill.d.ts +5 -0
  43. package/types/acorex-platform-module-ai-management-client-contracts-entity-catalog.d.ts +10 -0
  44. package/types/acorex-platform-module-ai-management-client-local-entities.d.ts +12 -0
@@ -0,0 +1,349 @@
1
+ import { AXPWidgetsList } from '@acorex-platform/framework-shared/core';
2
+ import { createAllQueryView, entityMasterCrudActions } from '@acorex-platform/framework-shared/entity';
3
+
4
+ //#region ---- Module Config ----
5
+ const config = {
6
+ i18n: 'ai-management',
7
+ module: 'AiManagement',
8
+ route: 'ai-management',
9
+ };
10
+ const RootConfig = {
11
+ config,
12
+ module: {
13
+ name: config.module,
14
+ route: config.route,
15
+ title: `@${config.i18n}:module.title`,
16
+ icon: 'fa-light fa-robot',
17
+ },
18
+ entities: {
19
+ model: {
20
+ name: 'AiModel',
21
+ fullName: `${config.module}.AiModel`,
22
+ title: '@ai-management:models.entities.model.title',
23
+ titlePlural: '@ai-management:models.entities.model.plural',
24
+ icon: 'fa-light fa-microchip',
25
+ },
26
+ assist: {
27
+ name: 'Assist',
28
+ fullName: `${config.module}.Assist`,
29
+ title: '@ai-management:assists.entities.assist.title',
30
+ titlePlural: '@ai-management:assists.entities.assist.plural',
31
+ icon: 'fa-light fa-user-robot',
32
+ },
33
+ agent: {
34
+ name: 'AiAgent',
35
+ fullName: `${config.module}.AiAgent`,
36
+ title: '@ai-management:agents.entities.agent.title',
37
+ titlePlural: '@ai-management:agents.entities.agent.plural',
38
+ icon: 'fa-light fa-people-group',
39
+ },
40
+ openAiEndpoint: {
41
+ name: 'OpenAiEndpoint',
42
+ fullName: `${config.module}.OpenAiEndpoint`,
43
+ title: '@ai-management:open-ai-endpoints.entities.endpoint.title',
44
+ titlePlural: '@ai-management:open-ai-endpoints.entities.endpoint.plural',
45
+ icon: 'fa-light fa-plug',
46
+ },
47
+ rule: {
48
+ name: 'AiRule',
49
+ fullName: `${config.module}.AiRule`,
50
+ title: '@ai-management:rules.entities.rule.title',
51
+ titlePlural: '@ai-management:rules.entities.rule.plural',
52
+ icon: 'fa-light fa-list-check',
53
+ },
54
+ skill: {
55
+ name: 'AiSkill',
56
+ fullName: `${config.module}.AiSkill`,
57
+ title: '@ai-management:skills.entities.skill.title',
58
+ titlePlural: '@ai-management:skills.entities.skill.plural',
59
+ icon: 'fa-light fa-signs-post',
60
+ },
61
+ mcpServer: {
62
+ name: 'McpServer',
63
+ fullName: `${config.module}.McpServer`,
64
+ title: '@ai-management:mcp-servers.entities.mcp-server.title',
65
+ titlePlural: '@ai-management:mcp-servers.entities.mcp-server.plural',
66
+ icon: 'fa-light fa-plug-circle-bolt',
67
+ },
68
+ },
69
+ };
70
+ //#endregion
71
+
72
+ //#endregion
73
+ //#region ---- Entity ----
74
+ async function factoryModel() {
75
+ const entityDef = {
76
+ module: RootConfig.module.name,
77
+ name: RootConfig.entities.model.name,
78
+ title: RootConfig.entities.model.title,
79
+ icon: RootConfig.entities.model.icon,
80
+ plugins: [
81
+ {
82
+ name: 'disable',
83
+ options: {
84
+ disableFieldReadonly: '{{ context.eval("openAiEndpointIsDisabled") === true }}',
85
+ },
86
+ },
87
+ ],
88
+ formats: {
89
+ individual: RootConfig.entities.model.title,
90
+ plural: RootConfig.entities.model.titlePlural,
91
+ searchResult: {
92
+ title: '{{ title }}',
93
+ description: '{{ description }}',
94
+ },
95
+ },
96
+ groups: [
97
+ { id: 'basic-info', title: '@general:terms.interface.basic-info' },
98
+ { id: 'model-configuration', title: '@ai-management:models.entities.model.groups.configuration.title' },
99
+ ],
100
+ properties: [
101
+ {
102
+ name: 'id',
103
+ title: 'ID',
104
+ groupId: 'basic-info',
105
+ schema: { visible: false, nullable: false, readonly: true, unique: { enabled: true } },
106
+ },
107
+ {
108
+ name: 'title',
109
+ title: '@general:terms.common.title',
110
+ groupId: 'basic-info',
111
+ schema: { interface: { type: AXPWidgetsList.Editors.TextBox } },
112
+ options: { sort: { enabled: true }, filter: { inline: { enabled: true }, advance: { enabled: true } } },
113
+ },
114
+ {
115
+ name: 'description',
116
+ title: '@general:terms.common.description',
117
+ groupId: 'basic-info',
118
+ schema: { interface: { type: AXPWidgetsList.Editors.LargeTextBox, options: { rows: 2 } } },
119
+ options: { sort: { enabled: true }, filter: { inline: { enabled: true }, advance: { enabled: true } } },
120
+ },
121
+ {
122
+ name: 'name',
123
+ title: '@ai-management:models.entities.model.fields.api-model-id.title',
124
+ groupId: 'model-configuration',
125
+ schema: { interface: { type: AXPWidgetsList.Editors.TextBox } },
126
+ options: { sort: { enabled: true }, filter: { inline: { enabled: true }, advance: { enabled: true } } },
127
+ // validations: [{ rule: 'required' }],
128
+ },
129
+ {
130
+ name: 'modelPurposes',
131
+ title: '@ai-management:models.entities.model.fields.model-purposes.title',
132
+ description: '@ai-management:models.entities.model.fields.model-purposes.description',
133
+ groupId: 'model-configuration',
134
+ schema: {
135
+ defaultValue: ['chat'],
136
+ nullable: true,
137
+ interface: {
138
+ type: AXPWidgetsList.Editors.TagEditor,
139
+ options: {
140
+ placeholder: '@ai-management:models.entities.model.fields.model-purposes.placeholder',
141
+ allowDuplicate: false,
142
+ },
143
+ },
144
+ },
145
+ options: { filter: { inline: { enabled: true } } },
146
+ },
147
+ {
148
+ name: 'chatTransport',
149
+ title: '@ai-management:models.entities.model.fields.chat-transport.title',
150
+ groupId: 'model-configuration',
151
+ schema: {
152
+ interface: {
153
+ type: AXPWidgetsList.Editors.SelectBox,
154
+ options: {
155
+ valueField: 'value',
156
+ textField: 'text',
157
+ dataSource: [
158
+ {
159
+ value: 'gemini',
160
+ text: '@ai-management:models.entities.model.fields.chat-transport.options.gemini',
161
+ },
162
+ {
163
+ value: 'openai',
164
+ text: '@ai-management:models.entities.model.fields.chat-transport.options.openai',
165
+ },
166
+ ],
167
+ },
168
+ triggers: [
169
+ {
170
+ event: "{{ events.context('chatTransport') }}",
171
+ action: "{{ const t = String(context.eval('chatTransport') ?? '').toLowerCase(); if (t === 'gemini') { context.set('openAiEndpointId', null); } }}",
172
+ },
173
+ ],
174
+ },
175
+ },
176
+ options: { filter: { inline: { enabled: true } } },
177
+ validations: [{ rule: 'required' }],
178
+ },
179
+ {
180
+ name: 'openAiEndpointId',
181
+ title: '@ai-management:models.entities.model.fields.open-ai-endpoint.title',
182
+ description: '@ai-management:models.entities.model.fields.open-ai-endpoint.description',
183
+ groupId: 'model-configuration',
184
+ schema: {
185
+ nullable: true,
186
+ readonly: '{{ ["gemini","openai","demis"].includes(String(context.eval("chatTransport") ?? "").toLowerCase()) }}',
187
+ interface: {
188
+ type: AXPWidgetsList.Editors.LookupBox,
189
+ options: {
190
+ entity: RootConfig.entities.openAiEndpoint.fullName,
191
+ look: 'select',
192
+ multiple: false,
193
+ textField: 'title',
194
+ valueField: 'id',
195
+ },
196
+ },
197
+ },
198
+ options: { filter: { inline: { enabled: true } } },
199
+ },
200
+ {
201
+ name: 'maxContextTokens',
202
+ title: '@ai-management:models.entities.model.fields.max-context-tokens.title',
203
+ description: '@ai-management:models.entities.model.fields.max-context-tokens.description',
204
+ groupId: 'model-configuration',
205
+ schema: {
206
+ interface: { type: AXPWidgetsList.Editors.NumberBox },
207
+ nullable: true,
208
+ },
209
+ },
210
+ {
211
+ name: 'maxOutputTokens',
212
+ title: '@ai-management:models.entities.model.fields.max-output-tokens.title',
213
+ description: '@ai-management:models.entities.model.fields.max-output-tokens.description',
214
+ groupId: 'model-configuration',
215
+ schema: {
216
+ interface: { type: AXPWidgetsList.Editors.NumberBox },
217
+ nullable: true,
218
+ },
219
+ },
220
+ {
221
+ name: 'maxInputTokens',
222
+ title: '@ai-management:models.entities.model.fields.max-input-tokens.title',
223
+ description: '@ai-management:models.entities.model.fields.max-input-tokens.description',
224
+ groupId: 'model-configuration',
225
+ schema: {
226
+ interface: { type: AXPWidgetsList.Editors.NumberBox },
227
+ nullable: true,
228
+ },
229
+ },
230
+ {
231
+ name: 'inputPricePerMillion',
232
+ title: '@ai-management:models.entities.model.fields.input-price-per-million.title',
233
+ description: '@ai-management:models.entities.model.fields.input-price-per-million.description',
234
+ groupId: 'model-configuration',
235
+ schema: {
236
+ interface: { type: AXPWidgetsList.Editors.NumberBox },
237
+ nullable: true,
238
+ },
239
+ },
240
+ {
241
+ name: 'outputPricePerMillion',
242
+ title: '@ai-management:models.entities.model.fields.output-price-per-million.title',
243
+ description: '@ai-management:models.entities.model.fields.output-price-per-million.description',
244
+ groupId: 'model-configuration',
245
+ schema: {
246
+ interface: { type: AXPWidgetsList.Editors.NumberBox },
247
+ nullable: true,
248
+ },
249
+ },
250
+ {
251
+ name: 'cachedInputPricePerMillion',
252
+ title: '@ai-management:models.entities.model.fields.cached-input-price-per-million.title',
253
+ description: '@ai-management:models.entities.model.fields.cached-input-price-per-million.description',
254
+ groupId: 'model-configuration',
255
+ schema: {
256
+ interface: { type: AXPWidgetsList.Editors.NumberBox },
257
+ nullable: true,
258
+ },
259
+ },
260
+ {
261
+ name: 'openAiEndpointIsDisabled',
262
+ title: '@ai-management:models.entities.model.fields.open-ai-endpoint-is-disabled.title',
263
+ description: '@ai-management:models.entities.model.fields.open-ai-endpoint-is-disabled.description',
264
+ groupId: 'model-configuration',
265
+ schema: {
266
+ visible: false,
267
+ nullable: true,
268
+ readonly: true,
269
+ defaultValue: false,
270
+ },
271
+ },
272
+ ],
273
+ columns: [
274
+ { name: 'name', title: '@ai-management:models.entities.model.fields.api-model-id.title', showAs: { type: AXPWidgetsList.Editors.TextBox } },
275
+ { name: 'title', title: '@general:terms.common.title', showAs: { type: AXPWidgetsList.Editors.TextBox } },
276
+ { name: 'chatTransport', title: '@ai-management:models.entities.model.fields.chat-transport.title', showAs: { type: AXPWidgetsList.Editors.TextBox } },
277
+ ],
278
+ interfaces: {
279
+ master: {
280
+ create: {
281
+ sections: [{ id: 'basic-info' }, { id: 'model-configuration' }],
282
+ properties: [
283
+ { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },
284
+ { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },
285
+ { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },
286
+ { name: 'modelPurposes', layout: { positions: { lg: { colSpan: 6 } } } },
287
+ { name: 'chatTransport', layout: { positions: { lg: { colSpan: 6 } } } },
288
+ { name: 'openAiEndpointId', layout: { positions: { lg: { colSpan: 6 } } } },
289
+ { name: 'maxContextTokens', layout: { positions: { lg: { colSpan: 4 } } } },
290
+ { name: 'maxOutputTokens', layout: { positions: { lg: { colSpan: 4 } } } },
291
+ { name: 'maxInputTokens', layout: { positions: { lg: { colSpan: 4 } } } },
292
+ { name: 'inputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },
293
+ { name: 'outputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },
294
+ { name: 'cachedInputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },
295
+ ],
296
+ },
297
+ update: {
298
+ sections: [{ id: 'basic-info' }, { id: 'model-configuration' }],
299
+ properties: [
300
+ { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },
301
+ { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },
302
+ { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },
303
+ { name: 'modelPurposes', layout: { positions: { lg: { colSpan: 6 } } } },
304
+ { name: 'chatTransport', layout: { positions: { lg: { colSpan: 6 } } } },
305
+ { name: 'openAiEndpointId', layout: { positions: { lg: { colSpan: 6 } } } },
306
+ { name: 'maxContextTokens', layout: { positions: { lg: { colSpan: 4 } } } },
307
+ { name: 'maxOutputTokens', layout: { positions: { lg: { colSpan: 4 } } } },
308
+ { name: 'maxInputTokens', layout: { positions: { lg: { colSpan: 4 } } } },
309
+ { name: 'inputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },
310
+ { name: 'outputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },
311
+ { name: 'cachedInputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },
312
+ ],
313
+ },
314
+ single: {
315
+ title: '{{ name || modelId }}',
316
+ sections: [{ id: 'basic-info' }, { id: 'model-configuration' }],
317
+ properties: [
318
+ { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },
319
+ { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },
320
+ { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },
321
+ { name: 'modelPurposes', layout: { positions: { lg: { colSpan: 6 } } } },
322
+ { name: 'chatTransport', layout: { positions: { lg: { colSpan: 6 } } } },
323
+ { name: 'openAiEndpointId', layout: { positions: { lg: { colSpan: 6 } } } },
324
+ { name: 'maxContextTokens', layout: { positions: { lg: { colSpan: 4 } } } },
325
+ { name: 'maxOutputTokens', layout: { positions: { lg: { colSpan: 4 } } } },
326
+ { name: 'maxInputTokens', layout: { positions: { lg: { colSpan: 4 } } } },
327
+ { name: 'inputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },
328
+ { name: 'outputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },
329
+ { name: 'cachedInputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },
330
+ ],
331
+ actions: [],
332
+ },
333
+ list: {
334
+ actions: [...entityMasterCrudActions()],
335
+ views: [createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] })],
336
+ },
337
+ },
338
+ },
339
+ };
340
+ return entityDef;
341
+ }
342
+ //#endregion
343
+
344
+ /**
345
+ * Generated bundle index. Do not edit.
346
+ */
347
+
348
+ export { factoryModel };
349
+ //# sourceMappingURL=acorex-platform-module-ai-management-client-contracts-entities-model.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-ai-management-client-contracts-entities-model.mjs","sources":["../../../../libs/modules/ai-management/contracts/src/root-config.ts","../../../../libs/modules/ai-management/contracts/src/entities/model/model.entity.ts","../../../../libs/modules/ai-management/contracts/src/acorex-platform-module-ai-management-client-contracts-entities-model.ts"],"sourcesContent":["//#region ---- Module Config ----\r\n\r\nconst config = {\r\n i18n: 'ai-management',\r\n module: 'AiManagement',\r\n route: 'ai-management',\r\n};\r\n\r\nexport const RootConfig = {\r\n config,\r\n module: {\r\n name: config.module,\r\n route: config.route,\r\n title: `@${config.i18n}:module.title`,\r\n icon: 'fa-light fa-robot',\r\n },\r\n entities: {\r\n model: {\r\n name: 'AiModel',\r\n fullName: `${config.module}.AiModel`,\r\n title: '@ai-management:models.entities.model.title',\r\n titlePlural: '@ai-management:models.entities.model.plural',\r\n icon: 'fa-light fa-microchip',\r\n },\r\n assist: {\r\n name: 'Assist',\r\n fullName: `${config.module}.Assist`,\r\n title: '@ai-management:assists.entities.assist.title',\r\n titlePlural: '@ai-management:assists.entities.assist.plural',\r\n icon: 'fa-light fa-user-robot',\r\n },\r\n agent: {\r\n name: 'AiAgent',\r\n fullName: `${config.module}.AiAgent`,\r\n title: '@ai-management:agents.entities.agent.title',\r\n titlePlural: '@ai-management:agents.entities.agent.plural',\r\n icon: 'fa-light fa-people-group',\r\n },\r\n openAiEndpoint: {\r\n name: 'OpenAiEndpoint',\r\n fullName: `${config.module}.OpenAiEndpoint`,\r\n title: '@ai-management:open-ai-endpoints.entities.endpoint.title',\r\n titlePlural: '@ai-management:open-ai-endpoints.entities.endpoint.plural',\r\n icon: 'fa-light fa-plug',\r\n },\r\n rule: {\r\n name: 'AiRule',\r\n fullName: `${config.module}.AiRule`,\r\n title: '@ai-management:rules.entities.rule.title',\r\n titlePlural: '@ai-management:rules.entities.rule.plural',\r\n icon: 'fa-light fa-list-check',\r\n },\r\n skill: {\r\n name: 'AiSkill',\r\n fullName: `${config.module}.AiSkill`,\r\n title: '@ai-management:skills.entities.skill.title',\r\n titlePlural: '@ai-management:skills.entities.skill.plural',\r\n icon: 'fa-light fa-signs-post',\r\n },\r\n mcpServer: {\r\n name: 'McpServer',\r\n fullName: `${config.module}.McpServer`,\r\n title: '@ai-management:mcp-servers.entities.mcp-server.title',\r\n titlePlural: '@ai-management:mcp-servers.entities.mcp-server.plural',\r\n icon: 'fa-light fa-plug-circle-bolt',\r\n },\r\n },\r\n};\r\n\r\n//#endregion\r\n","import { AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport { AXPEntity, createAllQueryView, entityMasterCrudActions } from '@acorex-platform/framework-shared/entity';\n//#region ---- Imports ----\nimport { RootConfig } from '../../root-config';\n\n//#endregion\n\n//#region ---- Entity ----\n\nexport async function factoryModel(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.model.name,\n title: RootConfig.entities.model.title,\n icon: RootConfig.entities.model.icon,\n plugins: [\n {\n name: 'disable',\n options: {\n disableFieldReadonly: '{{ context.eval(\"openAiEndpointIsDisabled\") === true }}',\n },\n },\n ],\n formats: {\n individual: RootConfig.entities.model.title,\n plural: RootConfig.entities.model.titlePlural,\n searchResult: {\n title: '{{ title }}',\n description: '{{ description }}',\n },\n },\n groups: [\n { id: 'basic-info', title: '@general:terms.interface.basic-info' },\n { id: 'model-configuration', title: '@ai-management:models.entities.model.groups.configuration.title' },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n groupId: 'basic-info',\n schema: { visible: false, nullable: false, readonly: true, unique: { enabled: true } },\n },\n {\n name: 'title',\n title: '@general:terms.common.title',\n groupId: 'basic-info',\n schema: { interface: { type: AXPWidgetsList.Editors.TextBox } },\n options: { sort: { enabled: true }, filter: { inline: { enabled: true }, advance: { enabled: true } } },\n },\n {\n name: 'description',\n title: '@general:terms.common.description',\n groupId: 'basic-info',\n schema: { interface: { type: AXPWidgetsList.Editors.LargeTextBox, options: { rows: 2 } } },\n options: { sort: { enabled: true }, filter: { inline: { enabled: true }, advance: { enabled: true } } },\n },\n {\n name: 'name',\n title: '@ai-management:models.entities.model.fields.api-model-id.title',\n groupId: 'model-configuration',\n schema: { interface: { type: AXPWidgetsList.Editors.TextBox } },\n options: { sort: { enabled: true }, filter: { inline: { enabled: true }, advance: { enabled: true } } },\n // validations: [{ rule: 'required' }],\n },\n {\n name: 'modelPurposes',\n title: '@ai-management:models.entities.model.fields.model-purposes.title',\n description: '@ai-management:models.entities.model.fields.model-purposes.description',\n groupId: 'model-configuration',\n schema: {\n defaultValue: ['chat'],\n nullable: true,\n interface: {\n type: AXPWidgetsList.Editors.TagEditor,\n options: {\n placeholder: '@ai-management:models.entities.model.fields.model-purposes.placeholder',\n allowDuplicate: false,\n },\n },\n },\n options: { filter: { inline: { enabled: true } } },\n },\n {\n name: 'chatTransport',\n title: '@ai-management:models.entities.model.fields.chat-transport.title',\n groupId: 'model-configuration',\n schema: {\n interface: {\n type: AXPWidgetsList.Editors.SelectBox,\n options: {\n valueField: 'value',\n textField: 'text',\n dataSource: [\n {\n value: 'gemini',\n text: '@ai-management:models.entities.model.fields.chat-transport.options.gemini',\n },\n {\n value: 'openai',\n text: '@ai-management:models.entities.model.fields.chat-transport.options.openai',\n },\n ],\n },\n triggers: [\n {\n event: \"{{ events.context('chatTransport') }}\",\n action:\n \"{{ const t = String(context.eval('chatTransport') ?? '').toLowerCase(); if (t === 'gemini') { context.set('openAiEndpointId', null); } }}\",\n },\n ],\n },\n },\n options: { filter: { inline: { enabled: true } } },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'openAiEndpointId',\n title: '@ai-management:models.entities.model.fields.open-ai-endpoint.title',\n description: '@ai-management:models.entities.model.fields.open-ai-endpoint.description',\n groupId: 'model-configuration',\n schema: {\n nullable: true,\n readonly:\n '{{ [\"gemini\",\"openai\",\"demis\"].includes(String(context.eval(\"chatTransport\") ?? \"\").toLowerCase()) }}',\n interface: {\n type: AXPWidgetsList.Editors.LookupBox,\n options: {\n entity: RootConfig.entities.openAiEndpoint.fullName,\n look: 'select',\n multiple: false,\n textField: 'title',\n valueField: 'id',\n },\n },\n },\n options: { filter: { inline: { enabled: true } } },\n },\n {\n name: 'maxContextTokens',\n title: '@ai-management:models.entities.model.fields.max-context-tokens.title',\n description: '@ai-management:models.entities.model.fields.max-context-tokens.description',\n groupId: 'model-configuration',\n schema: {\n interface: { type: AXPWidgetsList.Editors.NumberBox },\n nullable: true,\n },\n },\n {\n name: 'maxOutputTokens',\n title: '@ai-management:models.entities.model.fields.max-output-tokens.title',\n description: '@ai-management:models.entities.model.fields.max-output-tokens.description',\n groupId: 'model-configuration',\n schema: {\n interface: { type: AXPWidgetsList.Editors.NumberBox },\n nullable: true,\n },\n },\n {\n name: 'maxInputTokens',\n title: '@ai-management:models.entities.model.fields.max-input-tokens.title',\n description: '@ai-management:models.entities.model.fields.max-input-tokens.description',\n groupId: 'model-configuration',\n schema: {\n interface: { type: AXPWidgetsList.Editors.NumberBox },\n nullable: true,\n },\n },\n {\n name: 'inputPricePerMillion',\n title: '@ai-management:models.entities.model.fields.input-price-per-million.title',\n description: '@ai-management:models.entities.model.fields.input-price-per-million.description',\n groupId: 'model-configuration',\n schema: {\n interface: { type: AXPWidgetsList.Editors.NumberBox },\n nullable: true,\n },\n },\n {\n name: 'outputPricePerMillion',\n title: '@ai-management:models.entities.model.fields.output-price-per-million.title',\n description: '@ai-management:models.entities.model.fields.output-price-per-million.description',\n groupId: 'model-configuration',\n schema: {\n interface: { type: AXPWidgetsList.Editors.NumberBox },\n nullable: true,\n },\n },\n {\n name: 'cachedInputPricePerMillion',\n title: '@ai-management:models.entities.model.fields.cached-input-price-per-million.title',\n description: '@ai-management:models.entities.model.fields.cached-input-price-per-million.description',\n groupId: 'model-configuration',\n schema: {\n interface: { type: AXPWidgetsList.Editors.NumberBox },\n nullable: true,\n },\n },\n {\n name: 'openAiEndpointIsDisabled',\n title: '@ai-management:models.entities.model.fields.open-ai-endpoint-is-disabled.title',\n description: '@ai-management:models.entities.model.fields.open-ai-endpoint-is-disabled.description',\n groupId: 'model-configuration',\n schema: {\n visible: false,\n nullable: true,\n readonly: true,\n defaultValue: false,\n },\n },\n ],\n columns: [\n { name: 'name', title: '@ai-management:models.entities.model.fields.api-model-id.title', showAs: { type: AXPWidgetsList.Editors.TextBox } },\n { name: 'title', title: '@general:terms.common.title', showAs: { type: AXPWidgetsList.Editors.TextBox } },\n { name: 'chatTransport', title: '@ai-management:models.entities.model.fields.chat-transport.title', showAs: { type: AXPWidgetsList.Editors.TextBox } },\n ],\n interfaces: {\n master: {\n create: {\n sections: [{ id: 'basic-info' }, { id: 'model-configuration' }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'modelPurposes', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'chatTransport', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'openAiEndpointId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'maxContextTokens', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'maxOutputTokens', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'maxInputTokens', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'inputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'outputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'cachedInputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },\n ],\n },\n update: {\n sections: [{ id: 'basic-info' }, { id: 'model-configuration' }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'modelPurposes', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'chatTransport', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'openAiEndpointId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'maxContextTokens', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'maxOutputTokens', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'maxInputTokens', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'inputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'outputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'cachedInputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },\n ],\n },\n single: {\n title: '{{ name || modelId }}',\n sections: [{ id: 'basic-info' }, { id: 'model-configuration' }],\n properties: [\n { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },\n { name: 'name', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'modelPurposes', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'chatTransport', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'openAiEndpointId', layout: { positions: { lg: { colSpan: 6 } } } },\n { name: 'maxContextTokens', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'maxOutputTokens', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'maxInputTokens', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'inputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'outputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },\n { name: 'cachedInputPricePerMillion', layout: { positions: { lg: { colSpan: 4 } } } },\n ],\n actions: [],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] })],\n },\n },\n },\n };\n return entityDef;\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './entity-entry.model';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,203 @@
1
+ import { AXPWidgetsList } from '@acorex-platform/framework-shared/core';
2
+ import { createAllQueryView, entityMasterCrudActions } from '@acorex-platform/framework-shared/entity';
3
+
4
+ //#region ---- Module Config ----
5
+ const config = {
6
+ i18n: 'ai-management',
7
+ module: 'AiManagement',
8
+ route: 'ai-management',
9
+ };
10
+ const RootConfig = {
11
+ config,
12
+ module: {
13
+ name: config.module,
14
+ route: config.route,
15
+ title: `@${config.i18n}:module.title`,
16
+ icon: 'fa-light fa-robot',
17
+ },
18
+ entities: {
19
+ model: {
20
+ name: 'AiModel',
21
+ fullName: `${config.module}.AiModel`,
22
+ title: '@ai-management:models.entities.model.title',
23
+ titlePlural: '@ai-management:models.entities.model.plural',
24
+ icon: 'fa-light fa-microchip',
25
+ },
26
+ assist: {
27
+ name: 'Assist',
28
+ fullName: `${config.module}.Assist`,
29
+ title: '@ai-management:assists.entities.assist.title',
30
+ titlePlural: '@ai-management:assists.entities.assist.plural',
31
+ icon: 'fa-light fa-user-robot',
32
+ },
33
+ agent: {
34
+ name: 'AiAgent',
35
+ fullName: `${config.module}.AiAgent`,
36
+ title: '@ai-management:agents.entities.agent.title',
37
+ titlePlural: '@ai-management:agents.entities.agent.plural',
38
+ icon: 'fa-light fa-people-group',
39
+ },
40
+ openAiEndpoint: {
41
+ name: 'OpenAiEndpoint',
42
+ fullName: `${config.module}.OpenAiEndpoint`,
43
+ title: '@ai-management:open-ai-endpoints.entities.endpoint.title',
44
+ titlePlural: '@ai-management:open-ai-endpoints.entities.endpoint.plural',
45
+ icon: 'fa-light fa-plug',
46
+ },
47
+ rule: {
48
+ name: 'AiRule',
49
+ fullName: `${config.module}.AiRule`,
50
+ title: '@ai-management:rules.entities.rule.title',
51
+ titlePlural: '@ai-management:rules.entities.rule.plural',
52
+ icon: 'fa-light fa-list-check',
53
+ },
54
+ skill: {
55
+ name: 'AiSkill',
56
+ fullName: `${config.module}.AiSkill`,
57
+ title: '@ai-management:skills.entities.skill.title',
58
+ titlePlural: '@ai-management:skills.entities.skill.plural',
59
+ icon: 'fa-light fa-signs-post',
60
+ },
61
+ mcpServer: {
62
+ name: 'McpServer',
63
+ fullName: `${config.module}.McpServer`,
64
+ title: '@ai-management:mcp-servers.entities.mcp-server.title',
65
+ titlePlural: '@ai-management:mcp-servers.entities.mcp-server.plural',
66
+ icon: 'fa-light fa-plug-circle-bolt',
67
+ },
68
+ },
69
+ };
70
+ //#endregion
71
+
72
+ //#endregion
73
+ //#region ---- Entity ----
74
+ async function openAiEndpointFactory() {
75
+ const entityDef = {
76
+ module: RootConfig.module.name,
77
+ name: RootConfig.entities.openAiEndpoint.name,
78
+ title: RootConfig.entities.openAiEndpoint.title,
79
+ icon: RootConfig.entities.openAiEndpoint.icon,
80
+ plugins: [{ name: 'disable' }],
81
+ formats: {
82
+ individual: RootConfig.entities.openAiEndpoint.title,
83
+ plural: RootConfig.entities.openAiEndpoint.titlePlural,
84
+ searchResult: {
85
+ title: '{{ title }}',
86
+ description: '{{ description }}',
87
+ },
88
+ },
89
+ groups: [
90
+ { id: 'basic-info', title: '@general:terms.interface.basic-info' },
91
+ { id: 'connection', title: '@ai-management:open-ai-endpoints.entities.endpoint.groups.connection.title' },
92
+ ],
93
+ properties: [
94
+ {
95
+ name: 'id',
96
+ title: 'ID',
97
+ groupId: 'basic-info',
98
+ schema: { visible: false, nullable: false, readonly: true, unique: { enabled: true } },
99
+ },
100
+ {
101
+ name: 'title',
102
+ title: '@general:terms.common.title',
103
+ groupId: 'basic-info',
104
+ schema: { interface: { type: AXPWidgetsList.Editors.TextBox } },
105
+ options: { sort: { enabled: true }, filter: { inline: { enabled: true } } },
106
+ validations: [{ rule: 'required' }],
107
+ },
108
+ {
109
+ name: 'description',
110
+ title: '@general:terms.common.description',
111
+ groupId: 'basic-info',
112
+ schema: { interface: { type: AXPWidgetsList.Editors.LargeTextBox, options: { rows: 2 } } },
113
+ },
114
+ {
115
+ name: 'apiBase',
116
+ title: '@ai-management:open-ai-endpoints.entities.endpoint.fields.api-base.title',
117
+ description: '@ai-management:open-ai-endpoints.entities.endpoint.fields.api-base.description',
118
+ groupId: 'connection',
119
+ schema: { interface: { type: AXPWidgetsList.Editors.TextBox } },
120
+ validations: [{ rule: 'required' }],
121
+ },
122
+ {
123
+ name: 'apiKey',
124
+ title: '@ai-management:open-ai-endpoints.entities.endpoint.fields.api-key.title',
125
+ description: '@ai-management:open-ai-endpoints.entities.endpoint.fields.api-key.description',
126
+ groupId: 'connection',
127
+ schema: { nullable: true, interface: { type: AXPWidgetsList.Editors.TextBox } },
128
+ },
129
+ {
130
+ name: 'stream',
131
+ title: '@ai-management:open-ai-endpoints.entities.endpoint.fields.stream.title',
132
+ description: '@ai-management:open-ai-endpoints.entities.endpoint.fields.stream.description',
133
+ groupId: 'connection',
134
+ schema: {
135
+ nullable: true,
136
+ interface: { type: AXPWidgetsList.Editors.ToggleSwitch },
137
+ },
138
+ },
139
+ ],
140
+ columns: [
141
+ { name: 'title', title: '@general:terms.common.title', showAs: { type: AXPWidgetsList.Editors.TextBox } },
142
+ {
143
+ name: 'apiBase',
144
+ title: '@ai-management:open-ai-endpoints.entities.endpoint.fields.api-base.title',
145
+ showAs: { type: AXPWidgetsList.Editors.TextBox },
146
+ },
147
+ {
148
+ name: 'stream',
149
+ title: '@ai-management:open-ai-endpoints.entities.endpoint.fields.stream.title',
150
+ showAs: { type: AXPWidgetsList.Editors.ToggleSwitch },
151
+ },
152
+ ],
153
+ interfaces: {
154
+ master: {
155
+ create: {
156
+ sections: [{ id: 'basic-info' }, { id: 'connection' }],
157
+ properties: [
158
+ { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },
159
+ { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },
160
+ { name: 'apiBase', layout: { positions: { lg: { colSpan: 12 } } } },
161
+ { name: 'apiKey', layout: { positions: { lg: { colSpan: 12 } } } },
162
+ { name: 'stream', layout: { positions: { lg: { colSpan: 12 } } } },
163
+ ],
164
+ },
165
+ update: {
166
+ sections: [{ id: 'basic-info' }, { id: 'connection' }],
167
+ properties: [
168
+ { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },
169
+ { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },
170
+ { name: 'apiBase', layout: { positions: { lg: { colSpan: 12 } } } },
171
+ { name: 'apiKey', layout: { positions: { lg: { colSpan: 12 } } } },
172
+ { name: 'stream', layout: { positions: { lg: { colSpan: 12 } } } },
173
+ ],
174
+ },
175
+ single: {
176
+ title: '{{ title }}',
177
+ sections: [{ id: 'basic-info' }, { id: 'connection' }],
178
+ properties: [
179
+ { name: 'title', layout: { positions: { lg: { colSpan: 6 } } } },
180
+ { name: 'description', layout: { positions: { lg: { colSpan: 12 } } } },
181
+ { name: 'apiBase', layout: { positions: { lg: { colSpan: 12 } } } },
182
+ { name: 'apiKey', layout: { positions: { lg: { colSpan: 12 } } } },
183
+ { name: 'stream', layout: { positions: { lg: { colSpan: 12 } } } },
184
+ ],
185
+ actions: [],
186
+ },
187
+ list: {
188
+ actions: [...entityMasterCrudActions()],
189
+ views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
190
+ },
191
+ },
192
+ },
193
+ };
194
+ return entityDef;
195
+ }
196
+ //#endregion
197
+
198
+ /**
199
+ * Generated bundle index. Do not edit.
200
+ */
201
+
202
+ export { openAiEndpointFactory };
203
+ //# sourceMappingURL=acorex-platform-module-ai-management-client-contracts-entities-open-ai-endpoint.mjs.map