@memberjunction/ng-core-entity-forms 5.30.1 → 5.31.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/lib/__tests__/content-source-form.test.d.ts +2 -0
- package/dist/lib/__tests__/content-source-form.test.d.ts.map +1 -0
- package/dist/lib/__tests__/content-source-form.test.js +183 -0
- package/dist/lib/__tests__/content-source-form.test.js.map +1 -0
- package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts +2 -1
- package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/add-action-dialog.component.js +6 -4
- package/dist/lib/custom/AIAgents/add-action-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js +2 -2
- package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts +2 -1
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js +6 -4
- package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js +15 -15
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts +2 -1
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js +9 -7
- package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts +2 -1
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js +11 -9
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts +2 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.js +6 -5
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts +2 -1
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js +6 -4
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts +2 -1
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js +6 -4
- package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts +2 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js +6 -4
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js +3 -3
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +6 -6
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts +2 -1
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js +7 -5
- package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-execution-log-form.component.js +3 -3
- package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-form.component.js +12 -12
- package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
- package/dist/lib/custom/ContentSources/content-source-form.component.d.ts +59 -5
- package/dist/lib/custom/ContentSources/content-source-form.component.d.ts.map +1 -1
- package/dist/lib/custom/ContentSources/content-source-form.component.js +379 -34
- package/dist/lib/custom/ContentSources/content-source-form.component.js.map +1 -1
- package/dist/lib/custom/Entities/entity-form.component.d.ts +1 -1
- package/dist/lib/custom/Entities/entity-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Entities/entity-form.component.js +5 -5
- package/dist/lib/custom/Entities/entity-form.component.js.map +1 -1
- package/dist/lib/custom/Lists/list-form.component.d.ts +1 -1
- package/dist/lib/custom/Lists/list-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Lists/list-form.component.js +10 -10
- package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-category-dialog.component.d.ts +2 -1
- package/dist/lib/custom/Queries/query-category-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/Queries/query-category-dialog.component.js +9 -7
- package/dist/lib/custom/Queries/query-category-dialog.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-form.component.js +17 -17
- package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.d.ts +2 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.js +7 -6
- package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
- package/dist/lib/custom/Templates/template-param-dialog.component.d.ts +2 -1
- package/dist/lib/custom/Templates/template-param-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/Templates/template-param-dialog.component.js +10 -8
- package/dist/lib/custom/Templates/template-param-dialog.component.js.map +1 -1
- package/dist/lib/custom/Templates/template-params-grid.component.d.ts +2 -1
- package/dist/lib/custom/Templates/template-params-grid.component.d.ts.map +1 -1
- package/dist/lib/custom/Templates/template-params-grid.component.js +9 -7
- package/dist/lib/custom/Templates/template-params-grid.component.js.map +1 -1
- package/dist/lib/custom/Templates/templates-form.component.js +8 -8
- package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/entity-link-pill.component.d.ts +3 -2
- package/dist/lib/custom/Tests/entity-link-pill.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/entity-link-pill.component.js +8 -6
- package/dist/lib/custom/Tests/entity-link-pill.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-form.component.d.ts +1 -1
- package/dist/lib/custom/Tests/test-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-form.component.js +7 -7
- package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-run-form.component.js +5 -5
- package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.d.ts +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.js +8 -8
- package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts +1 -1
- package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-suite-run-form.component.js +6 -6
- package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.d.ts +2 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js +8 -6
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.d.ts +9 -0
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js +15 -3
- package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts +3 -2
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js +10 -5
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js +2 -2
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts +2 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.js +6 -4
- package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.js +46 -28
- package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJCompanyIntegrationEntityMap/mjcompanyintegrationentitymap.form.component.js +10 -10
- package/dist/lib/generated/Entities/MJCompanyIntegrationEntityMap/mjcompanyintegrationentitymap.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJContentItem/mjcontentitem.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJContentItem/mjcontentitem.form.component.js +25 -7
- package/dist/lib/generated/Entities/MJContentItem/mjcontentitem.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.js +25 -7
- package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js +106 -88
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJTag/mjtag.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJTag/mjtag.form.component.js +181 -61
- package/dist/lib/generated/Entities/MJTag/mjtag.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJTagScope/mjtagscope.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJTagScope/mjtagscope.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJTagScope/mjtagscope.form.component.js +63 -0
- package/dist/lib/generated/Entities/MJTagScope/mjtagscope.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJTagSuggestion/mjtagsuggestion.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJTagSuggestion/mjtagsuggestion.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJTagSuggestion/mjtagsuggestion.form.component.js +95 -0
- package/dist/lib/generated/Entities/MJTagSuggestion/mjtagsuggestion.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJTagSynonym/mjtagsynonym.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJTagSynonym/mjtagsynonym.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJTagSynonym/mjtagsynonym.form.component.js +63 -0
- package/dist/lib/generated/Entities/MJTagSynonym/mjtagsynonym.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js +199 -181
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js.map +1 -1
- package/dist/lib/generated/generated-forms.module.d.ts +51 -48
- package/dist/lib/generated/generated-forms.module.d.ts.map +1 -1
- package/dist/lib/generated/generated-forms.module.js +27 -18
- package/dist/lib/generated/generated-forms.module.js.map +1 -1
- package/dist/lib/shared/components/template-editor.component.d.ts +3 -2
- package/dist/lib/shared/components/template-editor.component.d.ts.map +1 -1
- package/dist/lib/shared/components/template-editor.component.js +8 -6
- package/dist/lib/shared/components/template-editor.component.js.map +1 -1
- package/package.json +37 -35
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-prompt-advanced-settings-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAU,YAAY,EAAE,MAAM,eAAe,CAAC;AACtG,OAAO,EAAE,SAAS,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAa,MAAM,MAAM,CAAC;AAE3D,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC
|
|
1
|
+
{"version":3,"file":"agent-prompt-advanced-settings-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAU,YAAY,EAAE,MAAM,eAAe,CAAC;AACtG,OAAO,EAAE,SAAS,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAa,MAAM,MAAM,CAAC;AAE3D,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAI/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;;AACrE,MAAM,WAAW,mCAAmC;IAClD,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,EAAE,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,QAAQ,CAAC;IACjG,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;CAC1D;AAED;;;GAGG;AACH,qBAMa,0CAA2C,SAAQ,oBAAqB,YAAW,MAAM,EAAE,SAAS;IAyC7G,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,GAAG;IAvCb,WAAW,EAAG,qBAAqB,CAAC;IACpC,eAAe,EAAE,qBAAqB,EAAE,CAAM;IAG9C,OAAO,CAAC,QAAQ,CAAuB;IAChC,MAAM,sDAA6D;IAG1E,YAAY,EAAG,SAAS,CAAC;IACzB,UAAU,2BAAuC;IACjD,SAAS,2BAAuC;IAGhD,eAAe,6CAAsD;IAGrE,sBAAsB;;;;QAOpB;IAEF,aAAa;;;QAKX;IAGF,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEhC,WAAW,qBAA4B;gBAGvC,EAAE,EAAE,WAAW,EACf,GAAG,EAAE,iBAAiB;IAIhC,QAAQ;IAKR,WAAW;IAKX,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,oBAAoB;IA4B5B,OAAO,CAAC,sBAAsB;YAqBhB,gBAAgB;IAiC9B,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAK1C,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IASxC,sBAAsB,IAAI,OAAO;IAMjC,oBAAoB,IAAI,OAAO;IAK/B,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOpD,MAAM;IAKA,IAAI;yCA5LC,0CAA0C;2CAA1C,0CAA0C;CAiOtD"}
|
|
@@ -4,6 +4,7 @@ import { Subject, BehaviorSubject, takeUntil } from 'rxjs';
|
|
|
4
4
|
import { RunView } from '@memberjunction/core';
|
|
5
5
|
import { MJNotificationService } from '@memberjunction/ng-notifications';
|
|
6
6
|
import { UUIDsEqual } from '@memberjunction/global';
|
|
7
|
+
import { BaseAngularComponent } from '@memberjunction/ng-base-types';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
9
|
import * as i1 from "@angular/forms";
|
|
9
10
|
import * as i2 from "@memberjunction/ng-ui-components";
|
|
@@ -174,8 +175,9 @@ function AgentPromptAdvancedSettingsDialogComponent_Conditional_13_Template(rf,
|
|
|
174
175
|
* Advanced Settings dialog for AI Agent Prompts.
|
|
175
176
|
* Manages execution order, context behavior, and other advanced prompt configurations.
|
|
176
177
|
*/
|
|
177
|
-
export class AgentPromptAdvancedSettingsDialogComponent {
|
|
178
|
+
export class AgentPromptAdvancedSettingsDialogComponent extends BaseAngularComponent {
|
|
178
179
|
constructor(fb, cdr) {
|
|
180
|
+
super();
|
|
179
181
|
this.fb = fb;
|
|
180
182
|
this.cdr = cdr;
|
|
181
183
|
this.allAgentPrompts = []; // For execution order validation
|
|
@@ -265,7 +267,7 @@ export class AgentPromptAdvancedSettingsDialogComponent {
|
|
|
265
267
|
async loadDropdownData() {
|
|
266
268
|
this.isLoading$.next(true);
|
|
267
269
|
try {
|
|
268
|
-
const rv =
|
|
270
|
+
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
269
271
|
// Load AI Configurations
|
|
270
272
|
const configurationsResult = await rv.RunView({
|
|
271
273
|
EntityName: 'MJ: AI Configurations',
|
|
@@ -346,7 +348,7 @@ export class AgentPromptAdvancedSettingsDialogComponent {
|
|
|
346
348
|
}
|
|
347
349
|
}
|
|
348
350
|
static { this.ɵfac = function AgentPromptAdvancedSettingsDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AgentPromptAdvancedSettingsDialogComponent)(i0.ɵɵdirectiveInject(i1.FormBuilder), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); }; }
|
|
349
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AgentPromptAdvancedSettingsDialogComponent, selectors: [["mj-agent-prompt-advanced-settings-dialog"]], outputs: { DialogClose: "DialogClose" }, standalone: false, decls: 14, vars: 14, consts: [[1, "prompt-advanced-settings-dialog"], [1, "loading-state"], [1, "advanced-form", 3, "formGroup"], [1, "dialog-footer"], ["mjButton", "", "variant", "flat", 3, "click", "disabled"], ["mjButton", "", "variant", "primary", 3, "click", "disabled"], [1, "loading-spinner"], [1, "fa-solid", "fa-spinner", "fa-spin", "fa-2x"], [1, "form-section"], [1, "section-title"], [1, "fa-solid", "fa-list-ol"], [1, "form-grid"], [1, "form-field"], ["for", "executionOrder"], ["formControlName", "executionOrder", "Format", "0", 1, "form-control", 3, "Min"], [1, "field-error"], [1, "field-hint"], ["for", "purpose"], ["formControlName", "purpose", "placeholder", "e.g., Initialize, ProcessData, Summarize", 1, "mj-input", "form-control"], ["for", "status"], ["formControlName", "status", "TextField", "text", "ValueField", "value", 1, "form-control", 3, "Data", "ValuePrimitive"], [1, "fa-solid", "fa-comments"], [1, "form-field", "full-width"], ["for", "contextBehavior"], ["formControlName", "contextBehavior", "TextField", "text", "ValueField", "value", 1, "form-control", 3, "Data", "ValuePrimitive"], [1, "fa-solid", "fa-cog"], ["for", "configurationID"], ["formControlName", "configurationID", "TextField", "Name", "ValueField", "ID", 1, "form-control", 3, "Data", "ValuePrimitive", "DefaultItem"], ["for", "contextMessageCount"], ["formControlName", "contextMessageCount", "Format", "0", 1, "form-control", 3, "Min"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "fa-solid", "fa-save"]], template: function AgentPromptAdvancedSettingsDialogComponent_Template(rf, ctx) { if (rf & 1) {
|
|
351
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AgentPromptAdvancedSettingsDialogComponent, selectors: [["mj-agent-prompt-advanced-settings-dialog"]], outputs: { DialogClose: "DialogClose" }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 14, vars: 14, consts: [[1, "prompt-advanced-settings-dialog"], [1, "loading-state"], [1, "advanced-form", 3, "formGroup"], [1, "dialog-footer"], ["mjButton", "", "variant", "flat", 3, "click", "disabled"], ["mjButton", "", "variant", "primary", 3, "click", "disabled"], [1, "loading-spinner"], [1, "fa-solid", "fa-spinner", "fa-spin", "fa-2x"], [1, "form-section"], [1, "section-title"], [1, "fa-solid", "fa-list-ol"], [1, "form-grid"], [1, "form-field"], ["for", "executionOrder"], ["formControlName", "executionOrder", "Format", "0", 1, "form-control", 3, "Min"], [1, "field-error"], [1, "field-hint"], ["for", "purpose"], ["formControlName", "purpose", "placeholder", "e.g., Initialize, ProcessData, Summarize", 1, "mj-input", "form-control"], ["for", "status"], ["formControlName", "status", "TextField", "text", "ValueField", "value", 1, "form-control", 3, "Data", "ValuePrimitive"], [1, "fa-solid", "fa-comments"], [1, "form-field", "full-width"], ["for", "contextBehavior"], ["formControlName", "contextBehavior", "TextField", "text", "ValueField", "value", 1, "form-control", 3, "Data", "ValuePrimitive"], [1, "fa-solid", "fa-cog"], ["for", "configurationID"], ["formControlName", "configurationID", "TextField", "Name", "ValueField", "ID", 1, "form-control", 3, "Data", "ValuePrimitive", "DefaultItem"], ["for", "contextMessageCount"], ["formControlName", "contextMessageCount", "Format", "0", 1, "form-control", 3, "Min"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "fa-solid", "fa-save"]], template: function AgentPromptAdvancedSettingsDialogComponent_Template(rf, ctx) { if (rf & 1) {
|
|
350
352
|
i0.ɵɵelementStart(0, "div", 0);
|
|
351
353
|
i0.ɵɵconditionalCreate(1, AgentPromptAdvancedSettingsDialogComponent_Conditional_1_Template, 5, 0, "div", 1);
|
|
352
354
|
i0.ɵɵpipe(2, "async");
|
|
@@ -381,5 +383,5 @@ export class AgentPromptAdvancedSettingsDialogComponent {
|
|
|
381
383
|
}], () => [{ type: i1.FormBuilder }, { type: i0.ChangeDetectorRef }], { DialogClose: [{
|
|
382
384
|
type: Output
|
|
383
385
|
}] }); })();
|
|
384
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AgentPromptAdvancedSettingsDialogComponent, { className: "AgentPromptAdvancedSettingsDialogComponent", filePath: "src/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.ts", lineNumber:
|
|
386
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AgentPromptAdvancedSettingsDialogComponent, { className: "AgentPromptAdvancedSettingsDialogComponent", filePath: "src/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.ts", lineNumber: 29 }); })();
|
|
385
387
|
//# sourceMappingURL=agent-prompt-advanced-settings-dialog.component.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-prompt-advanced-settings-dialog.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.ts","../../../../src/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, OnInit, OnDestroy, ChangeDetectorRef, Output, EventEmitter } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { Subject, BehaviorSubject, takeUntil } from 'rxjs';\nimport { RunView, Metadata } from '@memberjunction/core';\nimport { MJAIAgentPromptEntity, MJAIConfigurationEntity } from '@memberjunction/core-entities';\nimport { MJNotificationService } from '@memberjunction/ng-notifications';\nimport { UUIDsEqual } from '@memberjunction/global';\n\nexport interface AgentPromptAdvancedSettingsFormData {\n executionOrder: number;\n purpose: string | null;\n configurationID: string | null;\n contextBehavior: 'Complete' | 'Smart' | 'None' | 'RecentMessages' | 'InitialMessages' | 'Custom';\n contextMessageCount: number | null;\n status: 'Active' | 'Inactive' | 'Deprecated' | 'Preview';\n}\n\n/**\n * Advanced Settings dialog for AI Agent Prompts.\n * Manages execution order, context behavior, and other advanced prompt configurations.\n */\n@Component({\n standalone: false,\n selector: 'mj-agent-prompt-advanced-settings-dialog',\n templateUrl: './agent-prompt-advanced-settings-dialog.component.html',\n styleUrls: ['./agent-prompt-advanced-settings-dialog.component.css']\n})\nexport class AgentPromptAdvancedSettingsDialogComponent implements OnInit, OnDestroy {\n \n // Input properties set by service\n agentPrompt!: MJAIAgentPromptEntity;\n allAgentPrompts: MJAIAgentPromptEntity[] = []; // For execution order validation\n \n // Reactive state management\n private destroy$ = new Subject<void>();\n public result = new Subject<AgentPromptAdvancedSettingsFormData | null>();\n \n // Form and data\n advancedForm!: FormGroup;\n isLoading$ = new BehaviorSubject<boolean>(false);\n isSaving$ = new BehaviorSubject<boolean>(false);\n \n // Dropdown data\n configurations$ = new BehaviorSubject<MJAIConfigurationEntity[]>([]);\n \n // Available options\n contextBehaviorOptions = [\n { text: 'Complete Context', value: 'Complete', description: 'Include entire conversation context' },\n { text: 'Smart Context', value: 'Smart', description: 'AI determines relevant context automatically' },\n { text: 'No Context', value: 'None', description: 'No conversation context included' },\n { text: 'Recent Messages', value: 'RecentMessages', description: 'Include only recent messages' },\n { text: 'Initial Messages', value: 'InitialMessages', description: 'Include only conversation start' },\n { text: 'Custom Context', value: 'Custom', description: 'Custom context filtering logic' }\n ];\n\n statusOptions = [\n { text: 'Active', value: 'Active' },\n { text: 'Inactive', value: 'Inactive' },\n { text: 'Deprecated', value: 'Deprecated' },\n { text: 'Preview', value: 'Preview' }\n ];\n\n // Execution order validation\n executionOrderError: string | null = null;\n\n @Output() DialogClose = new EventEmitter<void>();\n\n constructor(\n private fb: FormBuilder,\n private cdr: ChangeDetectorRef\n ) {}\n\n ngOnInit() {\n this.initializeForm();\n this.loadDropdownData();\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n private initializeForm() {\n this.advancedForm = this.fb.group({\n executionOrder: [this.agentPrompt.ExecutionOrder || 0, [Validators.required, Validators.min(0)]],\n purpose: [this.agentPrompt.Purpose],\n configurationID: [this.agentPrompt.ConfigurationID],\n contextBehavior: [this.agentPrompt.ContextBehavior || 'Complete', [Validators.required]],\n contextMessageCount: [this.agentPrompt.ContextMessageCount],\n status: [this.agentPrompt.Status || 'Active', [Validators.required]]\n });\n\n this.setupValidationLogic();\n }\n\n private setupValidationLogic() {\n // Context behavior validation\n const contextBehaviorControl = this.advancedForm.get('contextBehavior');\n const contextMessageCountControl = this.advancedForm.get('contextMessageCount');\n\n contextBehaviorControl?.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(behavior => {\n if (behavior === 'RecentMessages' || behavior === 'InitialMessages') {\n contextMessageCountControl?.setValidators([Validators.required, Validators.min(1)]);\n } else {\n contextMessageCountControl?.clearValidators();\n if (behavior !== 'Custom') {\n contextMessageCountControl?.setValue(null);\n }\n }\n contextMessageCountControl?.updateValueAndValidity();\n });\n\n // Execution order validation\n const executionOrderControl = this.advancedForm.get('executionOrder');\n executionOrderControl?.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(order => {\n this.validateExecutionOrder(order);\n });\n }\n\n private validateExecutionOrder(order: number) {\n if (order == null) {\n this.executionOrderError = null;\n return;\n }\n\n // Check for conflicts with other prompts (excluding current one)\n const conflictingPrompt = this.allAgentPrompts.find(p => \n !UUIDsEqual(p.ID, this.agentPrompt.ID) && \n p.ExecutionOrder === order\n );\n\n if (conflictingPrompt) {\n this.executionOrderError = `Execution order ${order} is already used by another prompt. Please choose a different order.`;\n } else {\n this.executionOrderError = null;\n }\n\n this.cdr.detectChanges();\n }\n\n private async loadDropdownData() {\n this.isLoading$.next(true);\n \n try {\n const rv = new RunView();\n \n // Load AI Configurations\n const configurationsResult = await rv.RunView<MJAIConfigurationEntity>({\n EntityName: 'MJ: AI Configurations',\n ExtraFilter: \"Status = 'Active'\",\n OrderBy: 'Name',\n ResultType: 'entity_object',\n MaxRows: 1000\n });\n\n if (configurationsResult.Success) {\n this.configurations$.next(configurationsResult.Results || []);\n }\n\n } catch (error) {\n console.error('Error loading dropdown data:', error);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Error loading form data. Please try again.',\n 'error',\n 3000\n );\n } finally {\n this.isLoading$.next(false);\n }\n }\n\n // === Validation Helpers ===\n\n isFieldInvalid(fieldName: string): boolean {\n const field = this.advancedForm.get(fieldName);\n return !!(field && field.invalid && (field.dirty || field.touched));\n }\n\n getFieldError(fieldName: string): string {\n const field = this.advancedForm.get(fieldName);\n if (field?.errors) {\n if (field.errors['required']) return `${fieldName} is required`;\n if (field.errors['min']) return `${fieldName} must be greater than or equal to ${field.errors['min'].min}`;\n }\n return '';\n }\n\n hasExecutionOrderError(): boolean {\n return !!this.executionOrderError;\n }\n\n // === Context Behavior Helpers ===\n\n requiresMessageCount(): boolean {\n const behavior = this.advancedForm.get('contextBehavior')?.value;\n return behavior === 'RecentMessages' || behavior === 'InitialMessages';\n }\n\n getContextBehaviorDescription(value: string): string {\n const option = this.contextBehaviorOptions.find(opt => opt.value === value);\n return option?.description || '';\n }\n\n // === Dialog Actions ===\n\n cancel() {\n this.result.next(null);\n this.DialogClose.emit();\n }\n\n async save() {\n if (this.advancedForm.invalid || this.hasExecutionOrderError()) {\n this.advancedForm.markAllAsTouched();\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Please fix validation errors before saving',\n 'error',\n 3000\n );\n return;\n }\n\n this.isSaving$.next(true);\n \n try {\n const formData: AgentPromptAdvancedSettingsFormData = {\n executionOrder: this.advancedForm.get('executionOrder')?.value,\n purpose: this.advancedForm.get('purpose')?.value || null,\n configurationID: this.advancedForm.get('configurationID')?.value || null,\n contextBehavior: this.advancedForm.get('contextBehavior')?.value,\n contextMessageCount: this.advancedForm.get('contextMessageCount')?.value || null,\n status: this.advancedForm.get('status')?.value\n };\n\n this.result.next(formData);\n this.DialogClose.emit();\n \n } catch (error) {\n console.error('Error saving advanced settings:', error);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Error saving settings. Please try again.',\n 'error',\n 3000\n );\n } finally {\n this.isSaving$.next(false);\n }\n }\n}","<!-- Prompt Advanced Settings Dialog -->\n<div class=\"prompt-advanced-settings-dialog\">\n \n <!-- Loading State -->\n @if (isLoading$ | async) {\n <div class=\"loading-state\">\n <div class=\"loading-spinner\">\n <i class=\"fa-solid fa-spinner fa-spin fa-2x\"></i>\n </div>\n <p>Loading prompt settings...</p>\n </div>\n } @else {\n \n <!-- Form Content -->\n <form [formGroup]=\"advancedForm\" class=\"advanced-form\">\n \n <!-- Execution Configuration Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-list-ol\"></i>\n Execution Configuration\n </h3>\n \n <div class=\"form-grid\">\n <!-- Execution Order -->\n <div class=\"form-field\">\n <label for=\"executionOrder\">Execution Order *</label>\n <mj-numeric-input\n formControlName=\"executionOrder\"\n [Min]=\"0\"\n Format=\"0\"\n [class.error-border]=\"hasExecutionOrderError()\"\n class=\"form-control\">\n </mj-numeric-input>\n @if (isFieldInvalid('executionOrder')) {\n <div class=\"field-error\">{{ getFieldError('executionOrder') }}</div>\n }\n @if (hasExecutionOrderError()) {\n <div class=\"field-error\">{{ executionOrderError }}</div>\n }\n <small class=\"field-hint\">Order in which this prompt executes (0 = first). Must be unique among agent prompts.</small>\n </div>\n \n <!-- Purpose -->\n <div class=\"form-field\">\n <label for=\"purpose\">Purpose</label>\n <input\n class=\"mj-input form-control\"\n formControlName=\"purpose\"\n placeholder=\"e.g., Initialize, ProcessData, Summarize\">\n <small class=\"field-hint\">Functional purpose of this prompt within the agent workflow</small>\n </div>\n \n <!-- Status -->\n <div class=\"form-field\">\n <label for=\"status\">Status *</label>\n <mj-dropdown\n formControlName=\"status\"\n [Data]=\"statusOptions\"\n TextField=\"text\"\n ValueField=\"value\"\n [ValuePrimitive]=\"true\"\n class=\"form-control\">\n </mj-dropdown>\n @if (isFieldInvalid('status')) {\n <div class=\"field-error\">{{ getFieldError('status') }}</div>\n }\n <small class=\"field-hint\">Current status of this prompt mapping</small>\n </div>\n </div>\n </div>\n\n <!-- Context Behavior Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-comments\"></i>\n Context Behavior\n </h3>\n \n <div class=\"form-grid\">\n <!-- Context Behavior -->\n <div class=\"form-field full-width\">\n <label for=\"contextBehavior\">Context Behavior *</label>\n <mj-dropdown\n formControlName=\"contextBehavior\"\n [Data]=\"contextBehaviorOptions\"\n TextField=\"text\"\n ValueField=\"value\"\n [ValuePrimitive]=\"true\"\n class=\"form-control\">\n </mj-dropdown>\n @if (isFieldInvalid('contextBehavior')) {\n <div class=\"field-error\">{{ getFieldError('contextBehavior') }}</div>\n }\n <small class=\"field-hint\">{{ getContextBehaviorDescription(advancedForm.get('contextBehavior')?.value) }}</small>\n </div>\n \n <!-- Context Message Count (conditional) -->\n @if (requiresMessageCount()) {\n <div class=\"form-field\">\n <label for=\"contextMessageCount\">Message Count *</label>\n <mj-numeric-input\n formControlName=\"contextMessageCount\"\n [Min]=\"1\"\n Format=\"0\"\n class=\"form-control\">\n </mj-numeric-input>\n @if (isFieldInvalid('contextMessageCount')) {\n <div class=\"field-error\">{{ getFieldError('contextMessageCount') }}</div>\n }\n <small class=\"field-hint\">Number of messages to include for {{ advancedForm.get('contextBehavior')?.value }}</small>\n </div>\n }\n </div>\n </div>\n\n <!-- AI Configuration Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-cog\"></i>\n AI Configuration Override\n </h3>\n \n <div class=\"form-grid\">\n <!-- Configuration Override -->\n <div class=\"form-field full-width\">\n <label for=\"configurationID\">AI Configuration</label>\n <mj-dropdown\n formControlName=\"configurationID\"\n [Data]=\"configurations$ | async\"\n TextField=\"Name\"\n ValueField=\"ID\"\n [ValuePrimitive]=\"true\"\n [DefaultItem]=\"{ Name: 'Use Agent Default', ID: null }\"\n class=\"form-control\">\n </mj-dropdown>\n <small class=\"field-hint\">Override the agent's default AI configuration for this specific prompt</small>\n </div>\n </div>\n </div>\n </form>\n }\n\n <!-- Dialog Footer -->\n <div class=\"dialog-footer\">\n <button mjButton\n variant=\"flat\"\n (click)=\"cancel()\"\n [disabled]=\"(isSaving$ | async) || false\">\n Cancel\n </button>\n\n <button mjButton\n variant=\"primary\"\n (click)=\"save()\"\n [disabled]=\"((isSaving$ | async) || false) || ((isLoading$ | async) || false) || hasExecutionOrderError()\">\n @if (isSaving$ | async) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n Saving...\n } @else {\n <i class=\"fa-solid fa-save\"></i>\n Save Settings\n }\n </button>\n </div>\n</div>"]}
|
|
1
|
+
{"version":3,"file":"agent-prompt-advanced-settings-dialog.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.ts","../../../../src/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, OnInit, OnDestroy, ChangeDetectorRef, Output, EventEmitter } from '@angular/core';\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\nimport { Subject, BehaviorSubject, takeUntil } from 'rxjs';\nimport { RunView, Metadata } from '@memberjunction/core';\nimport { MJAIAgentPromptEntity, MJAIConfigurationEntity } from '@memberjunction/core-entities';\nimport { MJNotificationService } from '@memberjunction/ng-notifications';\nimport { UUIDsEqual } from '@memberjunction/global';\n\nimport { BaseAngularComponent } from '@memberjunction/ng-base-types';\nexport interface AgentPromptAdvancedSettingsFormData {\n executionOrder: number;\n purpose: string | null;\n configurationID: string | null;\n contextBehavior: 'Complete' | 'Smart' | 'None' | 'RecentMessages' | 'InitialMessages' | 'Custom';\n contextMessageCount: number | null;\n status: 'Active' | 'Inactive' | 'Deprecated' | 'Preview';\n}\n\n/**\n * Advanced Settings dialog for AI Agent Prompts.\n * Manages execution order, context behavior, and other advanced prompt configurations.\n */\n@Component({\n standalone: false,\n selector: 'mj-agent-prompt-advanced-settings-dialog',\n templateUrl: './agent-prompt-advanced-settings-dialog.component.html',\n styleUrls: ['./agent-prompt-advanced-settings-dialog.component.css']\n})\nexport class AgentPromptAdvancedSettingsDialogComponent extends BaseAngularComponent implements OnInit, OnDestroy {\n \n // Input properties set by service\n agentPrompt!: MJAIAgentPromptEntity;\n allAgentPrompts: MJAIAgentPromptEntity[] = []; // For execution order validation\n \n // Reactive state management\n private destroy$ = new Subject<void>();\n public result = new Subject<AgentPromptAdvancedSettingsFormData | null>();\n \n // Form and data\n advancedForm!: FormGroup;\n isLoading$ = new BehaviorSubject<boolean>(false);\n isSaving$ = new BehaviorSubject<boolean>(false);\n \n // Dropdown data\n configurations$ = new BehaviorSubject<MJAIConfigurationEntity[]>([]);\n \n // Available options\n contextBehaviorOptions = [\n { text: 'Complete Context', value: 'Complete', description: 'Include entire conversation context' },\n { text: 'Smart Context', value: 'Smart', description: 'AI determines relevant context automatically' },\n { text: 'No Context', value: 'None', description: 'No conversation context included' },\n { text: 'Recent Messages', value: 'RecentMessages', description: 'Include only recent messages' },\n { text: 'Initial Messages', value: 'InitialMessages', description: 'Include only conversation start' },\n { text: 'Custom Context', value: 'Custom', description: 'Custom context filtering logic' }\n ];\n\n statusOptions = [\n { text: 'Active', value: 'Active' },\n { text: 'Inactive', value: 'Inactive' },\n { text: 'Deprecated', value: 'Deprecated' },\n { text: 'Preview', value: 'Preview' }\n ];\n\n // Execution order validation\n executionOrderError: string | null = null;\n\n @Output() DialogClose = new EventEmitter<void>();\n\n constructor(\n private fb: FormBuilder,\n private cdr: ChangeDetectorRef\n ) {\n super();}\n\n ngOnInit() {\n this.initializeForm();\n this.loadDropdownData();\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n private initializeForm() {\n this.advancedForm = this.fb.group({\n executionOrder: [this.agentPrompt.ExecutionOrder || 0, [Validators.required, Validators.min(0)]],\n purpose: [this.agentPrompt.Purpose],\n configurationID: [this.agentPrompt.ConfigurationID],\n contextBehavior: [this.agentPrompt.ContextBehavior || 'Complete', [Validators.required]],\n contextMessageCount: [this.agentPrompt.ContextMessageCount],\n status: [this.agentPrompt.Status || 'Active', [Validators.required]]\n });\n\n this.setupValidationLogic();\n }\n\n private setupValidationLogic() {\n // Context behavior validation\n const contextBehaviorControl = this.advancedForm.get('contextBehavior');\n const contextMessageCountControl = this.advancedForm.get('contextMessageCount');\n\n contextBehaviorControl?.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(behavior => {\n if (behavior === 'RecentMessages' || behavior === 'InitialMessages') {\n contextMessageCountControl?.setValidators([Validators.required, Validators.min(1)]);\n } else {\n contextMessageCountControl?.clearValidators();\n if (behavior !== 'Custom') {\n contextMessageCountControl?.setValue(null);\n }\n }\n contextMessageCountControl?.updateValueAndValidity();\n });\n\n // Execution order validation\n const executionOrderControl = this.advancedForm.get('executionOrder');\n executionOrderControl?.valueChanges.pipe(\n takeUntil(this.destroy$)\n ).subscribe(order => {\n this.validateExecutionOrder(order);\n });\n }\n\n private validateExecutionOrder(order: number) {\n if (order == null) {\n this.executionOrderError = null;\n return;\n }\n\n // Check for conflicts with other prompts (excluding current one)\n const conflictingPrompt = this.allAgentPrompts.find(p => \n !UUIDsEqual(p.ID, this.agentPrompt.ID) && \n p.ExecutionOrder === order\n );\n\n if (conflictingPrompt) {\n this.executionOrderError = `Execution order ${order} is already used by another prompt. Please choose a different order.`;\n } else {\n this.executionOrderError = null;\n }\n\n this.cdr.detectChanges();\n }\n\n private async loadDropdownData() {\n this.isLoading$.next(true);\n \n try {\n const rv = RunView.FromMetadataProvider(this.ProviderToUse);\n \n // Load AI Configurations\n const configurationsResult = await rv.RunView<MJAIConfigurationEntity>({\n EntityName: 'MJ: AI Configurations',\n ExtraFilter: \"Status = 'Active'\",\n OrderBy: 'Name',\n ResultType: 'entity_object',\n MaxRows: 1000\n });\n\n if (configurationsResult.Success) {\n this.configurations$.next(configurationsResult.Results || []);\n }\n\n } catch (error) {\n console.error('Error loading dropdown data:', error);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Error loading form data. Please try again.',\n 'error',\n 3000\n );\n } finally {\n this.isLoading$.next(false);\n }\n }\n\n // === Validation Helpers ===\n\n isFieldInvalid(fieldName: string): boolean {\n const field = this.advancedForm.get(fieldName);\n return !!(field && field.invalid && (field.dirty || field.touched));\n }\n\n getFieldError(fieldName: string): string {\n const field = this.advancedForm.get(fieldName);\n if (field?.errors) {\n if (field.errors['required']) return `${fieldName} is required`;\n if (field.errors['min']) return `${fieldName} must be greater than or equal to ${field.errors['min'].min}`;\n }\n return '';\n }\n\n hasExecutionOrderError(): boolean {\n return !!this.executionOrderError;\n }\n\n // === Context Behavior Helpers ===\n\n requiresMessageCount(): boolean {\n const behavior = this.advancedForm.get('contextBehavior')?.value;\n return behavior === 'RecentMessages' || behavior === 'InitialMessages';\n }\n\n getContextBehaviorDescription(value: string): string {\n const option = this.contextBehaviorOptions.find(opt => opt.value === value);\n return option?.description || '';\n }\n\n // === Dialog Actions ===\n\n cancel() {\n this.result.next(null);\n this.DialogClose.emit();\n }\n\n async save() {\n if (this.advancedForm.invalid || this.hasExecutionOrderError()) {\n this.advancedForm.markAllAsTouched();\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Please fix validation errors before saving',\n 'error',\n 3000\n );\n return;\n }\n\n this.isSaving$.next(true);\n \n try {\n const formData: AgentPromptAdvancedSettingsFormData = {\n executionOrder: this.advancedForm.get('executionOrder')?.value,\n purpose: this.advancedForm.get('purpose')?.value || null,\n configurationID: this.advancedForm.get('configurationID')?.value || null,\n contextBehavior: this.advancedForm.get('contextBehavior')?.value,\n contextMessageCount: this.advancedForm.get('contextMessageCount')?.value || null,\n status: this.advancedForm.get('status')?.value\n };\n\n this.result.next(formData);\n this.DialogClose.emit();\n \n } catch (error) {\n console.error('Error saving advanced settings:', error);\n MJNotificationService.Instance.CreateSimpleNotification(\n 'Error saving settings. Please try again.',\n 'error',\n 3000\n );\n } finally {\n this.isSaving$.next(false);\n }\n }\n}","<!-- Prompt Advanced Settings Dialog -->\n<div class=\"prompt-advanced-settings-dialog\">\n \n <!-- Loading State -->\n @if (isLoading$ | async) {\n <div class=\"loading-state\">\n <div class=\"loading-spinner\">\n <i class=\"fa-solid fa-spinner fa-spin fa-2x\"></i>\n </div>\n <p>Loading prompt settings...</p>\n </div>\n } @else {\n \n <!-- Form Content -->\n <form [formGroup]=\"advancedForm\" class=\"advanced-form\">\n \n <!-- Execution Configuration Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-list-ol\"></i>\n Execution Configuration\n </h3>\n \n <div class=\"form-grid\">\n <!-- Execution Order -->\n <div class=\"form-field\">\n <label for=\"executionOrder\">Execution Order *</label>\n <mj-numeric-input\n formControlName=\"executionOrder\"\n [Min]=\"0\"\n Format=\"0\"\n [class.error-border]=\"hasExecutionOrderError()\"\n class=\"form-control\">\n </mj-numeric-input>\n @if (isFieldInvalid('executionOrder')) {\n <div class=\"field-error\">{{ getFieldError('executionOrder') }}</div>\n }\n @if (hasExecutionOrderError()) {\n <div class=\"field-error\">{{ executionOrderError }}</div>\n }\n <small class=\"field-hint\">Order in which this prompt executes (0 = first). Must be unique among agent prompts.</small>\n </div>\n \n <!-- Purpose -->\n <div class=\"form-field\">\n <label for=\"purpose\">Purpose</label>\n <input\n class=\"mj-input form-control\"\n formControlName=\"purpose\"\n placeholder=\"e.g., Initialize, ProcessData, Summarize\">\n <small class=\"field-hint\">Functional purpose of this prompt within the agent workflow</small>\n </div>\n \n <!-- Status -->\n <div class=\"form-field\">\n <label for=\"status\">Status *</label>\n <mj-dropdown\n formControlName=\"status\"\n [Data]=\"statusOptions\"\n TextField=\"text\"\n ValueField=\"value\"\n [ValuePrimitive]=\"true\"\n class=\"form-control\">\n </mj-dropdown>\n @if (isFieldInvalid('status')) {\n <div class=\"field-error\">{{ getFieldError('status') }}</div>\n }\n <small class=\"field-hint\">Current status of this prompt mapping</small>\n </div>\n </div>\n </div>\n\n <!-- Context Behavior Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-comments\"></i>\n Context Behavior\n </h3>\n \n <div class=\"form-grid\">\n <!-- Context Behavior -->\n <div class=\"form-field full-width\">\n <label for=\"contextBehavior\">Context Behavior *</label>\n <mj-dropdown\n formControlName=\"contextBehavior\"\n [Data]=\"contextBehaviorOptions\"\n TextField=\"text\"\n ValueField=\"value\"\n [ValuePrimitive]=\"true\"\n class=\"form-control\">\n </mj-dropdown>\n @if (isFieldInvalid('contextBehavior')) {\n <div class=\"field-error\">{{ getFieldError('contextBehavior') }}</div>\n }\n <small class=\"field-hint\">{{ getContextBehaviorDescription(advancedForm.get('contextBehavior')?.value) }}</small>\n </div>\n \n <!-- Context Message Count (conditional) -->\n @if (requiresMessageCount()) {\n <div class=\"form-field\">\n <label for=\"contextMessageCount\">Message Count *</label>\n <mj-numeric-input\n formControlName=\"contextMessageCount\"\n [Min]=\"1\"\n Format=\"0\"\n class=\"form-control\">\n </mj-numeric-input>\n @if (isFieldInvalid('contextMessageCount')) {\n <div class=\"field-error\">{{ getFieldError('contextMessageCount') }}</div>\n }\n <small class=\"field-hint\">Number of messages to include for {{ advancedForm.get('contextBehavior')?.value }}</small>\n </div>\n }\n </div>\n </div>\n\n <!-- AI Configuration Section -->\n <div class=\"form-section\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-cog\"></i>\n AI Configuration Override\n </h3>\n \n <div class=\"form-grid\">\n <!-- Configuration Override -->\n <div class=\"form-field full-width\">\n <label for=\"configurationID\">AI Configuration</label>\n <mj-dropdown\n formControlName=\"configurationID\"\n [Data]=\"configurations$ | async\"\n TextField=\"Name\"\n ValueField=\"ID\"\n [ValuePrimitive]=\"true\"\n [DefaultItem]=\"{ Name: 'Use Agent Default', ID: null }\"\n class=\"form-control\">\n </mj-dropdown>\n <small class=\"field-hint\">Override the agent's default AI configuration for this specific prompt</small>\n </div>\n </div>\n </div>\n </form>\n }\n\n <!-- Dialog Footer -->\n <div class=\"dialog-footer\">\n <button mjButton\n variant=\"flat\"\n (click)=\"cancel()\"\n [disabled]=\"(isSaving$ | async) || false\">\n Cancel\n </button>\n\n <button mjButton\n variant=\"primary\"\n (click)=\"save()\"\n [disabled]=\"((isSaving$ | async) || false) || ((isLoading$ | async) || false) || hasExecutionOrderError()\">\n @if (isSaving$ | async) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n Saving...\n } @else {\n <i class=\"fa-solid fa-save\"></i>\n Save Settings\n }\n </button>\n </div>\n</div>"]}
|
|
@@ -8,7 +8,7 @@ var MJAIAgentFormComponentExtended_1;
|
|
|
8
8
|
import { Component, ViewContainerRef, ViewChild, inject } from '@angular/core';
|
|
9
9
|
import { RegisterClass, MJGlobal, UUIDsEqual } from '@memberjunction/global';
|
|
10
10
|
import { BaseFormComponent, BaseFormSectionComponent, CUSTOM_LAYOUT_TOOLBAR_CONFIG } from '@memberjunction/ng-base-forms';
|
|
11
|
-
import { CompositeKey,
|
|
11
|
+
import { CompositeKey, RunView } from '@memberjunction/core';
|
|
12
12
|
import { UserInfoEngine } from '@memberjunction/core-entities';
|
|
13
13
|
import { MJNotificationService } from '@memberjunction/ng-notifications';
|
|
14
14
|
import { MJAIAgentFormComponent } from '../../generated/Entities/MJAIAgent/mjaiagent.form.component';
|
|
@@ -2521,7 +2521,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
2521
2521
|
return this._permissionCache.get(cacheKey);
|
|
2522
2522
|
}
|
|
2523
2523
|
try {
|
|
2524
|
-
const md =
|
|
2524
|
+
const md = this.ProviderToUse;
|
|
2525
2525
|
const entityInfo = md.Entities.find(e => e.Name === entityName);
|
|
2526
2526
|
if (!entityInfo) {
|
|
2527
2527
|
console.warn(`Entity '${entityName}' not found for permission check`);
|
|
@@ -2638,7 +2638,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
2638
2638
|
// Also populate the deprecated subAgents array for backward compatibility
|
|
2639
2639
|
this.subAgents = [...childAgents];
|
|
2640
2640
|
// Load related sub-agents (Relationship-based)
|
|
2641
|
-
const rv =
|
|
2641
|
+
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
2642
2642
|
const relationshipsResult = await rv.RunView({
|
|
2643
2643
|
EntityName: 'MJ: AI Agent Relationships',
|
|
2644
2644
|
ExtraFilter: `AgentID='${this.record.ID}' AND Status='Active'`,
|
|
@@ -2807,7 +2807,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
2807
2807
|
}
|
|
2808
2808
|
else {
|
|
2809
2809
|
// Need to load from database
|
|
2810
|
-
const rv =
|
|
2810
|
+
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
2811
2811
|
const result = await rv.RunView({
|
|
2812
2812
|
EntityName: 'MJ: AI Agent Runs',
|
|
2813
2813
|
Fields: [
|
|
@@ -2870,7 +2870,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
2870
2870
|
return;
|
|
2871
2871
|
}
|
|
2872
2872
|
try {
|
|
2873
|
-
const md =
|
|
2873
|
+
const md = this.ProviderToUse;
|
|
2874
2874
|
this.agentType = await md.GetEntityObject('MJ: AI Agent Types');
|
|
2875
2875
|
if (this.agentType) {
|
|
2876
2876
|
await this.agentType.Load(this.record.TypeID);
|
|
@@ -3056,7 +3056,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
3056
3056
|
async refreshPermissionState() {
|
|
3057
3057
|
if (!this.record?.ID)
|
|
3058
3058
|
return;
|
|
3059
|
-
const rv =
|
|
3059
|
+
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
3060
3060
|
const result = await rv.RunView({
|
|
3061
3061
|
EntityName: 'MJ: AI Agent Permissions',
|
|
3062
3062
|
Fields: ['ID'],
|
|
@@ -3256,7 +3256,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
3256
3256
|
return;
|
|
3257
3257
|
}
|
|
3258
3258
|
// Add to pending changes (defer until save)
|
|
3259
|
-
const md =
|
|
3259
|
+
const md = this.ProviderToUse;
|
|
3260
3260
|
for (const prompt of newPrompts) {
|
|
3261
3261
|
const agentPrompt = await md.GetEntityObject('MJ: AI Agent Prompts');
|
|
3262
3262
|
agentPrompt.NewRecord();
|
|
@@ -3332,7 +3332,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
3332
3332
|
return;
|
|
3333
3333
|
}
|
|
3334
3334
|
// Add to pending changes (defer until save)
|
|
3335
|
-
const md =
|
|
3335
|
+
const md = this.ProviderToUse;
|
|
3336
3336
|
for (const action of newActions) {
|
|
3337
3337
|
const agentAction = await md.GetEntityObject('MJ: AI Agent Actions');
|
|
3338
3338
|
agentAction.NewRecord();
|
|
@@ -3589,7 +3589,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
3589
3589
|
return;
|
|
3590
3590
|
}
|
|
3591
3591
|
try {
|
|
3592
|
-
const rv =
|
|
3592
|
+
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
3593
3593
|
const result = await rv.RunView({
|
|
3594
3594
|
EntityName: 'MJ: AI Agent Runs',
|
|
3595
3595
|
Fields: [
|
|
@@ -3720,7 +3720,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
3720
3720
|
if (result && result.prompt) {
|
|
3721
3721
|
try {
|
|
3722
3722
|
// Get current user using proper MJ pattern
|
|
3723
|
-
const md =
|
|
3723
|
+
const md = this.ProviderToUse;
|
|
3724
3724
|
const currentUserId = md.CurrentUser.ID;
|
|
3725
3725
|
// Add the prompt to PendingRecords (will be saved with agent)
|
|
3726
3726
|
this.PendingRecords.push({
|
|
@@ -3811,7 +3811,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
3811
3811
|
}
|
|
3812
3812
|
else {
|
|
3813
3813
|
// Find the existing AI Agent Prompt link record for deferred deletion
|
|
3814
|
-
const rv =
|
|
3814
|
+
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
3815
3815
|
const linkResult = await rv.RunView({
|
|
3816
3816
|
EntityName: 'MJ: AI Agent Prompts',
|
|
3817
3817
|
ExtraFilter: `AgentID='${this.record.ID}' AND PromptID='${prompt.ID}'`,
|
|
@@ -3888,7 +3888,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
3888
3888
|
return;
|
|
3889
3889
|
}
|
|
3890
3890
|
// Add to pending changes (defer until save)
|
|
3891
|
-
const md =
|
|
3891
|
+
const md = this.ProviderToUse;
|
|
3892
3892
|
for (const agent of newAgents) {
|
|
3893
3893
|
const subAgentToUpdate = await md.GetEntityObject('MJ: AI Agents');
|
|
3894
3894
|
await subAgentToUpdate.Load(agent.ID);
|
|
@@ -3954,7 +3954,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
3954
3954
|
}
|
|
3955
3955
|
else {
|
|
3956
3956
|
// Add to pending removals (will restore to root agent)
|
|
3957
|
-
const md =
|
|
3957
|
+
const md = this.ProviderToUse;
|
|
3958
3958
|
const subAgentToUpdate = await md.GetEntityObject('MJ: AI Agents');
|
|
3959
3959
|
await subAgentToUpdate.Load(subAgent.ID);
|
|
3960
3960
|
subAgentToUpdate.ParentID = null; // Will become a root agent
|
|
@@ -4133,7 +4133,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
4133
4133
|
}
|
|
4134
4134
|
else {
|
|
4135
4135
|
// Find the existing AI Agent Action link record for deferred deletion
|
|
4136
|
-
const rv =
|
|
4136
|
+
const rv = RunView.FromMetadataProvider(this.ProviderToUse);
|
|
4137
4137
|
const linkResult = await rv.RunView({
|
|
4138
4138
|
EntityName: 'MJ: AI Agent Actions',
|
|
4139
4139
|
ExtraFilter: `AgentID='${this.record.ID}' AND ActionID='${action.ID}'`,
|
|
@@ -4328,7 +4328,7 @@ let MJAIAgentFormComponentExtended = class MJAIAgentFormComponentExtended extend
|
|
|
4328
4328
|
this.record.ContextCompressionMessageRetentionCount = null;
|
|
4329
4329
|
this.selectedContextCompressionPrompt = null;
|
|
4330
4330
|
}
|
|
4331
|
-
const md =
|
|
4331
|
+
const md = this.ProviderToUse;
|
|
4332
4332
|
const transactionGroup = await md.CreateTransactionGroup();
|
|
4333
4333
|
// Set transaction group on main record first
|
|
4334
4334
|
this.record.TransactionGroup = transactionGroup;
|