@cratis/ai 2.15.0 → 2.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/generated/Harnesses/Harness.js +1 -1
- package/dist/cjs/generated/Harnesses/Harness.js.map +1 -1
- package/dist/cjs/generated/Providers/Adding/AddAnthropicProvider.js +75 -0
- package/dist/cjs/generated/Providers/Adding/AddAnthropicProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Adding/AddAzureOpenAIProvider.js +86 -0
- package/dist/cjs/generated/Providers/Adding/AddAzureOpenAIProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Adding/AddOpenAICompatibleProvider.js +86 -0
- package/dist/cjs/generated/Providers/Adding/AddOpenAICompatibleProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Adding/AddOpenAIProvider.js +75 -0
- package/dist/cjs/generated/Providers/Adding/AddOpenAIProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Adding/AddZAIProvider.js +86 -0
- package/dist/cjs/generated/Providers/Adding/AddZAIProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.js +36 -0
- package/dist/cjs/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.js +43 -0
- package/dist/cjs/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.js +43 -0
- package/dist/cjs/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.js +36 -0
- package/dist/cjs/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.js +57 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.js +68 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.js +68 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.js +57 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureZAIProvider.js +68 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureZAIProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ZAIProviderReconfigured.js +43 -0
- package/dist/cjs/generated/Providers/Reconfiguring/ZAIProviderReconfigured.js.map +1 -0
- package/dist/cjs/generated/Providers/Removing/RemoveAIProvider.js +45 -0
- package/dist/cjs/generated/Providers/Removing/RemoveAIProvider.js.map +1 -0
- package/dist/cjs/generated/Providers/Renaming/RenameAIProvider.js +56 -0
- package/dist/cjs/generated/Providers/Renaming/RenameAIProvider.js.map +1 -0
- package/dist/cjs/generated/Usage/Daily/AgentUsageByDay.js.map +1 -1
- package/dist/cjs/generated/Usage/Daily/LastYear.js +1 -1
- package/dist/cjs/generated/Usage/Daily/LastYear.js.map +1 -1
- package/dist/cjs/generated/Usage/RecordAgentSessionUsage.js +1 -1
- package/dist/cjs/generated/Usage/RecordAgentSessionUsage.js.map +1 -1
- package/dist/cjs/generated/Usage/Trends/AgentUsageByMonth.js.map +1 -1
- package/dist/cjs/generated/Usage/Trends/AgentUsageByWeek.js.map +1 -1
- package/dist/cjs/generated/Usage/Trends/RecentMonths.js +1 -1
- package/dist/cjs/generated/Usage/Trends/RecentMonths.js.map +1 -1
- package/dist/cjs/generated/Usage/Trends/RecentWeeks.js +1 -1
- package/dist/cjs/generated/Usage/Trends/RecentWeeks.js.map +1 -1
- package/dist/cjs/index.js +39 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/generated/Harnesses/Harness.js +1 -1
- package/dist/esm/generated/Harnesses/Harness.js.map +1 -1
- package/dist/esm/generated/Providers/Adding/AddAnthropicProvider.d.ts +32 -0
- package/dist/esm/generated/Providers/Adding/AddAnthropicProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Adding/AddAnthropicProvider.js +72 -0
- package/dist/esm/generated/Providers/Adding/AddAnthropicProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Adding/AddAzureOpenAIProvider.d.ts +36 -0
- package/dist/esm/generated/Providers/Adding/AddAzureOpenAIProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Adding/AddAzureOpenAIProvider.js +83 -0
- package/dist/esm/generated/Providers/Adding/AddAzureOpenAIProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Adding/AddOpenAICompatibleProvider.d.ts +36 -0
- package/dist/esm/generated/Providers/Adding/AddOpenAICompatibleProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Adding/AddOpenAICompatibleProvider.js +83 -0
- package/dist/esm/generated/Providers/Adding/AddOpenAICompatibleProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Adding/AddOpenAIProvider.d.ts +32 -0
- package/dist/esm/generated/Providers/Adding/AddOpenAIProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Adding/AddOpenAIProvider.js +72 -0
- package/dist/esm/generated/Providers/Adding/AddOpenAIProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Adding/AddZAIProvider.d.ts +36 -0
- package/dist/esm/generated/Providers/Adding/AddZAIProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Adding/AddZAIProvider.js +83 -0
- package/dist/esm/generated/Providers/Adding/AddZAIProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Adding/index.d.ts +6 -0
- package/dist/esm/generated/Providers/Adding/index.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Adding/index.js +6 -0
- package/dist/esm/generated/Providers/Adding/index.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.d.ts +4 -0
- package/dist/esm/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.js +34 -0
- package/dist/esm/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.d.ts +5 -0
- package/dist/esm/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.js +41 -0
- package/dist/esm/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.d.ts +5 -0
- package/dist/esm/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.js +41 -0
- package/dist/esm/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.d.ts +4 -0
- package/dist/esm/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.js +34 -0
- package/dist/esm/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.d.ts +25 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.js +55 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.d.ts +29 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.js +66 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.d.ts +29 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.js +66 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.d.ts +25 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.js +55 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureZAIProvider.d.ts +29 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureZAIProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureZAIProvider.js +66 -0
- package/dist/esm/generated/Providers/Reconfiguring/ReconfigureZAIProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ZAIProviderReconfigured.d.ts +5 -0
- package/dist/esm/generated/Providers/Reconfiguring/ZAIProviderReconfigured.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/ZAIProviderReconfigured.js +41 -0
- package/dist/esm/generated/Providers/Reconfiguring/ZAIProviderReconfigured.js.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/index.d.ts +11 -0
- package/dist/esm/generated/Providers/Reconfiguring/index.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Reconfiguring/index.js +11 -0
- package/dist/esm/generated/Providers/Reconfiguring/index.js.map +1 -0
- package/dist/esm/generated/Providers/Removing/RemoveAIProvider.d.ts +20 -0
- package/dist/esm/generated/Providers/Removing/RemoveAIProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Removing/RemoveAIProvider.js +43 -0
- package/dist/esm/generated/Providers/Removing/RemoveAIProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Removing/index.d.ts +2 -0
- package/dist/esm/generated/Providers/Removing/index.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Removing/index.js +2 -0
- package/dist/esm/generated/Providers/Removing/index.js.map +1 -0
- package/dist/esm/generated/Providers/Renaming/RenameAIProvider.d.ts +24 -0
- package/dist/esm/generated/Providers/Renaming/RenameAIProvider.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Renaming/RenameAIProvider.js +54 -0
- package/dist/esm/generated/Providers/Renaming/RenameAIProvider.js.map +1 -0
- package/dist/esm/generated/Providers/Renaming/index.d.ts +2 -0
- package/dist/esm/generated/Providers/Renaming/index.d.ts.map +1 -0
- package/dist/esm/generated/Providers/Renaming/index.js +2 -0
- package/dist/esm/generated/Providers/Renaming/index.js.map +1 -0
- package/dist/esm/generated/Usage/Daily/AgentUsageByDay.js.map +1 -1
- package/dist/esm/generated/Usage/Daily/LastYear.js +1 -1
- package/dist/esm/generated/Usage/Daily/LastYear.js.map +1 -1
- package/dist/esm/generated/Usage/RecordAgentSessionUsage.js +1 -1
- package/dist/esm/generated/Usage/RecordAgentSessionUsage.js.map +1 -1
- package/dist/esm/generated/Usage/Trends/AgentUsageByMonth.js.map +1 -1
- package/dist/esm/generated/Usage/Trends/AgentUsageByWeek.js.map +1 -1
- package/dist/esm/generated/Usage/Trends/RecentMonths.js +1 -1
- package/dist/esm/generated/Usage/Trends/RecentMonths.js.map +1 -1
- package/dist/esm/generated/Usage/Trends/RecentWeeks.js +1 -1
- package/dist/esm/generated/Usage/Trends/RecentWeeks.js.map +1 -1
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +17 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/generated/Harnesses/Harness.ts +1 -1
- package/generated/Providers/Adding/AddAnthropicProvider.ts +108 -0
- package/generated/Providers/Adding/AddAzureOpenAIProvider.ts +126 -0
- package/generated/Providers/Adding/AddOpenAICompatibleProvider.ts +126 -0
- package/generated/Providers/Adding/AddOpenAIProvider.ts +108 -0
- package/generated/Providers/Adding/AddZAIProvider.ts +126 -0
- package/generated/Providers/Adding/index.ts +5 -0
- package/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.ts +20 -0
- package/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.ts +26 -0
- package/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.ts +26 -0
- package/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.ts +20 -0
- package/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.ts +84 -0
- package/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.ts +102 -0
- package/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.ts +102 -0
- package/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.ts +84 -0
- package/generated/Providers/Reconfiguring/ReconfigureZAIProvider.ts +102 -0
- package/generated/Providers/Reconfiguring/ZAIProviderReconfigured.ts +26 -0
- package/generated/Providers/Reconfiguring/index.ts +10 -0
- package/generated/Providers/Removing/RemoveAIProvider.ts +65 -0
- package/generated/Providers/Removing/index.ts +1 -0
- package/generated/Providers/Renaming/RenameAIProvider.ts +83 -0
- package/generated/Providers/Renaming/index.ts +1 -0
- package/generated/Usage/Daily/AgentUsageByDay.ts +1 -1
- package/generated/Usage/Daily/LastYear.ts +1 -1
- package/generated/Usage/RecordAgentSessionUsage.ts +1 -1
- package/generated/Usage/Trends/AgentUsageByMonth.ts +1 -1
- package/generated/Usage/Trends/AgentUsageByWeek.ts +1 -1
- package/generated/Usage/Trends/RecentMonths.ts +1 -1
- package/generated/Usage/Trends/RecentWeeks.ts +1 -1
- package/index.ts +4 -0
- package/package.json +1 -1
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Command, CommandValidator } from '@cratis/arc/commands';
|
|
2
|
+
import { useCommand } from '@cratis/arc.react/commands';
|
|
3
|
+
import { PropertyDescriptor } from '@cratis/arc/reflection';
|
|
4
|
+
import { Guid } from '@cratis/fundamentals';
|
|
5
|
+
|
|
6
|
+
// @generated by Cratis. Source: Cratis.AI.Providers.Adding.AddAzureOpenAIProvider. Time: 2026-09-15T16:31:09.9367206Z. Hash: A27E326198BFC90872E61300D2494450CE3FB921477188F0EFD0368813387A8C
|
|
7
|
+
/*---------------------------------------------------------------------------------------------
|
|
8
|
+
* **DO NOT EDIT** - This file is an automatically generated file.
|
|
9
|
+
*--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ /* eslint-disable @typescript-eslint/no-empty-interface */ // eslint-disable-next-line header/header
|
|
10
|
+
class AddAzureOpenAIProviderValidator extends CommandValidator {
|
|
11
|
+
constructor(){
|
|
12
|
+
super();
|
|
13
|
+
this.ruleFor((c)=>c.maxConcurrentJobs).greaterThanOrEqual(0).withMessage('A concurrency limit cannot be negative - use zero for no limit');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Command for adding an Azure OpenAI AI provider - a named deployment at a tenant-specific endpoint. Ported from Direct's `AIProviders.Adding.AddAzureOpenAIProvider` (plan Section 5.2 step 4).
|
|
18
|
+
*/ class AddAzureOpenAIProvider extends Command {
|
|
19
|
+
route = '/api/a-i/providers/adding/add-azure-open-a-i-provider';
|
|
20
|
+
validation = new AddAzureOpenAIProviderValidator();
|
|
21
|
+
treatWarningsAsErrors = false;
|
|
22
|
+
roles = [];
|
|
23
|
+
propertyDescriptors = [
|
|
24
|
+
new PropertyDescriptor('apiKey', String, false),
|
|
25
|
+
new PropertyDescriptor('endpoint', String, false),
|
|
26
|
+
new PropertyDescriptor('maxConcurrentJobs', Number, false),
|
|
27
|
+
new PropertyDescriptor('name', String, false)
|
|
28
|
+
];
|
|
29
|
+
_apiKey;
|
|
30
|
+
_endpoint;
|
|
31
|
+
_maxConcurrentJobs;
|
|
32
|
+
_name;
|
|
33
|
+
constructor(){
|
|
34
|
+
super(Guid, false);
|
|
35
|
+
}
|
|
36
|
+
get requestParameters() {
|
|
37
|
+
return [];
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The Azure OpenAI API key.
|
|
41
|
+
*/ get apiKey() {
|
|
42
|
+
return this._apiKey;
|
|
43
|
+
}
|
|
44
|
+
set apiKey(value) {
|
|
45
|
+
this._apiKey = value;
|
|
46
|
+
this.propertyChanged('apiKey');
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* The Azure OpenAI resource endpoint.
|
|
50
|
+
*/ get endpoint() {
|
|
51
|
+
return this._endpoint;
|
|
52
|
+
}
|
|
53
|
+
set endpoint(value) {
|
|
54
|
+
this._endpoint = value;
|
|
55
|
+
this.propertyChanged('endpoint');
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* How many worker sessions may run on it at once - zero for no limit.
|
|
59
|
+
*/ get maxConcurrentJobs() {
|
|
60
|
+
return this._maxConcurrentJobs;
|
|
61
|
+
}
|
|
62
|
+
set maxConcurrentJobs(value) {
|
|
63
|
+
this._maxConcurrentJobs = value;
|
|
64
|
+
this.propertyChanged('maxConcurrentJobs');
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* The provider's display name.
|
|
68
|
+
*/ get name() {
|
|
69
|
+
return this._name;
|
|
70
|
+
}
|
|
71
|
+
set name(value) {
|
|
72
|
+
this._name = value;
|
|
73
|
+
this.propertyChanged('name');
|
|
74
|
+
}
|
|
75
|
+
static use(initialValues) {
|
|
76
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
77
|
+
// @ts-ignore
|
|
78
|
+
return useCommand(AddAzureOpenAIProvider, initialValues);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export { AddAzureOpenAIProvider, AddAzureOpenAIProviderValidator };
|
|
83
|
+
//# sourceMappingURL=AddAzureOpenAIProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddAzureOpenAIProvider.js","sources":["../../../../../generated/Providers/Adding/AddAzureOpenAIProvider.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Providers.Adding.AddAzureOpenAIProvider. Time: 2026-09-15T16:31:09.9367206Z. Hash: A27E326198BFC90872E61300D2494450CE3FB921477188F0EFD0368813387A8C\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n/* eslint-disable @typescript-eslint/no-empty-interface */\n// eslint-disable-next-line header/header\nimport { Command, CommandValidator } from '@cratis/arc/commands';\nimport { useCommand, SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';\nimport { PropertyDescriptor } from '@cratis/arc/reflection';\nimport { Guid } from '@cratis/fundamentals';\n\n/**\n * Command for adding an Azure OpenAI AI provider - a named deployment at a tenant-specific endpoint. Ported from Direct's `AIProviders.Adding.AddAzureOpenAIProvider` (plan Section 5.2 step 4).\n */\nexport interface IAddAzureOpenAIProvider {\n \n /**\n * The Azure OpenAI API key.\n */\n apiKey?: string;\n \n /**\n * The Azure OpenAI resource endpoint.\n */\n endpoint?: string;\n \n /**\n * How many worker sessions may run on it at once - zero for no limit.\n */\n maxConcurrentJobs?: number;\n \n /**\n * The provider's display name.\n */\n name?: string;\n}\n\nexport class AddAzureOpenAIProviderValidator extends CommandValidator<IAddAzureOpenAIProvider> {\n constructor() {\n super();\n this.ruleFor(c => c.maxConcurrentJobs).greaterThanOrEqual(0).withMessage('A concurrency limit cannot be negative - use zero for no limit');\n }\n}\n\n/**\n * Command for adding an Azure OpenAI AI provider - a named deployment at a tenant-specific endpoint. Ported from Direct's `AIProviders.Adding.AddAzureOpenAIProvider` (plan Section 5.2 step 4).\n */\nexport class AddAzureOpenAIProvider extends Command<IAddAzureOpenAIProvider, Guid> implements IAddAzureOpenAIProvider {\n readonly route: string = '/api/a-i/providers/adding/add-azure-open-a-i-provider';\n readonly validation: CommandValidator = new AddAzureOpenAIProviderValidator();\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly propertyDescriptors: PropertyDescriptor[] = [\n new PropertyDescriptor('apiKey', String, false),\n new PropertyDescriptor('endpoint', String, false),\n new PropertyDescriptor('maxConcurrentJobs', Number, false),\n new PropertyDescriptor('name', String, false),\n ];\n\n private _apiKey!: string;\n private _endpoint!: string;\n private _maxConcurrentJobs!: number;\n private _name!: string;\n\n constructor() {\n super(Guid, false);\n }\n\n get requestParameters(): string[] {\n return [\n ];\n }\n\n /**\n * The Azure OpenAI API key.\n */\n get apiKey(): string {\n return this._apiKey;\n }\n\n set apiKey(value: string) {\n this._apiKey = value;\n this.propertyChanged('apiKey');\n }\n /**\n * The Azure OpenAI resource endpoint.\n */\n get endpoint(): string {\n return this._endpoint;\n }\n\n set endpoint(value: string) {\n this._endpoint = value;\n this.propertyChanged('endpoint');\n }\n /**\n * How many worker sessions may run on it at once - zero for no limit.\n */\n get maxConcurrentJobs(): number {\n return this._maxConcurrentJobs;\n }\n\n set maxConcurrentJobs(value: number) {\n this._maxConcurrentJobs = value;\n this.propertyChanged('maxConcurrentJobs');\n }\n /**\n * The provider's display name.\n */\n get name(): string {\n return this._name;\n }\n\n set name(value: string) {\n this._name = value;\n this.propertyChanged('name');\n }\n\n static use(initialValues?: IAddAzureOpenAIProvider): [AddAzureOpenAIProvider, SetCommandValues<IAddAzureOpenAIProvider>, ClearCommandValues] {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return useCommand<AddAzureOpenAIProvider, IAddAzureOpenAIProvider>(AddAzureOpenAIProvider, initialValues);\n }\n}\n"],"names":["AddAzureOpenAIProviderValidator","CommandValidator","ruleFor","c","maxConcurrentJobs","greaterThanOrEqual","withMessage","AddAzureOpenAIProvider","Command","route","validation","treatWarningsAsErrors","roles","propertyDescriptors","PropertyDescriptor","String","Number","_apiKey","_endpoint","_maxConcurrentJobs","_name","Guid","requestParameters","apiKey","value","propertyChanged","endpoint","name","use","initialValues","useCommand"],"mappings":";;;;;AAAA;AACA;;AAE8F;AAoCvF,MAAMA,+BAAAA,SAAwCC,gBAAAA,CAAAA;IACjD,WAAA,EAAc;QACV,KAAK,EAAA;AACL,QAAA,IAAI,CAACC,OAAO,CAACC,CAAAA,CAAAA,GAAKA,CAAAA,CAAEC,iBAAiB,CAAA,CAAEC,kBAAkB,CAAC,CAAA,CAAA,CAAGC,WAAW,CAAC,gEAAA,CAAA;AAC7E,IAAA;AACJ;AAEA;;IAGO,MAAMC,sBAAAA,SAA+BC,OAAAA,CAAAA;AAC/BC,IAAAA,KAAAA,GAAgB,uDAAA;AAChBC,IAAAA,UAAAA,GAA+B,IAAIV,+BAAAA,EAAAA;AACnCW,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;IACpBC,mBAAAA,GAA4C;QACjD,IAAIC,kBAAAA,CAAmB,UAAUC,MAAAA,EAAQ,KAAA,CAAA;QACzC,IAAID,kBAAAA,CAAmB,YAAYC,MAAAA,EAAQ,KAAA,CAAA;QAC3C,IAAID,kBAAAA,CAAmB,qBAAqBE,MAAAA,EAAQ,KAAA,CAAA;QACpD,IAAIF,kBAAAA,CAAmB,QAAQC,MAAAA,EAAQ,KAAA;KAC1C;IAEOE,OAAAA;IACAC,SAAAA;IACAC,kBAAAA;IACAC,KAAAA;IAER,WAAA,EAAc;AACV,QAAA,KAAK,CAACC,IAAAA,EAAM,KAAA,CAAA;AAChB,IAAA;AAEA,IAAA,IAAIC,iBAAAA,GAA8B;AAC9B,QAAA,OAAO,EACN;AACL,IAAA;AAEA;;AAEC,QACD,IAAIC,MAAAA,GAAiB;QACjB,OAAO,IAAI,CAACN,OAAO;AACvB,IAAA;IAEA,IAAIM,MAAAA,CAAOC,KAAa,EAAE;QACtB,IAAI,CAACP,OAAO,GAAGO,KAAAA;QACf,IAAI,CAACC,eAAe,CAAC,QAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIC,QAAAA,GAAmB;QACnB,OAAO,IAAI,CAACR,SAAS;AACzB,IAAA;IAEA,IAAIQ,QAAAA,CAASF,KAAa,EAAE;QACxB,IAAI,CAACN,SAAS,GAAGM,KAAAA;QACjB,IAAI,CAACC,eAAe,CAAC,UAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIrB,iBAAAA,GAA4B;QAC5B,OAAO,IAAI,CAACe,kBAAkB;AAClC,IAAA;IAEA,IAAIf,iBAAAA,CAAkBoB,KAAa,EAAE;QACjC,IAAI,CAACL,kBAAkB,GAAGK,KAAAA;QAC1B,IAAI,CAACC,eAAe,CAAC,mBAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIE,IAAAA,GAAe;QACf,OAAO,IAAI,CAACP,KAAK;AACrB,IAAA;IAEA,IAAIO,IAAAA,CAAKH,KAAa,EAAE;QACpB,IAAI,CAACJ,KAAK,GAAGI,KAAAA;QACb,IAAI,CAACC,eAAe,CAAC,MAAA,CAAA;AACzB,IAAA;IAEA,OAAOG,GAAAA,CAAIC,aAAuC,EAA2F;;;AAGzI,QAAA,OAAOC,WAA4DvB,sBAAAA,EAAwBsB,aAAAA,CAAAA;AAC/F,IAAA;AACJ;;;;"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Command, CommandValidator } from '@cratis/arc/commands';
|
|
2
|
+
import { SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';
|
|
3
|
+
import { PropertyDescriptor } from '@cratis/arc/reflection';
|
|
4
|
+
import { Guid } from '@cratis/fundamentals';
|
|
5
|
+
export interface IAddOpenAICompatibleProvider {
|
|
6
|
+
apiKey?: string;
|
|
7
|
+
endpoint?: string;
|
|
8
|
+
maxConcurrentJobs?: number;
|
|
9
|
+
name?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare class AddOpenAICompatibleProviderValidator extends CommandValidator<IAddOpenAICompatibleProvider> {
|
|
12
|
+
constructor();
|
|
13
|
+
}
|
|
14
|
+
export declare class AddOpenAICompatibleProvider extends Command<IAddOpenAICompatibleProvider, Guid> implements IAddOpenAICompatibleProvider {
|
|
15
|
+
readonly route: string;
|
|
16
|
+
readonly validation: CommandValidator;
|
|
17
|
+
readonly treatWarningsAsErrors: boolean;
|
|
18
|
+
readonly roles: string[];
|
|
19
|
+
readonly propertyDescriptors: PropertyDescriptor[];
|
|
20
|
+
private _apiKey;
|
|
21
|
+
private _endpoint;
|
|
22
|
+
private _maxConcurrentJobs;
|
|
23
|
+
private _name;
|
|
24
|
+
constructor();
|
|
25
|
+
get requestParameters(): string[];
|
|
26
|
+
get apiKey(): string;
|
|
27
|
+
set apiKey(value: string);
|
|
28
|
+
get endpoint(): string;
|
|
29
|
+
set endpoint(value: string);
|
|
30
|
+
get maxConcurrentJobs(): number;
|
|
31
|
+
set maxConcurrentJobs(value: number);
|
|
32
|
+
get name(): string;
|
|
33
|
+
set name(value: string);
|
|
34
|
+
static use(initialValues?: IAddOpenAICompatibleProvider): [AddOpenAICompatibleProvider, SetCommandValues<IAddOpenAICompatibleProvider>, ClearCommandValues];
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=AddOpenAICompatibleProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddOpenAICompatibleProvider.d.ts","sourceRoot":"","sources":["../../../../../generated/Providers/Adding/AddOpenAICompatibleProvider.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAc,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAK5C,MAAM,WAAW,4BAA4B;IAKzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAKlB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAK3B,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,oCAAqC,SAAQ,gBAAgB,CAAC,4BAA4B,CAAC;IACpG,cAGC;CACJ;AAKD,qBAAa,2BAA4B,SAAQ,OAAO,CAAC,4BAA4B,EAAE,IAAI,CAAE,YAAW,4BAA4B;IAChI,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAgE;IACtF,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAA8C;IACnF,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAS;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAM;IAC9B,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,CAKhD;IAEF,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,KAAK,CAAU;IAEvB,cAEC;IAED,IAAI,iBAAiB,IAAI,MAAM,EAAE,CAGhC;IAKD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAGvB;IAID,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAGzB;IAID,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,IAAI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAGlC;IAID,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAGrB;IAED,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,4BAA4B,GAAG,CAAC,2BAA2B,EAAE,gBAAgB,CAAC,4BAA4B,CAAC,EAAE,kBAAkB,CAAC,CAI1J;CACJ"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Command, CommandValidator } from '@cratis/arc/commands';
|
|
2
|
+
import { useCommand } from '@cratis/arc.react/commands';
|
|
3
|
+
import { PropertyDescriptor } from '@cratis/arc/reflection';
|
|
4
|
+
import { Guid } from '@cratis/fundamentals';
|
|
5
|
+
|
|
6
|
+
// @generated by Cratis. Source: Cratis.AI.Providers.Adding.AddOpenAICompatibleProvider. Time: 2026-09-15T16:31:09.9367206Z. Hash: D971DCDC59215AA87BDC6CBB0505C8847C16E4748EC20FD0F46AAE473EF20B8C
|
|
7
|
+
/*---------------------------------------------------------------------------------------------
|
|
8
|
+
* **DO NOT EDIT** - This file is an automatically generated file.
|
|
9
|
+
*--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ /* eslint-disable @typescript-eslint/no-empty-interface */ // eslint-disable-next-line header/header
|
|
10
|
+
class AddOpenAICompatibleProviderValidator extends CommandValidator {
|
|
11
|
+
constructor(){
|
|
12
|
+
super();
|
|
13
|
+
this.ruleFor((c)=>c.maxConcurrentJobs).greaterThanOrEqual(0).withMessage('A concurrency limit cannot be negative - use zero for no limit');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Command for adding an OpenAI-compatible AI provider - a self-hosted or third-party endpoint that speaks OpenAI's chat-completions API shape (Ollama, LocalAI, and similar). The API key is optional: many local gateways accept requests unauthenticated. Ported from Direct's `AIProviders.Adding.AddOpenAICompatibleProvider` (plan Section 5.2 step 4).
|
|
18
|
+
*/ class AddOpenAICompatibleProvider extends Command {
|
|
19
|
+
route = '/api/a-i/providers/adding/add-open-a-i-compatible-provider';
|
|
20
|
+
validation = new AddOpenAICompatibleProviderValidator();
|
|
21
|
+
treatWarningsAsErrors = false;
|
|
22
|
+
roles = [];
|
|
23
|
+
propertyDescriptors = [
|
|
24
|
+
new PropertyDescriptor('apiKey', String, false),
|
|
25
|
+
new PropertyDescriptor('endpoint', String, false),
|
|
26
|
+
new PropertyDescriptor('maxConcurrentJobs', Number, false),
|
|
27
|
+
new PropertyDescriptor('name', String, false)
|
|
28
|
+
];
|
|
29
|
+
_apiKey;
|
|
30
|
+
_endpoint;
|
|
31
|
+
_maxConcurrentJobs;
|
|
32
|
+
_name;
|
|
33
|
+
constructor(){
|
|
34
|
+
super(Guid, false);
|
|
35
|
+
}
|
|
36
|
+
get requestParameters() {
|
|
37
|
+
return [];
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The API key, when the endpoint requires one.
|
|
41
|
+
*/ get apiKey() {
|
|
42
|
+
return this._apiKey;
|
|
43
|
+
}
|
|
44
|
+
set apiKey(value) {
|
|
45
|
+
this._apiKey = value;
|
|
46
|
+
this.propertyChanged('apiKey');
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* The endpoint to send chat-completions requests to.
|
|
50
|
+
*/ get endpoint() {
|
|
51
|
+
return this._endpoint;
|
|
52
|
+
}
|
|
53
|
+
set endpoint(value) {
|
|
54
|
+
this._endpoint = value;
|
|
55
|
+
this.propertyChanged('endpoint');
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* How many worker sessions may run on it at once - zero for no limit.
|
|
59
|
+
*/ get maxConcurrentJobs() {
|
|
60
|
+
return this._maxConcurrentJobs;
|
|
61
|
+
}
|
|
62
|
+
set maxConcurrentJobs(value) {
|
|
63
|
+
this._maxConcurrentJobs = value;
|
|
64
|
+
this.propertyChanged('maxConcurrentJobs');
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* The provider's display name.
|
|
68
|
+
*/ get name() {
|
|
69
|
+
return this._name;
|
|
70
|
+
}
|
|
71
|
+
set name(value) {
|
|
72
|
+
this._name = value;
|
|
73
|
+
this.propertyChanged('name');
|
|
74
|
+
}
|
|
75
|
+
static use(initialValues) {
|
|
76
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
77
|
+
// @ts-ignore
|
|
78
|
+
return useCommand(AddOpenAICompatibleProvider, initialValues);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export { AddOpenAICompatibleProvider, AddOpenAICompatibleProviderValidator };
|
|
83
|
+
//# sourceMappingURL=AddOpenAICompatibleProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddOpenAICompatibleProvider.js","sources":["../../../../../generated/Providers/Adding/AddOpenAICompatibleProvider.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Providers.Adding.AddOpenAICompatibleProvider. Time: 2026-09-15T16:31:09.9367206Z. Hash: D971DCDC59215AA87BDC6CBB0505C8847C16E4748EC20FD0F46AAE473EF20B8C\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n/* eslint-disable @typescript-eslint/no-empty-interface */\n// eslint-disable-next-line header/header\nimport { Command, CommandValidator } from '@cratis/arc/commands';\nimport { useCommand, SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';\nimport { PropertyDescriptor } from '@cratis/arc/reflection';\nimport { Guid } from '@cratis/fundamentals';\n\n/**\n * Command for adding an OpenAI-compatible AI provider - a self-hosted or third-party endpoint that speaks OpenAI's chat-completions API shape (Ollama, LocalAI, and similar). The API key is optional: many local gateways accept requests unauthenticated. Ported from Direct's `AIProviders.Adding.AddOpenAICompatibleProvider` (plan Section 5.2 step 4).\n */\nexport interface IAddOpenAICompatibleProvider {\n \n /**\n * The API key, when the endpoint requires one.\n */\n apiKey?: string;\n \n /**\n * The endpoint to send chat-completions requests to.\n */\n endpoint?: string;\n \n /**\n * How many worker sessions may run on it at once - zero for no limit.\n */\n maxConcurrentJobs?: number;\n \n /**\n * The provider's display name.\n */\n name?: string;\n}\n\nexport class AddOpenAICompatibleProviderValidator extends CommandValidator<IAddOpenAICompatibleProvider> {\n constructor() {\n super();\n this.ruleFor(c => c.maxConcurrentJobs).greaterThanOrEqual(0).withMessage('A concurrency limit cannot be negative - use zero for no limit');\n }\n}\n\n/**\n * Command for adding an OpenAI-compatible AI provider - a self-hosted or third-party endpoint that speaks OpenAI's chat-completions API shape (Ollama, LocalAI, and similar). The API key is optional: many local gateways accept requests unauthenticated. Ported from Direct's `AIProviders.Adding.AddOpenAICompatibleProvider` (plan Section 5.2 step 4).\n */\nexport class AddOpenAICompatibleProvider extends Command<IAddOpenAICompatibleProvider, Guid> implements IAddOpenAICompatibleProvider {\n readonly route: string = '/api/a-i/providers/adding/add-open-a-i-compatible-provider';\n readonly validation: CommandValidator = new AddOpenAICompatibleProviderValidator();\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly propertyDescriptors: PropertyDescriptor[] = [\n new PropertyDescriptor('apiKey', String, false),\n new PropertyDescriptor('endpoint', String, false),\n new PropertyDescriptor('maxConcurrentJobs', Number, false),\n new PropertyDescriptor('name', String, false),\n ];\n\n private _apiKey!: string;\n private _endpoint!: string;\n private _maxConcurrentJobs!: number;\n private _name!: string;\n\n constructor() {\n super(Guid, false);\n }\n\n get requestParameters(): string[] {\n return [\n ];\n }\n\n /**\n * The API key, when the endpoint requires one.\n */\n get apiKey(): string {\n return this._apiKey;\n }\n\n set apiKey(value: string) {\n this._apiKey = value;\n this.propertyChanged('apiKey');\n }\n /**\n * The endpoint to send chat-completions requests to.\n */\n get endpoint(): string {\n return this._endpoint;\n }\n\n set endpoint(value: string) {\n this._endpoint = value;\n this.propertyChanged('endpoint');\n }\n /**\n * How many worker sessions may run on it at once - zero for no limit.\n */\n get maxConcurrentJobs(): number {\n return this._maxConcurrentJobs;\n }\n\n set maxConcurrentJobs(value: number) {\n this._maxConcurrentJobs = value;\n this.propertyChanged('maxConcurrentJobs');\n }\n /**\n * The provider's display name.\n */\n get name(): string {\n return this._name;\n }\n\n set name(value: string) {\n this._name = value;\n this.propertyChanged('name');\n }\n\n static use(initialValues?: IAddOpenAICompatibleProvider): [AddOpenAICompatibleProvider, SetCommandValues<IAddOpenAICompatibleProvider>, ClearCommandValues] {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return useCommand<AddOpenAICompatibleProvider, IAddOpenAICompatibleProvider>(AddOpenAICompatibleProvider, initialValues);\n }\n}\n"],"names":["AddOpenAICompatibleProviderValidator","CommandValidator","ruleFor","c","maxConcurrentJobs","greaterThanOrEqual","withMessage","AddOpenAICompatibleProvider","Command","route","validation","treatWarningsAsErrors","roles","propertyDescriptors","PropertyDescriptor","String","Number","_apiKey","_endpoint","_maxConcurrentJobs","_name","Guid","requestParameters","apiKey","value","propertyChanged","endpoint","name","use","initialValues","useCommand"],"mappings":";;;;;AAAA;AACA;;AAE8F;AAoCvF,MAAMA,oCAAAA,SAA6CC,gBAAAA,CAAAA;IACtD,WAAA,EAAc;QACV,KAAK,EAAA;AACL,QAAA,IAAI,CAACC,OAAO,CAACC,CAAAA,CAAAA,GAAKA,CAAAA,CAAEC,iBAAiB,CAAA,CAAEC,kBAAkB,CAAC,CAAA,CAAA,CAAGC,WAAW,CAAC,gEAAA,CAAA;AAC7E,IAAA;AACJ;AAEA;;IAGO,MAAMC,2BAAAA,SAAoCC,OAAAA,CAAAA;AACpCC,IAAAA,KAAAA,GAAgB,4DAAA;AAChBC,IAAAA,UAAAA,GAA+B,IAAIV,oCAAAA,EAAAA;AACnCW,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;IACpBC,mBAAAA,GAA4C;QACjD,IAAIC,kBAAAA,CAAmB,UAAUC,MAAAA,EAAQ,KAAA,CAAA;QACzC,IAAID,kBAAAA,CAAmB,YAAYC,MAAAA,EAAQ,KAAA,CAAA;QAC3C,IAAID,kBAAAA,CAAmB,qBAAqBE,MAAAA,EAAQ,KAAA,CAAA;QACpD,IAAIF,kBAAAA,CAAmB,QAAQC,MAAAA,EAAQ,KAAA;KAC1C;IAEOE,OAAAA;IACAC,SAAAA;IACAC,kBAAAA;IACAC,KAAAA;IAER,WAAA,EAAc;AACV,QAAA,KAAK,CAACC,IAAAA,EAAM,KAAA,CAAA;AAChB,IAAA;AAEA,IAAA,IAAIC,iBAAAA,GAA8B;AAC9B,QAAA,OAAO,EACN;AACL,IAAA;AAEA;;AAEC,QACD,IAAIC,MAAAA,GAAiB;QACjB,OAAO,IAAI,CAACN,OAAO;AACvB,IAAA;IAEA,IAAIM,MAAAA,CAAOC,KAAa,EAAE;QACtB,IAAI,CAACP,OAAO,GAAGO,KAAAA;QACf,IAAI,CAACC,eAAe,CAAC,QAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIC,QAAAA,GAAmB;QACnB,OAAO,IAAI,CAACR,SAAS;AACzB,IAAA;IAEA,IAAIQ,QAAAA,CAASF,KAAa,EAAE;QACxB,IAAI,CAACN,SAAS,GAAGM,KAAAA;QACjB,IAAI,CAACC,eAAe,CAAC,UAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIrB,iBAAAA,GAA4B;QAC5B,OAAO,IAAI,CAACe,kBAAkB;AAClC,IAAA;IAEA,IAAIf,iBAAAA,CAAkBoB,KAAa,EAAE;QACjC,IAAI,CAACL,kBAAkB,GAAGK,KAAAA;QAC1B,IAAI,CAACC,eAAe,CAAC,mBAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIE,IAAAA,GAAe;QACf,OAAO,IAAI,CAACP,KAAK;AACrB,IAAA;IAEA,IAAIO,IAAAA,CAAKH,KAAa,EAAE;QACpB,IAAI,CAACJ,KAAK,GAAGI,KAAAA;QACb,IAAI,CAACC,eAAe,CAAC,MAAA,CAAA;AACzB,IAAA;IAEA,OAAOG,GAAAA,CAAIC,aAA4C,EAAqG;;;AAGxJ,QAAA,OAAOC,WAAsEvB,2BAAAA,EAA6BsB,aAAAA,CAAAA;AAC9G,IAAA;AACJ;;;;"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Command, CommandValidator } from '@cratis/arc/commands';
|
|
2
|
+
import { SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';
|
|
3
|
+
import { PropertyDescriptor } from '@cratis/arc/reflection';
|
|
4
|
+
import { Guid } from '@cratis/fundamentals';
|
|
5
|
+
export interface IAddOpenAIProvider {
|
|
6
|
+
apiKey?: string;
|
|
7
|
+
maxConcurrentJobs?: number;
|
|
8
|
+
name?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare class AddOpenAIProviderValidator extends CommandValidator<IAddOpenAIProvider> {
|
|
11
|
+
constructor();
|
|
12
|
+
}
|
|
13
|
+
export declare class AddOpenAIProvider extends Command<IAddOpenAIProvider, Guid> implements IAddOpenAIProvider {
|
|
14
|
+
readonly route: string;
|
|
15
|
+
readonly validation: CommandValidator;
|
|
16
|
+
readonly treatWarningsAsErrors: boolean;
|
|
17
|
+
readonly roles: string[];
|
|
18
|
+
readonly propertyDescriptors: PropertyDescriptor[];
|
|
19
|
+
private _apiKey;
|
|
20
|
+
private _maxConcurrentJobs;
|
|
21
|
+
private _name;
|
|
22
|
+
constructor();
|
|
23
|
+
get requestParameters(): string[];
|
|
24
|
+
get apiKey(): string;
|
|
25
|
+
set apiKey(value: string);
|
|
26
|
+
get maxConcurrentJobs(): number;
|
|
27
|
+
set maxConcurrentJobs(value: number);
|
|
28
|
+
get name(): string;
|
|
29
|
+
set name(value: string);
|
|
30
|
+
static use(initialValues?: IAddOpenAIProvider): [AddOpenAIProvider, SetCommandValues<IAddOpenAIProvider>, ClearCommandValues];
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=AddOpenAIProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddOpenAIProvider.d.ts","sourceRoot":"","sources":["../../../../../generated/Providers/Adding/AddOpenAIProvider.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAc,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAK5C,MAAM,WAAW,kBAAkB;IAK/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAK3B,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,0BAA2B,SAAQ,gBAAgB,CAAC,kBAAkB,CAAC;IAChF,cAGC;CACJ;AAKD,qBAAa,iBAAkB,SAAQ,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAE,YAAW,kBAAkB;IAClG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAqD;IAC3E,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAoC;IACzE,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAS;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAM;IAC9B,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,CAIhD;IAEF,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,KAAK,CAAU;IAEvB,cAEC;IAED,IAAI,iBAAiB,IAAI,MAAM,EAAE,CAGhC;IAKD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAGvB;IAID,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,IAAI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAGlC;IAID,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAGrB;IAED,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,kBAAkB,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,CAI5H;CACJ"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Command, CommandValidator } from '@cratis/arc/commands';
|
|
2
|
+
import { useCommand } from '@cratis/arc.react/commands';
|
|
3
|
+
import { PropertyDescriptor } from '@cratis/arc/reflection';
|
|
4
|
+
import { Guid } from '@cratis/fundamentals';
|
|
5
|
+
|
|
6
|
+
// @generated by Cratis. Source: Cratis.AI.Providers.Adding.AddOpenAIProvider. Time: 2026-09-15T16:31:09.9367206Z. Hash: 5B29A32955557EC709EC2FDFA77F01DDAA837E0D151A0FC999C712904AC771BF
|
|
7
|
+
/*---------------------------------------------------------------------------------------------
|
|
8
|
+
* **DO NOT EDIT** - This file is an automatically generated file.
|
|
9
|
+
*--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ /* eslint-disable @typescript-eslint/no-empty-interface */ // eslint-disable-next-line header/header
|
|
10
|
+
class AddOpenAIProviderValidator extends CommandValidator {
|
|
11
|
+
constructor(){
|
|
12
|
+
super();
|
|
13
|
+
this.ruleFor((c)=>c.maxConcurrentJobs).greaterThanOrEqual(0).withMessage('A concurrency limit cannot be negative - use zero for no limit');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Command for adding an OpenAI AI provider - a named API key against OpenAI's public API. Ported from Direct's `AIProviders.Adding.AddOpenAIProvider` (plan Section 5.2 step 4) - deliberately without Direct's own subscription-credential-kind classification event (`OpenAICredentialKind.EventFor`), which belongs to the not-yet-ported Codex/harness credential subsystem (plan Section 5.6). A ChatGPT subscription pasted here is still accepted - see {@link OpenAICredential} - it is simply not yet separately recorded as its own fact the way Direct's donor does.
|
|
18
|
+
*/ class AddOpenAIProvider extends Command {
|
|
19
|
+
route = '/api/a-i/providers/adding/add-open-a-i-provider';
|
|
20
|
+
validation = new AddOpenAIProviderValidator();
|
|
21
|
+
treatWarningsAsErrors = false;
|
|
22
|
+
roles = [];
|
|
23
|
+
propertyDescriptors = [
|
|
24
|
+
new PropertyDescriptor('apiKey', String, false),
|
|
25
|
+
new PropertyDescriptor('maxConcurrentJobs', Number, false),
|
|
26
|
+
new PropertyDescriptor('name', String, false)
|
|
27
|
+
];
|
|
28
|
+
_apiKey;
|
|
29
|
+
_maxConcurrentJobs;
|
|
30
|
+
_name;
|
|
31
|
+
constructor(){
|
|
32
|
+
super(Guid, false);
|
|
33
|
+
}
|
|
34
|
+
get requestParameters() {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The OpenAI API key.
|
|
39
|
+
*/ get apiKey() {
|
|
40
|
+
return this._apiKey;
|
|
41
|
+
}
|
|
42
|
+
set apiKey(value) {
|
|
43
|
+
this._apiKey = value;
|
|
44
|
+
this.propertyChanged('apiKey');
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* How many worker sessions may run on it at once - zero for no limit.
|
|
48
|
+
*/ get maxConcurrentJobs() {
|
|
49
|
+
return this._maxConcurrentJobs;
|
|
50
|
+
}
|
|
51
|
+
set maxConcurrentJobs(value) {
|
|
52
|
+
this._maxConcurrentJobs = value;
|
|
53
|
+
this.propertyChanged('maxConcurrentJobs');
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* The provider's display name.
|
|
57
|
+
*/ get name() {
|
|
58
|
+
return this._name;
|
|
59
|
+
}
|
|
60
|
+
set name(value) {
|
|
61
|
+
this._name = value;
|
|
62
|
+
this.propertyChanged('name');
|
|
63
|
+
}
|
|
64
|
+
static use(initialValues) {
|
|
65
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
66
|
+
// @ts-ignore
|
|
67
|
+
return useCommand(AddOpenAIProvider, initialValues);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export { AddOpenAIProvider, AddOpenAIProviderValidator };
|
|
72
|
+
//# sourceMappingURL=AddOpenAIProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddOpenAIProvider.js","sources":["../../../../../generated/Providers/Adding/AddOpenAIProvider.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Providers.Adding.AddOpenAIProvider. Time: 2026-09-15T16:31:09.9367206Z. Hash: 5B29A32955557EC709EC2FDFA77F01DDAA837E0D151A0FC999C712904AC771BF\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n/* eslint-disable @typescript-eslint/no-empty-interface */\n// eslint-disable-next-line header/header\nimport { Command, CommandValidator } from '@cratis/arc/commands';\nimport { useCommand, SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';\nimport { PropertyDescriptor } from '@cratis/arc/reflection';\nimport { Guid } from '@cratis/fundamentals';\n\n/**\n * Command for adding an OpenAI AI provider - a named API key against OpenAI's public API. Ported from Direct's `AIProviders.Adding.AddOpenAIProvider` (plan Section 5.2 step 4) - deliberately without Direct's own subscription-credential-kind classification event (`OpenAICredentialKind.EventFor`), which belongs to the not-yet-ported Codex/harness credential subsystem (plan Section 5.6). A ChatGPT subscription pasted here is still accepted - see {@link OpenAICredential} - it is simply not yet separately recorded as its own fact the way Direct's donor does.\n */\nexport interface IAddOpenAIProvider {\n \n /**\n * The OpenAI API key.\n */\n apiKey?: string;\n \n /**\n * How many worker sessions may run on it at once - zero for no limit.\n */\n maxConcurrentJobs?: number;\n \n /**\n * The provider's display name.\n */\n name?: string;\n}\n\nexport class AddOpenAIProviderValidator extends CommandValidator<IAddOpenAIProvider> {\n constructor() {\n super();\n this.ruleFor(c => c.maxConcurrentJobs).greaterThanOrEqual(0).withMessage('A concurrency limit cannot be negative - use zero for no limit');\n }\n}\n\n/**\n * Command for adding an OpenAI AI provider - a named API key against OpenAI's public API. Ported from Direct's `AIProviders.Adding.AddOpenAIProvider` (plan Section 5.2 step 4) - deliberately without Direct's own subscription-credential-kind classification event (`OpenAICredentialKind.EventFor`), which belongs to the not-yet-ported Codex/harness credential subsystem (plan Section 5.6). A ChatGPT subscription pasted here is still accepted - see {@link OpenAICredential} - it is simply not yet separately recorded as its own fact the way Direct's donor does.\n */\nexport class AddOpenAIProvider extends Command<IAddOpenAIProvider, Guid> implements IAddOpenAIProvider {\n readonly route: string = '/api/a-i/providers/adding/add-open-a-i-provider';\n readonly validation: CommandValidator = new AddOpenAIProviderValidator();\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly propertyDescriptors: PropertyDescriptor[] = [\n new PropertyDescriptor('apiKey', String, false),\n new PropertyDescriptor('maxConcurrentJobs', Number, false),\n new PropertyDescriptor('name', String, false),\n ];\n\n private _apiKey!: string;\n private _maxConcurrentJobs!: number;\n private _name!: string;\n\n constructor() {\n super(Guid, false);\n }\n\n get requestParameters(): string[] {\n return [\n ];\n }\n\n /**\n * The OpenAI API key.\n */\n get apiKey(): string {\n return this._apiKey;\n }\n\n set apiKey(value: string) {\n this._apiKey = value;\n this.propertyChanged('apiKey');\n }\n /**\n * How many worker sessions may run on it at once - zero for no limit.\n */\n get maxConcurrentJobs(): number {\n return this._maxConcurrentJobs;\n }\n\n set maxConcurrentJobs(value: number) {\n this._maxConcurrentJobs = value;\n this.propertyChanged('maxConcurrentJobs');\n }\n /**\n * The provider's display name.\n */\n get name(): string {\n return this._name;\n }\n\n set name(value: string) {\n this._name = value;\n this.propertyChanged('name');\n }\n\n static use(initialValues?: IAddOpenAIProvider): [AddOpenAIProvider, SetCommandValues<IAddOpenAIProvider>, ClearCommandValues] {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return useCommand<AddOpenAIProvider, IAddOpenAIProvider>(AddOpenAIProvider, initialValues);\n }\n}\n"],"names":["AddOpenAIProviderValidator","CommandValidator","ruleFor","c","maxConcurrentJobs","greaterThanOrEqual","withMessage","AddOpenAIProvider","Command","route","validation","treatWarningsAsErrors","roles","propertyDescriptors","PropertyDescriptor","String","Number","_apiKey","_maxConcurrentJobs","_name","Guid","requestParameters","apiKey","value","propertyChanged","name","use","initialValues","useCommand"],"mappings":";;;;;AAAA;AACA;;AAE8F;AA+BvF,MAAMA,0BAAAA,SAAmCC,gBAAAA,CAAAA;IAC5C,WAAA,EAAc;QACV,KAAK,EAAA;AACL,QAAA,IAAI,CAACC,OAAO,CAACC,CAAAA,CAAAA,GAAKA,CAAAA,CAAEC,iBAAiB,CAAA,CAAEC,kBAAkB,CAAC,CAAA,CAAA,CAAGC,WAAW,CAAC,gEAAA,CAAA;AAC7E,IAAA;AACJ;AAEA;;IAGO,MAAMC,iBAAAA,SAA0BC,OAAAA,CAAAA;AAC1BC,IAAAA,KAAAA,GAAgB,iDAAA;AAChBC,IAAAA,UAAAA,GAA+B,IAAIV,0BAAAA,EAAAA;AACnCW,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;IACpBC,mBAAAA,GAA4C;QACjD,IAAIC,kBAAAA,CAAmB,UAAUC,MAAAA,EAAQ,KAAA,CAAA;QACzC,IAAID,kBAAAA,CAAmB,qBAAqBE,MAAAA,EAAQ,KAAA,CAAA;QACpD,IAAIF,kBAAAA,CAAmB,QAAQC,MAAAA,EAAQ,KAAA;KAC1C;IAEOE,OAAAA;IACAC,kBAAAA;IACAC,KAAAA;IAER,WAAA,EAAc;AACV,QAAA,KAAK,CAACC,IAAAA,EAAM,KAAA,CAAA;AAChB,IAAA;AAEA,IAAA,IAAIC,iBAAAA,GAA8B;AAC9B,QAAA,OAAO,EACN;AACL,IAAA;AAEA;;AAEC,QACD,IAAIC,MAAAA,GAAiB;QACjB,OAAO,IAAI,CAACL,OAAO;AACvB,IAAA;IAEA,IAAIK,MAAAA,CAAOC,KAAa,EAAE;QACtB,IAAI,CAACN,OAAO,GAAGM,KAAAA;QACf,IAAI,CAACC,eAAe,CAAC,QAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIpB,iBAAAA,GAA4B;QAC5B,OAAO,IAAI,CAACc,kBAAkB;AAClC,IAAA;IAEA,IAAId,iBAAAA,CAAkBmB,KAAa,EAAE;QACjC,IAAI,CAACL,kBAAkB,GAAGK,KAAAA;QAC1B,IAAI,CAACC,eAAe,CAAC,mBAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIC,IAAAA,GAAe;QACf,OAAO,IAAI,CAACN,KAAK;AACrB,IAAA;IAEA,IAAIM,IAAAA,CAAKF,KAAa,EAAE;QACpB,IAAI,CAACJ,KAAK,GAAGI,KAAAA;QACb,IAAI,CAACC,eAAe,CAAC,MAAA,CAAA;AACzB,IAAA;IAEA,OAAOE,GAAAA,CAAIC,aAAkC,EAAiF;;;AAG1H,QAAA,OAAOC,WAAkDrB,iBAAAA,EAAmBoB,aAAAA,CAAAA;AAChF,IAAA;AACJ;;;;"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Command, CommandValidator } from '@cratis/arc/commands';
|
|
2
|
+
import { SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';
|
|
3
|
+
import { PropertyDescriptor } from '@cratis/arc/reflection';
|
|
4
|
+
import { Guid } from '@cratis/fundamentals';
|
|
5
|
+
export interface IAddZAIProvider {
|
|
6
|
+
apiKey?: string;
|
|
7
|
+
endpoint?: string;
|
|
8
|
+
maxConcurrentJobs?: number;
|
|
9
|
+
name?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare class AddZAIProviderValidator extends CommandValidator<IAddZAIProvider> {
|
|
12
|
+
constructor();
|
|
13
|
+
}
|
|
14
|
+
export declare class AddZAIProvider extends Command<IAddZAIProvider, Guid> implements IAddZAIProvider {
|
|
15
|
+
readonly route: string;
|
|
16
|
+
readonly validation: CommandValidator;
|
|
17
|
+
readonly treatWarningsAsErrors: boolean;
|
|
18
|
+
readonly roles: string[];
|
|
19
|
+
readonly propertyDescriptors: PropertyDescriptor[];
|
|
20
|
+
private _apiKey;
|
|
21
|
+
private _endpoint;
|
|
22
|
+
private _maxConcurrentJobs;
|
|
23
|
+
private _name;
|
|
24
|
+
constructor();
|
|
25
|
+
get requestParameters(): string[];
|
|
26
|
+
get apiKey(): string;
|
|
27
|
+
set apiKey(value: string);
|
|
28
|
+
get endpoint(): string;
|
|
29
|
+
set endpoint(value: string);
|
|
30
|
+
get maxConcurrentJobs(): number;
|
|
31
|
+
set maxConcurrentJobs(value: number);
|
|
32
|
+
get name(): string;
|
|
33
|
+
set name(value: string);
|
|
34
|
+
static use(initialValues?: IAddZAIProvider): [AddZAIProvider, SetCommandValues<IAddZAIProvider>, ClearCommandValues];
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=AddZAIProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddZAIProvider.d.ts","sourceRoot":"","sources":["../../../../../generated/Providers/Adding/AddZAIProvider.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAc,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAK5C,MAAM,WAAW,eAAe;IAK5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAKlB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAK3B,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,uBAAwB,SAAQ,gBAAgB,CAAC,eAAe,CAAC;IAC1E,cAGC;CACJ;AAKD,qBAAa,cAAe,SAAQ,OAAO,CAAC,eAAe,EAAE,IAAI,CAAE,YAAW,eAAe;IACzF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAkD;IACxE,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAiC;IACtE,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAS;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAM;IAC9B,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,CAKhD;IAEF,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,kBAAkB,CAAU;IACpC,OAAO,CAAC,KAAK,CAAU;IAEvB,cAEC;IAED,IAAI,iBAAiB,IAAI,MAAM,EAAE,CAGhC;IAKD,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAGvB;IAID,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAGzB;IAID,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAED,IAAI,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAGlC;IAID,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAGrB;IAED,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,eAAe,GAAG,CAAC,cAAc,EAAE,gBAAgB,CAAC,eAAe,CAAC,EAAE,kBAAkB,CAAC,CAInH;CACJ"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { Command, CommandValidator } from '@cratis/arc/commands';
|
|
2
|
+
import { useCommand } from '@cratis/arc.react/commands';
|
|
3
|
+
import { PropertyDescriptor } from '@cratis/arc/reflection';
|
|
4
|
+
import { Guid } from '@cratis/fundamentals';
|
|
5
|
+
|
|
6
|
+
// @generated by Cratis. Source: Cratis.AI.Providers.Adding.AddZAIProvider. Time: 2026-09-15T16:31:09.9367206Z. Hash: 06FBD795E3651AF33623DBF53D1EA56073428F79FABA05A651CB734CF2C90E8D
|
|
7
|
+
/*---------------------------------------------------------------------------------------------
|
|
8
|
+
* **DO NOT EDIT** - This file is an automatically generated file.
|
|
9
|
+
*--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ /* eslint-disable @typescript-eslint/no-empty-interface */ // eslint-disable-next-line header/header
|
|
10
|
+
class AddZAIProviderValidator extends CommandValidator {
|
|
11
|
+
constructor(){
|
|
12
|
+
super();
|
|
13
|
+
this.ruleFor((c)=>c.maxConcurrentJobs).greaterThanOrEqual(0).withMessage('A concurrency limit cannot be negative - use zero for no limit');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Command for adding a Z.ai AI provider - a GLM account reached through Z.ai's Anthropic-compatible API at a configurable endpoint. Ported from Direct's `AIProviders.Adding.AddZAIProvider` (plan Section 5.2 step 4).
|
|
18
|
+
*/ class AddZAIProvider extends Command {
|
|
19
|
+
route = '/api/a-i/providers/adding/add-z-a-i-provider';
|
|
20
|
+
validation = new AddZAIProviderValidator();
|
|
21
|
+
treatWarningsAsErrors = false;
|
|
22
|
+
roles = [];
|
|
23
|
+
propertyDescriptors = [
|
|
24
|
+
new PropertyDescriptor('apiKey', String, false),
|
|
25
|
+
new PropertyDescriptor('endpoint', String, false),
|
|
26
|
+
new PropertyDescriptor('maxConcurrentJobs', Number, false),
|
|
27
|
+
new PropertyDescriptor('name', String, false)
|
|
28
|
+
];
|
|
29
|
+
_apiKey;
|
|
30
|
+
_endpoint;
|
|
31
|
+
_maxConcurrentJobs;
|
|
32
|
+
_name;
|
|
33
|
+
constructor(){
|
|
34
|
+
super(Guid, false);
|
|
35
|
+
}
|
|
36
|
+
get requestParameters() {
|
|
37
|
+
return [];
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The Z.ai API key.
|
|
41
|
+
*/ get apiKey() {
|
|
42
|
+
return this._apiKey;
|
|
43
|
+
}
|
|
44
|
+
set apiKey(value) {
|
|
45
|
+
this._apiKey = value;
|
|
46
|
+
this.propertyChanged('apiKey');
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* The Z.ai endpoint - the base URL the Anthropic-compatible API sits under.
|
|
50
|
+
*/ get endpoint() {
|
|
51
|
+
return this._endpoint;
|
|
52
|
+
}
|
|
53
|
+
set endpoint(value) {
|
|
54
|
+
this._endpoint = value;
|
|
55
|
+
this.propertyChanged('endpoint');
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* How many worker sessions may run on it at once - zero for no limit.
|
|
59
|
+
*/ get maxConcurrentJobs() {
|
|
60
|
+
return this._maxConcurrentJobs;
|
|
61
|
+
}
|
|
62
|
+
set maxConcurrentJobs(value) {
|
|
63
|
+
this._maxConcurrentJobs = value;
|
|
64
|
+
this.propertyChanged('maxConcurrentJobs');
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* The provider's display name.
|
|
68
|
+
*/ get name() {
|
|
69
|
+
return this._name;
|
|
70
|
+
}
|
|
71
|
+
set name(value) {
|
|
72
|
+
this._name = value;
|
|
73
|
+
this.propertyChanged('name');
|
|
74
|
+
}
|
|
75
|
+
static use(initialValues) {
|
|
76
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
77
|
+
// @ts-ignore
|
|
78
|
+
return useCommand(AddZAIProvider, initialValues);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export { AddZAIProvider, AddZAIProviderValidator };
|
|
83
|
+
//# sourceMappingURL=AddZAIProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddZAIProvider.js","sources":["../../../../../generated/Providers/Adding/AddZAIProvider.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Providers.Adding.AddZAIProvider. Time: 2026-09-15T16:31:09.9367206Z. Hash: 06FBD795E3651AF33623DBF53D1EA56073428F79FABA05A651CB734CF2C90E8D\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n/* eslint-disable @typescript-eslint/no-empty-interface */\n// eslint-disable-next-line header/header\nimport { Command, CommandValidator } from '@cratis/arc/commands';\nimport { useCommand, SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';\nimport { PropertyDescriptor } from '@cratis/arc/reflection';\nimport { Guid } from '@cratis/fundamentals';\n\n/**\n * Command for adding a Z.ai AI provider - a GLM account reached through Z.ai's Anthropic-compatible API at a configurable endpoint. Ported from Direct's `AIProviders.Adding.AddZAIProvider` (plan Section 5.2 step 4).\n */\nexport interface IAddZAIProvider {\n \n /**\n * The Z.ai API key.\n */\n apiKey?: string;\n \n /**\n * The Z.ai endpoint - the base URL the Anthropic-compatible API sits under.\n */\n endpoint?: string;\n \n /**\n * How many worker sessions may run on it at once - zero for no limit.\n */\n maxConcurrentJobs?: number;\n \n /**\n * The provider's display name.\n */\n name?: string;\n}\n\nexport class AddZAIProviderValidator extends CommandValidator<IAddZAIProvider> {\n constructor() {\n super();\n this.ruleFor(c => c.maxConcurrentJobs).greaterThanOrEqual(0).withMessage('A concurrency limit cannot be negative - use zero for no limit');\n }\n}\n\n/**\n * Command for adding a Z.ai AI provider - a GLM account reached through Z.ai's Anthropic-compatible API at a configurable endpoint. Ported from Direct's `AIProviders.Adding.AddZAIProvider` (plan Section 5.2 step 4).\n */\nexport class AddZAIProvider extends Command<IAddZAIProvider, Guid> implements IAddZAIProvider {\n readonly route: string = '/api/a-i/providers/adding/add-z-a-i-provider';\n readonly validation: CommandValidator = new AddZAIProviderValidator();\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly propertyDescriptors: PropertyDescriptor[] = [\n new PropertyDescriptor('apiKey', String, false),\n new PropertyDescriptor('endpoint', String, false),\n new PropertyDescriptor('maxConcurrentJobs', Number, false),\n new PropertyDescriptor('name', String, false),\n ];\n\n private _apiKey!: string;\n private _endpoint!: string;\n private _maxConcurrentJobs!: number;\n private _name!: string;\n\n constructor() {\n super(Guid, false);\n }\n\n get requestParameters(): string[] {\n return [\n ];\n }\n\n /**\n * The Z.ai API key.\n */\n get apiKey(): string {\n return this._apiKey;\n }\n\n set apiKey(value: string) {\n this._apiKey = value;\n this.propertyChanged('apiKey');\n }\n /**\n * The Z.ai endpoint - the base URL the Anthropic-compatible API sits under.\n */\n get endpoint(): string {\n return this._endpoint;\n }\n\n set endpoint(value: string) {\n this._endpoint = value;\n this.propertyChanged('endpoint');\n }\n /**\n * How many worker sessions may run on it at once - zero for no limit.\n */\n get maxConcurrentJobs(): number {\n return this._maxConcurrentJobs;\n }\n\n set maxConcurrentJobs(value: number) {\n this._maxConcurrentJobs = value;\n this.propertyChanged('maxConcurrentJobs');\n }\n /**\n * The provider's display name.\n */\n get name(): string {\n return this._name;\n }\n\n set name(value: string) {\n this._name = value;\n this.propertyChanged('name');\n }\n\n static use(initialValues?: IAddZAIProvider): [AddZAIProvider, SetCommandValues<IAddZAIProvider>, ClearCommandValues] {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return useCommand<AddZAIProvider, IAddZAIProvider>(AddZAIProvider, initialValues);\n }\n}\n"],"names":["AddZAIProviderValidator","CommandValidator","ruleFor","c","maxConcurrentJobs","greaterThanOrEqual","withMessage","AddZAIProvider","Command","route","validation","treatWarningsAsErrors","roles","propertyDescriptors","PropertyDescriptor","String","Number","_apiKey","_endpoint","_maxConcurrentJobs","_name","Guid","requestParameters","apiKey","value","propertyChanged","endpoint","name","use","initialValues","useCommand"],"mappings":";;;;;AAAA;AACA;;AAE8F;AAoCvF,MAAMA,uBAAAA,SAAgCC,gBAAAA,CAAAA;IACzC,WAAA,EAAc;QACV,KAAK,EAAA;AACL,QAAA,IAAI,CAACC,OAAO,CAACC,CAAAA,CAAAA,GAAKA,CAAAA,CAAEC,iBAAiB,CAAA,CAAEC,kBAAkB,CAAC,CAAA,CAAA,CAAGC,WAAW,CAAC,gEAAA,CAAA;AAC7E,IAAA;AACJ;AAEA;;IAGO,MAAMC,cAAAA,SAAuBC,OAAAA,CAAAA;AACvBC,IAAAA,KAAAA,GAAgB,8CAAA;AAChBC,IAAAA,UAAAA,GAA+B,IAAIV,uBAAAA,EAAAA;AACnCW,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;IACpBC,mBAAAA,GAA4C;QACjD,IAAIC,kBAAAA,CAAmB,UAAUC,MAAAA,EAAQ,KAAA,CAAA;QACzC,IAAID,kBAAAA,CAAmB,YAAYC,MAAAA,EAAQ,KAAA,CAAA;QAC3C,IAAID,kBAAAA,CAAmB,qBAAqBE,MAAAA,EAAQ,KAAA,CAAA;QACpD,IAAIF,kBAAAA,CAAmB,QAAQC,MAAAA,EAAQ,KAAA;KAC1C;IAEOE,OAAAA;IACAC,SAAAA;IACAC,kBAAAA;IACAC,KAAAA;IAER,WAAA,EAAc;AACV,QAAA,KAAK,CAACC,IAAAA,EAAM,KAAA,CAAA;AAChB,IAAA;AAEA,IAAA,IAAIC,iBAAAA,GAA8B;AAC9B,QAAA,OAAO,EACN;AACL,IAAA;AAEA;;AAEC,QACD,IAAIC,MAAAA,GAAiB;QACjB,OAAO,IAAI,CAACN,OAAO;AACvB,IAAA;IAEA,IAAIM,MAAAA,CAAOC,KAAa,EAAE;QACtB,IAAI,CAACP,OAAO,GAAGO,KAAAA;QACf,IAAI,CAACC,eAAe,CAAC,QAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIC,QAAAA,GAAmB;QACnB,OAAO,IAAI,CAACR,SAAS;AACzB,IAAA;IAEA,IAAIQ,QAAAA,CAASF,KAAa,EAAE;QACxB,IAAI,CAACN,SAAS,GAAGM,KAAAA;QACjB,IAAI,CAACC,eAAe,CAAC,UAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIrB,iBAAAA,GAA4B;QAC5B,OAAO,IAAI,CAACe,kBAAkB;AAClC,IAAA;IAEA,IAAIf,iBAAAA,CAAkBoB,KAAa,EAAE;QACjC,IAAI,CAACL,kBAAkB,GAAGK,KAAAA;QAC1B,IAAI,CAACC,eAAe,CAAC,mBAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIE,IAAAA,GAAe;QACf,OAAO,IAAI,CAACP,KAAK;AACrB,IAAA;IAEA,IAAIO,IAAAA,CAAKH,KAAa,EAAE;QACpB,IAAI,CAACJ,KAAK,GAAGI,KAAAA;QACb,IAAI,CAACC,eAAe,CAAC,MAAA,CAAA;AACzB,IAAA;IAEA,OAAOG,GAAAA,CAAIC,aAA+B,EAA2E;;;AAGjH,QAAA,OAAOC,WAA4CvB,cAAAA,EAAgBsB,aAAAA,CAAAA;AACvE,IAAA;AACJ;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../generated/Providers/Adding/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../generated/Providers/Adding/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnthropicProviderReconfigured.d.ts","sourceRoot":"","sources":["../../../../../generated/Providers/Reconfiguring/AnthropicProviderReconfigured.ts"],"names":[],"mappings":"AAYA,qBAAa,6BAA6B;IAMtC,MAAM,EAAG,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { field } from '@cratis/fundamentals';
|
|
2
|
+
|
|
3
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
4
|
+
var c = arguments.length, r = c < 3 ? target : desc, d;
|
|
5
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
6
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
7
|
+
} else {
|
|
8
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
9
|
+
if (d = decorators[i]) {
|
|
10
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
15
|
+
}
|
|
16
|
+
function _ts_metadata(metadataKey, metadataValue) {
|
|
17
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
18
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Event raised when an Anthropic provider's API key has been changed.
|
|
23
|
+
*/ class AnthropicProviderReconfigured {
|
|
24
|
+
/**
|
|
25
|
+
* The new API key, protected at rest.
|
|
26
|
+
*/ apiKey;
|
|
27
|
+
}
|
|
28
|
+
_ts_decorate([
|
|
29
|
+
field(String),
|
|
30
|
+
_ts_metadata("design:type", String)
|
|
31
|
+
], AnthropicProviderReconfigured.prototype, "apiKey", void 0);
|
|
32
|
+
|
|
33
|
+
export { AnthropicProviderReconfigured };
|
|
34
|
+
//# sourceMappingURL=AnthropicProviderReconfigured.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnthropicProviderReconfigured.js","sources":["../../../../../generated/Providers/Reconfiguring/AnthropicProviderReconfigured.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Providers.Reconfiguring.AnthropicProviderReconfigured. Time: 2026-09-15T16:31:10.0313877Z. Hash: 73CECC02DBB40423998A0BDD0F3FAFB1527ECBA5CE07A0AED322CD59CA15CE53\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { field } from '@cratis/fundamentals';\n\n/**\n * Event raised when an Anthropic provider's API key has been changed.\n */\nexport class AnthropicProviderReconfigured {\n\n /**\n * The new API key, protected at rest.\n */\n @field(String)\n apiKey!: string;\n}\n"],"names":["AnthropicProviderReconfigured","apiKey"],"mappings":";;;;;;;;;;;;;;;;;;;;AASA;;AAEC,IACM,MAAMA,6BAAAA,CAAAA;AAET;;AAEC,QACD,MACAC;AACJ;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AzureOpenAIProviderReconfigured.d.ts","sourceRoot":"","sources":["../../../../../generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.ts"],"names":[],"mappings":"AAYA,qBAAa,+BAA+B;IAMxC,QAAQ,EAAG,MAAM,CAAC;IAMlB,MAAM,EAAG,MAAM,CAAC;CACnB"}
|