@memberjunction/ng-core-entity-forms 2.60.0 → 2.62.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.
Files changed (48) hide show
  1. package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
  2. package/dist/lib/custom/AIAgents/ai-agent-form.component.js +44 -51
  3. package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
  4. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
  5. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js +15 -28
  6. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
  7. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts.map +1 -1
  8. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js +9 -10
  9. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
  10. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts.map +1 -1
  11. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +34 -70
  12. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
  13. package/dist/lib/custom/Actions/action-form.component.d.ts.map +1 -1
  14. package/dist/lib/custom/Actions/action-form.component.js +29 -34
  15. package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
  16. package/dist/lib/custom/Actions/action-test-harness-dialog.component.js +4 -4
  17. package/dist/lib/custom/Actions/action-test-harness-dialog.component.js.map +1 -1
  18. package/dist/lib/custom/Templates/template-param-dialog.component.d.ts.map +1 -1
  19. package/dist/lib/custom/Templates/template-param-dialog.component.js +22 -23
  20. package/dist/lib/custom/Templates/template-param-dialog.component.js.map +1 -1
  21. package/dist/lib/custom/Templates/template-params-grid.component.d.ts.map +1 -1
  22. package/dist/lib/custom/Templates/template-params-grid.component.js +1 -2
  23. package/dist/lib/custom/Templates/template-params-grid.component.js.map +1 -1
  24. package/dist/lib/custom/Templates/templates-form.component.d.ts.map +1 -1
  25. package/dist/lib/custom/Templates/templates-form.component.js +1 -2
  26. package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
  27. package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts.map +1 -1
  28. package/dist/lib/custom/shared/entity-selector-dialog.component.js +12 -13
  29. package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
  30. package/dist/lib/generated/Entities/AIPrompt/sections/details.component.d.ts.map +1 -1
  31. package/dist/lib/generated/Entities/AIPrompt/sections/details.component.js +49 -4
  32. package/dist/lib/generated/Entities/AIPrompt/sections/details.component.js.map +1 -1
  33. package/dist/lib/generated/Entities/AIPromptRun/sections/details.component.d.ts.map +1 -1
  34. package/dist/lib/generated/Entities/AIPromptRun/sections/details.component.js +69 -4
  35. package/dist/lib/generated/Entities/AIPromptRun/sections/details.component.js.map +1 -1
  36. package/dist/lib/generated/Entities/CompanyIntegration/sections/details.component.d.ts.map +1 -1
  37. package/dist/lib/generated/Entities/CompanyIntegration/sections/details.component.js +13 -4
  38. package/dist/lib/generated/Entities/CompanyIntegration/sections/details.component.js.map +1 -1
  39. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/sections/details.component.d.ts.map +1 -1
  40. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/sections/details.component.js +13 -4
  41. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/sections/details.component.js.map +1 -1
  42. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/sections/details.component.d.ts.map +1 -1
  43. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/sections/details.component.js +13 -4
  44. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/sections/details.component.js.map +1 -1
  45. package/dist/lib/generated/Entities/List/sections/details.component.d.ts.map +1 -1
  46. package/dist/lib/generated/Entities/List/sections/details.component.js +13 -4
  47. package/dist/lib/generated/Entities/List/sections/details.component.js.map +1 -1
  48. package/package.json +15 -15
@@ -112,8 +112,8 @@ function AIPromptRunFormComponentExtended_Conditional_1_ng_template_49_Template(
112
112
  } }
113
113
  function AIPromptRunFormComponentExtended_Conditional_1_ng_template_50_Conditional_1_Template(rf, ctx) { if (rf & 1) {
114
114
  const _r6 = i0.ɵɵgetCurrentView();
115
- i0.ɵɵelementStart(0, "div", 43)(1, "div", 45)(2, "kendo-button", 46);
116
- i0.ɵɵlistener("click", function AIPromptRunFormComponentExtended_Conditional_1_ng_template_50_Conditional_1_Template_kendo_button_click_2_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.copyToClipboard(ctx_r1.formattedMessages, "Messages")); });
115
+ i0.ɵɵelementStart(0, "div", 43)(1, "div", 45)(2, "button", 46);
116
+ i0.ɵɵlistener("click", function AIPromptRunFormComponentExtended_Conditional_1_ng_template_50_Conditional_1_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r6); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.copyToClipboard(ctx_r1.formattedMessages, "Messages")); });
117
117
  i0.ɵɵelement(3, "i", 47);
118
118
  i0.ɵɵtext(4, " Copy ");
119
119
  i0.ɵɵelementEnd()();
@@ -181,8 +181,8 @@ function AIPromptRunFormComponentExtended_Conditional_1_ng_template_53_Condition
181
181
  } }
182
182
  function AIPromptRunFormComponentExtended_Conditional_1_ng_template_53_Conditional_2_Template(rf, ctx) { if (rf & 1) {
183
183
  const _r7 = i0.ɵɵgetCurrentView();
184
- i0.ɵɵelementStart(0, "div", 43)(1, "div", 45)(2, "kendo-button", 46);
185
- i0.ɵɵlistener("click", function AIPromptRunFormComponentExtended_Conditional_1_ng_template_53_Conditional_2_Template_kendo_button_click_2_listener() { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.copyToClipboard(ctx_r1.formattedResult, "Result")); });
184
+ i0.ɵɵelementStart(0, "div", 43)(1, "div", 45)(2, "button", 46);
185
+ i0.ɵɵlistener("click", function AIPromptRunFormComponentExtended_Conditional_1_ng_template_53_Conditional_2_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r7); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.copyToClipboard(ctx_r1.formattedResult, "Result")); });
186
186
  i0.ɵɵelement(3, "i", 47);
187
187
  i0.ɵɵtext(4, " Copy ");
188
188
  i0.ɵɵelementEnd()();
@@ -1007,8 +1007,8 @@ function AIPromptRunFormComponentExtended_Conditional_1_Template(rf, ctx) { if (
1007
1007
  i0.ɵɵelementEnd();
1008
1008
  i0.ɵɵtemplate(16, AIPromptRunFormComponentExtended_Conditional_1_Conditional_16_Template, 3, 5, "span", 13)(17, AIPromptRunFormComponentExtended_Conditional_1_Conditional_17_Template, 3, 1, "span", 14)(18, AIPromptRunFormComponentExtended_Conditional_1_Conditional_18_Template, 3, 1, "span", 15)(19, AIPromptRunFormComponentExtended_Conditional_1_Conditional_19_Template, 3, 1, "span", 16);
1009
1009
  i0.ɵɵelementEnd()()();
1010
- i0.ɵɵelementStart(20, "div", 17)(21, "kendo-button", 18);
1011
- i0.ɵɵlistener("click", function AIPromptRunFormComponentExtended_Conditional_1_Template_kendo_button_click_21_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.refreshData()); });
1010
+ i0.ɵɵelementStart(20, "div", 17)(21, "button", 18);
1011
+ i0.ɵɵlistener("click", function AIPromptRunFormComponentExtended_Conditional_1_Template_button_click_21_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.refreshData()); });
1012
1012
  i0.ɵɵelement(22, "i", 19);
1013
1013
  i0.ɵɵelementEnd()()();
1014
1014
  i0.ɵɵelementStart(23, "div", 20)(24, "div", 21);
@@ -1171,8 +1171,7 @@ let AIPromptRunFormComponentExtended = class AIPromptRunFormComponentExtended ex
1171
1171
  const result = await rv.RunView({
1172
1172
  EntityName: 'MJ: AI Prompt Runs',
1173
1173
  ExtraFilter: `ParentID='${this.record.ID}'`,
1174
- OrderBy: 'ExecutionOrder ASC, RunAt DESC',
1175
- ResultType: 'entity_object'
1174
+ OrderBy: 'ExecutionOrder ASC, RunAt DESC'
1176
1175
  });
1177
1176
  this.childRuns = result.Results;
1178
1177
  }
@@ -1377,7 +1376,7 @@ let AIPromptRunFormComponentExtended = class AIPromptRunFormComponentExtended ex
1377
1376
  this.validationExpanded = (this.record.ValidationAttemptCount || 0) > 1;
1378
1377
  }
1379
1378
  static { this.ɵfac = function AIPromptRunFormComponentExtended_Factory(t) { return new (t || AIPromptRunFormComponentExtended)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.SharedService), i0.ɵɵdirectiveInject(i2.Router), i0.ɵɵdirectiveInject(i2.ActivatedRoute), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); }; }
1380
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AIPromptRunFormComponentExtended, selectors: [["mj-ai-prompt-run-form"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 1, consts: [["form", "ngForm"], [1, "record-form-container"], [1, "record-form"], [3, "form"], [1, "prompt-run-header"], [1, "header-content"], [1, "run-overview"], [1, "run-icon-wrapper"], [1, "run-info"], [1, "run-title"], [1, "run-id"], [1, "run-meta"], [1, "status-badge"], [1, "run-type-badge", 3, "color"], ["title", "View Prompt", 1, "prompt-name"], ["title", "View Model", 1, "model-name"], ["title", "View Vendor", 1, "vendor-name"], [1, "run-actions"], ["fillMode", "outline", "size", "small", "title", "Refresh data", 3, "click"], [1, "fa-solid", "fa-refresh"], [1, "metrics-bar"], [1, "metric-item"], [1, "fa-solid", "fa-clock"], [1, "metric-content"], [1, "metric-label"], [1, "metric-value"], [1, "fa-solid", "fa-coins"], [1, "fa-solid", "fa-dollar-sign"], [1, "form-content"], [3, "expanded"], ["kendoPanelBarItemTitle", ""], ["kendoPanelBarContent", ""], [1, "run-type-badge"], ["title", "View Prompt", 1, "prompt-name", 3, "click"], [1, "fa-solid", "fa-comment-dots"], ["title", "View Model", 1, "model-name", 3, "click"], [1, "fa-solid", "fa-microchip"], ["title", "View Vendor", 1, "vendor-name", 3, "click"], [1, "fa-solid", "fa-building"], [1, "fa-solid", "fa-calendar"], [1, "panel-title"], [1, "panel-badge"], [1, "panel-content"], [1, "json-editor-container"], [1, "empty-state"], [1, "json-toolbar"], ["fillMode", "flat", "size", "small", "title", "Copy JSON", 3, "click"], [1, "fa-solid", "fa-copy"], ["name", "formattedMessages", 2, "height", "400px", "width", "100%", 3, "ngModelChange", "ngModel", "readonly", "language", "lineWrapping"], [1, "fa-solid", "fa-comment-slash"], [1, "fa-solid", "fa-square-check"], [1, "panel-badge", "error"], [1, "error-message"], [1, "fa-solid", "fa-exclamation-triangle"], [1, "error-content"], ["name", "formattedResult", 2, "height", "400px", "width", "100%", 3, "ngModelChange", "ngModel", "readonly", "language", "lineWrapping"], [1, "fa-solid", "fa-inbox"], [1, "fa-solid", "fa-chart-line"], [1, "metrics-grid"], [1, "metric-card"], [1, "metric-header"], [1, "fa-solid", "fa-message"], [1, "metric-value", "large"], [1, "metric-rollup"], [1, "fa-solid", "fa-reply"], [1, "metric-currency"], [1, "additional-metrics"], [1, "metric-row"], [1, "metric-value", "link", 3, "click"], [1, "fa-solid", "fa-external-link"], [1, "fa-solid", "fa-shield-check"], [1, "panel-count"], [1, "panel-badge", "success"], [1, "validation-summary"], [1, "summary-header"], [1, "validation-status"], [1, "validation-metrics"], [1, "metric-card", "small"], [1, "validation-error"], [1, "common-error"], [1, "retry-timeline"], [1, "validation-attempts"], [1, "validation-json"], [1, "error-count"], [1, "fa-solid", "fa-repeat"], [1, "timeline-info"], [1, "timeline-stat"], [1, "fa-solid", "fa-flag-checkered"], [1, "fa-solid", "fa-stopwatch"], [1, "attempts-list"], [1, "attempt-item", 3, "success", "failed"], [1, "attempt-item"], [1, "attempt-number"], [1, "attempt-details"], [1, "attempt-time"], [1, "output-length"], [1, "attempt-error"], [1, "json-viewer-container"], ["name", "formattedValidationSummary", 2, "height", "200px", "width", "100%", 3, "ngModelChange", "ngModel", "readonly", "language", "lineWrapping"], ["name", "formattedValidationAttempts", 2, "height", "300px", "width", "100%", 3, "ngModelChange", "ngModel", "readonly", "language", "lineWrapping"], [1, "fa-solid", "fa-sitemap"], [1, "parent-run-section"], [1, "child-runs-section"], [1, "fa-solid", "fa-level-up-alt"], [1, "run-item", "parent", 3, "click"], [1, "run-item-icon"], [1, "run-item-content"], [1, "run-item-title"], [1, "run-item-type"], [1, "run-item-meta"], [1, "fa-solid", "fa-level-down-alt"], [1, "runs-list"], [1, "run-item", "child"], [1, "run-item", "child", 3, "click"], [1, "execution-order"], [1, "status-indicator"], [1, "fa-solid", "fa-info-circle"], [1, "detail-fields-grid"], [1, "detail-field"], [1, "detail-value"], [1, "fa-solid", "fa-temperature-high"], [1, "fa-solid", "fa-percentage"], [1, "fa-solid", "fa-list-ol"], [1, "fa-solid", "fa-filter"], [1, "fa-solid", "fa-plus-circle"], [1, "fa-solid", "fa-seedling"], ["title", "View Agent", 1, "detail-value", "clickable", 3, "click"], [1, "fa-solid", "fa-robot"], [1, "fa-solid", "fa-cog"], [1, "fa-solid", "fa-code"], [1, "fa-solid", "fa-check-circle"]], template: function AIPromptRunFormComponentExtended_Template(rf, ctx) { if (rf & 1) {
1379
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AIPromptRunFormComponentExtended, selectors: [["mj-ai-prompt-run-form"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 1, consts: [["form", "ngForm"], [1, "record-form-container"], [1, "record-form"], [3, "form"], [1, "prompt-run-header"], [1, "header-content"], [1, "run-overview"], [1, "run-icon-wrapper"], [1, "run-info"], [1, "run-title"], [1, "run-id"], [1, "run-meta"], [1, "status-badge"], [1, "run-type-badge", 3, "color"], ["title", "View Prompt", 1, "prompt-name"], ["title", "View Model", 1, "model-name"], ["title", "View Vendor", 1, "vendor-name"], [1, "run-actions"], ["kendoButton", "", "fillMode", "outline", "size", "small", "title", "Refresh data", 3, "click"], [1, "fa-solid", "fa-refresh"], [1, "metrics-bar"], [1, "metric-item"], [1, "fa-solid", "fa-clock"], [1, "metric-content"], [1, "metric-label"], [1, "metric-value"], [1, "fa-solid", "fa-coins"], [1, "fa-solid", "fa-dollar-sign"], [1, "form-content"], [3, "expanded"], ["kendoPanelBarItemTitle", ""], ["kendoPanelBarContent", ""], [1, "run-type-badge"], ["title", "View Prompt", 1, "prompt-name", 3, "click"], [1, "fa-solid", "fa-comment-dots"], ["title", "View Model", 1, "model-name", 3, "click"], [1, "fa-solid", "fa-microchip"], ["title", "View Vendor", 1, "vendor-name", 3, "click"], [1, "fa-solid", "fa-building"], [1, "fa-solid", "fa-calendar"], [1, "panel-title"], [1, "panel-badge"], [1, "panel-content"], [1, "json-editor-container"], [1, "empty-state"], [1, "json-toolbar"], ["kendoButton", "", "fillMode", "flat", "size", "small", "title", "Copy JSON", 3, "click"], [1, "fa-solid", "fa-copy"], ["name", "formattedMessages", 2, "height", "400px", "width", "100%", 3, "ngModelChange", "ngModel", "readonly", "language", "lineWrapping"], [1, "fa-solid", "fa-comment-slash"], [1, "fa-solid", "fa-square-check"], [1, "panel-badge", "error"], [1, "error-message"], [1, "fa-solid", "fa-exclamation-triangle"], [1, "error-content"], ["name", "formattedResult", 2, "height", "400px", "width", "100%", 3, "ngModelChange", "ngModel", "readonly", "language", "lineWrapping"], [1, "fa-solid", "fa-inbox"], [1, "fa-solid", "fa-chart-line"], [1, "metrics-grid"], [1, "metric-card"], [1, "metric-header"], [1, "fa-solid", "fa-message"], [1, "metric-value", "large"], [1, "metric-rollup"], [1, "fa-solid", "fa-reply"], [1, "metric-currency"], [1, "additional-metrics"], [1, "metric-row"], [1, "metric-value", "link", 3, "click"], [1, "fa-solid", "fa-external-link"], [1, "fa-solid", "fa-shield-check"], [1, "panel-count"], [1, "panel-badge", "success"], [1, "validation-summary"], [1, "summary-header"], [1, "validation-status"], [1, "validation-metrics"], [1, "metric-card", "small"], [1, "validation-error"], [1, "common-error"], [1, "retry-timeline"], [1, "validation-attempts"], [1, "validation-json"], [1, "error-count"], [1, "fa-solid", "fa-repeat"], [1, "timeline-info"], [1, "timeline-stat"], [1, "fa-solid", "fa-flag-checkered"], [1, "fa-solid", "fa-stopwatch"], [1, "attempts-list"], [1, "attempt-item", 3, "success", "failed"], [1, "attempt-item"], [1, "attempt-number"], [1, "attempt-details"], [1, "attempt-time"], [1, "output-length"], [1, "attempt-error"], [1, "json-viewer-container"], ["name", "formattedValidationSummary", 2, "height", "200px", "width", "100%", 3, "ngModelChange", "ngModel", "readonly", "language", "lineWrapping"], ["name", "formattedValidationAttempts", 2, "height", "300px", "width", "100%", 3, "ngModelChange", "ngModel", "readonly", "language", "lineWrapping"], [1, "fa-solid", "fa-sitemap"], [1, "parent-run-section"], [1, "child-runs-section"], [1, "fa-solid", "fa-level-up-alt"], [1, "run-item", "parent", 3, "click"], [1, "run-item-icon"], [1, "run-item-content"], [1, "run-item-title"], [1, "run-item-type"], [1, "run-item-meta"], [1, "fa-solid", "fa-level-down-alt"], [1, "runs-list"], [1, "run-item", "child"], [1, "run-item", "child", 3, "click"], [1, "execution-order"], [1, "status-indicator"], [1, "fa-solid", "fa-info-circle"], [1, "detail-fields-grid"], [1, "detail-field"], [1, "detail-value"], [1, "fa-solid", "fa-temperature-high"], [1, "fa-solid", "fa-percentage"], [1, "fa-solid", "fa-list-ol"], [1, "fa-solid", "fa-filter"], [1, "fa-solid", "fa-plus-circle"], [1, "fa-solid", "fa-seedling"], ["title", "View Agent", 1, "detail-value", "clickable", 3, "click"], [1, "fa-solid", "fa-robot"], [1, "fa-solid", "fa-cog"], [1, "fa-solid", "fa-code"], [1, "fa-solid", "fa-check-circle"]], template: function AIPromptRunFormComponentExtended_Template(rf, ctx) { if (rf & 1) {
1381
1380
  i0.ɵɵelementStart(0, "div", 1);
1382
1381
  i0.ɵɵtemplate(1, AIPromptRunFormComponentExtended_Conditional_1_Template, 62, 27, "form", 2);
1383
1382
  i0.ɵɵelementEnd();
@@ -1392,7 +1391,7 @@ AIPromptRunFormComponentExtended = __decorate([
1392
1391
  export { AIPromptRunFormComponentExtended };
1393
1392
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AIPromptRunFormComponentExtended, [{
1394
1393
  type: Component,
1395
- args: [{ selector: 'mj-ai-prompt-run-form', template: "<div class=\"record-form-container\">\n @if (record) {\n <form class=\"record-form\" #form=\"ngForm\">\n <mj-form-toolbar [form]=\"this\"></mj-form-toolbar>\n\n <!-- Header Section -->\n <div class=\"prompt-run-header\">\n <div class=\"header-content\">\n <div class=\"run-overview\">\n <div class=\"run-icon-wrapper\" [style.background-color]=\"getStatusColor() + '20'\">\n <i [class]=\"'fa-solid ' + getStatusIcon()\" [style.color]=\"getStatusColor()\"></i>\n </div>\n <div class=\"run-info\">\n <h1 class=\"run-title\">\n Prompt Run\n @if (record.ID) {\n <span class=\"run-id\">#{{ record.ID.substring(0, 8) }}</span>\n }\n </h1>\n <div class=\"run-meta\">\n <span class=\"status-badge\" [style.background-color]=\"getStatusColor()\">\n <i [class]=\"'fa-solid ' + getStatusIcon()\"></i>\n {{ getStatusText() }}\n </span>\n @if (record.RunType) {\n <span class=\"run-type-badge\" [style.color]=\"getRunTypeColor(record.RunType)\">\n <i [class]=\"'fa-solid ' + getRunTypeIcon(record.RunType)\"></i>\n {{ record.RunType }}\n </span>\n }\n @if (prompt) {\n <span class=\"prompt-name\" (click)=\"navigateToEntity('AI Prompts', prompt.ID)\" title=\"View Prompt\">\n <i class=\"fa-solid fa-comment-dots\"></i>\n {{ prompt.Name }}\n </span>\n }\n @if (model) {\n <span class=\"model-name\" (click)=\"navigateToEntity('AI Models', model.ID)\" title=\"View Model\">\n <i class=\"fa-solid fa-microchip\"></i>\n {{ model.Name }}\n </span>\n }\n @if (record.Vendor) {\n <span class=\"vendor-name\" (click)=\"navigateToEntity('MJ: AI Vendors', record.VendorID)\" title=\"View Vendor\">\n <i class=\"fa-solid fa-building\"></i>\n {{ record.Vendor }}\n </span>\n }\n </div>\n </div>\n </div>\n \n <!-- Action Buttons -->\n <div class=\"run-actions\">\n <kendo-button fillMode=\"outline\" size=\"small\" (click)=\"refreshData()\" title=\"Refresh data\">\n <i class=\"fa-solid fa-refresh\"></i>\n </kendo-button>\n </div>\n </div>\n \n <!-- Key Metrics Bar -->\n <div class=\"metrics-bar\">\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-clock\"></i>\n <div class=\"metric-content\">\n <div class=\"metric-label\">Duration</div>\n <div class=\"metric-value\">{{ formatDuration(record.ExecutionTimeMS) }}</div>\n </div>\n </div>\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-coins\"></i>\n <div class=\"metric-content\">\n <div class=\"metric-label\">Total Tokens</div>\n <div class=\"metric-value\">{{ formatTokens(record.TokensUsed) }}</div>\n </div>\n </div>\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-dollar-sign\"></i>\n <div class=\"metric-content\">\n <div class=\"metric-label\">Cost</div>\n <div class=\"metric-value\">{{ formatCost(record.TotalCost || record.Cost) }}</div>\n </div>\n </div>\n @if (record.RunAt) {\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-calendar\"></i>\n <div class=\"metric-content\">\n <div class=\"metric-label\">Started</div>\n <div class=\"metric-value\">{{ record.RunAt | date:'short' }}</div>\n </div>\n </div>\n }\n </div>\n </div>\n\n <!-- Main Content with Expansion Panels -->\n <div class=\"form-content\">\n <kendo-panelbar>\n \n <!-- Input Messages Panel -->\n <kendo-panelbar-item [expanded]=\"messagesExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-comment-dots\"></i>\n Input Messages\n @if (record.Messages && record.Messages.trim() !== '') {\n <span class=\"panel-badge\">JSON</span>\n }\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n @if (record.Messages && record.Messages.trim() !== '') {\n <div class=\"json-editor-container\">\n <div class=\"json-toolbar\">\n <kendo-button \n fillMode=\"flat\" \n size=\"small\"\n (click)=\"copyToClipboard(formattedMessages, 'Messages')\"\n title=\"Copy JSON\">\n <i class=\"fa-solid fa-copy\"></i> Copy\n </kendo-button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedMessages\"\n name=\"formattedMessages\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 400px; width: 100%;\">\n </mj-code-editor>\n </div>\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-comment-slash\"></i>\n <p>No input messages recorded</p>\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n \n <!-- Result Panel -->\n <kendo-panelbar-item [expanded]=\"resultExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-square-check\"></i>\n Result\n @if (record.Result && record.Result.trim() !== '') {\n <span class=\"panel-badge\">JSON</span>\n }\n @if (record.ErrorMessage) {\n <span class=\"panel-badge error\">Error</span>\n }\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n @if (record.ErrorMessage) {\n <div class=\"error-message\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i>\n <div class=\"error-content\">\n <h4>Error Message</h4>\n <p>{{ record.ErrorMessage }}</p>\n </div>\n </div>\n }\n \n @if (record.Result && record.Result.trim() !== '') {\n <div class=\"json-editor-container\">\n <div class=\"json-toolbar\">\n <kendo-button \n fillMode=\"flat\" \n size=\"small\"\n (click)=\"copyToClipboard(formattedResult, 'Result')\"\n title=\"Copy JSON\">\n <i class=\"fa-solid fa-copy\"></i> Copy\n </kendo-button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedResult\"\n name=\"formattedResult\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 400px; width: 100%;\">\n </mj-code-editor>\n </div>\n } @else if (!record.ErrorMessage) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-inbox\"></i>\n <p>No result data recorded</p>\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n \n <!-- Token Usage & Metrics Panel -->\n <kendo-panelbar-item [expanded]=\"metricsExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-chart-line\"></i>\n Token Usage & Metrics\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"metrics-grid\">\n <div class=\"metric-card\">\n <div class=\"metric-header\">\n <i class=\"fa-solid fa-message\"></i>\n <h4>Prompt Tokens</h4>\n </div>\n <div class=\"metric-value large\">{{ formatTokens(record.TokensPrompt) }}</div>\n @if (record.TokensPromptRollup && record.TokensPromptRollup !== record.TokensPrompt) {\n <div class=\"metric-rollup\">\n <span>Rollup: {{ formatTokens(record.TokensPromptRollup) }}</span>\n </div>\n }\n </div>\n \n <div class=\"metric-card\">\n <div class=\"metric-header\">\n <i class=\"fa-solid fa-reply\"></i>\n <h4>Completion Tokens</h4>\n </div>\n <div class=\"metric-value large\">{{ formatTokens(record.TokensCompletion) }}</div>\n @if (record.TokensCompletionRollup && record.TokensCompletionRollup !== record.TokensCompletion) {\n <div class=\"metric-rollup\">\n <span>Rollup: {{ formatTokens(record.TokensCompletionRollup) }}</span>\n </div>\n }\n </div>\n \n <div class=\"metric-card\">\n <div class=\"metric-header\">\n <i class=\"fa-solid fa-coins\"></i>\n <h4>Total Tokens</h4>\n </div>\n <div class=\"metric-value large\">{{ formatTokens(record.TokensUsed) }}</div>\n @if (record.TokensUsedRollup && record.TokensUsedRollup !== record.TokensUsed) {\n <div class=\"metric-rollup\">\n <span>Rollup: {{ formatTokens(record.TokensUsedRollup) }}</span>\n </div>\n }\n </div>\n \n <div class=\"metric-card\">\n <div class=\"metric-header\">\n <i class=\"fa-solid fa-dollar-sign\"></i>\n <h4>Cost</h4>\n </div>\n <div class=\"metric-value large\">{{ formatCost(record.Cost) }}</div>\n @if (record.TotalCost && record.TotalCost !== record.Cost) {\n <div class=\"metric-rollup\">\n <span>Total: {{ formatCost(record.TotalCost) }}</span>\n </div>\n }\n @if (record.CostCurrency) {\n <div class=\"metric-currency\">{{ record.CostCurrency }}</div>\n }\n </div>\n </div>\n \n <!-- Additional Metrics -->\n <div class=\"additional-metrics\">\n @if (record.ExecutionOrder !== null) {\n <div class=\"metric-row\">\n <span class=\"metric-label\">Execution Order:</span>\n <span class=\"metric-value\">{{ record.ExecutionOrder }}</span>\n </div>\n }\n @if (record.ConfigurationID) {\n <div class=\"metric-row\">\n <span class=\"metric-label\">Configuration:</span>\n <span class=\"metric-value\">{{ record.Configuration }}</span>\n </div>\n }\n @if (record.AgentID) {\n <div class=\"metric-row\">\n <span class=\"metric-label\">Agent:</span>\n <span class=\"metric-value link\" (click)=\"navigateToEntity('AI Agents', record.AgentID)\">\n {{ record.Agent }}\n <i class=\"fa-solid fa-external-link\"></i>\n </span>\n </div>\n }\n </div>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n \n <!-- Validation & Retry Panel -->\n @if (record && ((record.ValidationAttemptCount && record.ValidationAttemptCount > 0) || record.ValidationBehavior)) {\n <kendo-panelbar-item [expanded]=\"validationExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-shield-check\"></i>\n Validation & Retries\n @if (record && record.ValidationAttemptCount && record.ValidationAttemptCount > 1) {\n <span class=\"panel-count\">({{ record.ValidationAttemptCount }} attempts)</span>\n }\n @if (record.FinalValidationPassed) {\n <span class=\"panel-badge success\">Passed</span>\n } @else if (record.FinalValidationPassed === false) {\n <span class=\"panel-badge error\">Failed</span>\n }\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <!-- Validation Summary -->\n <div class=\"validation-summary\">\n <div class=\"summary-header\">\n <h4>Validation Summary</h4>\n <div class=\"validation-status\" [class.success]=\"record.FinalValidationPassed\" [class.failed]=\"!record.FinalValidationPassed\">\n <i [class]=\"record.FinalValidationPassed ? 'fa-solid fa-check-circle' : 'fa-solid fa-times-circle'\"></i>\n {{ record.FinalValidationPassed ? 'Validation Passed' : 'Validation Failed' }}\n </div>\n </div>\n \n <div class=\"validation-metrics\">\n <div class=\"metric-card small\">\n <div class=\"metric-label\">Total Attempts</div>\n <div class=\"metric-value\">{{ record.ValidationAttemptCount || 0 }}</div>\n </div>\n <div class=\"metric-card small\">\n <div class=\"metric-label\">Successful</div>\n <div class=\"metric-value\">{{ record.SuccessfulValidationCount || 0 }}</div>\n </div>\n <div class=\"metric-card small\">\n <div class=\"metric-label\">Behavior</div>\n <div class=\"metric-value\">{{ record.ValidationBehavior || 'Not set' }}</div>\n </div>\n <div class=\"metric-card small\">\n <div class=\"metric-label\">Retry Strategy</div>\n <div class=\"metric-value\">{{ record.RetryStrategy || 'Not set' }}</div>\n </div>\n </div>\n \n @if (record.FinalValidationError) {\n <div class=\"validation-error\">\n <h5><i class=\"fa-solid fa-exclamation-triangle\"></i> Final Validation Error</h5>\n <p>{{ record.FinalValidationError }}</p>\n @if (record && record.ValidationErrorCount && record.ValidationErrorCount > 0) {\n <span class=\"error-count\">{{ record.ValidationErrorCount }} validation errors</span>\n }\n </div>\n }\n \n @if (record.CommonValidationError && record.CommonValidationError !== record.FinalValidationError) {\n <div class=\"common-error\">\n <h5><i class=\"fa-solid fa-repeat\"></i> Most Common Error</h5>\n <p>{{ record.CommonValidationError }}</p>\n </div>\n }\n </div>\n \n <!-- Retry Timeline -->\n @if (record && record.ValidationAttemptCount && record.ValidationAttemptCount > 1) {\n <div class=\"retry-timeline\">\n <h4>Retry Timeline</h4>\n <div class=\"timeline-info\">\n <div class=\"timeline-stat\">\n <i class=\"fa-solid fa-clock\"></i>\n <span>First Attempt: {{ record.FirstAttemptAt | date:'short' }}</span>\n </div>\n <div class=\"timeline-stat\">\n <i class=\"fa-solid fa-flag-checkered\"></i>\n <span>Last Attempt: {{ record.LastAttemptAt | date:'short' }}</span>\n </div>\n <div class=\"timeline-stat\">\n <i class=\"fa-solid fa-stopwatch\"></i>\n <span>Total Retry Duration: {{ formatDuration(record.TotalRetryDurationMS) }}</span>\n </div>\n </div>\n </div>\n }\n \n <!-- Validation Attempts Details -->\n @if (validationAttempts && validationAttempts.length > 0) {\n <div class=\"validation-attempts\">\n <h4>Validation Attempts</h4>\n <div class=\"attempts-list\">\n @for (attempt of validationAttempts; track attempt.attemptNumber) {\n <div class=\"attempt-item\" [class.success]=\"attempt.success\" [class.failed]=\"!attempt.success\">\n <div class=\"attempt-number\">\n <i [class]=\"attempt.success ? 'fa-solid fa-check' : 'fa-solid fa-times'\"></i>\n Attempt #{{ attempt.attemptNumber }}\n </div>\n <div class=\"attempt-details\">\n <span class=\"attempt-time\">{{ attempt.timestamp }}</span>\n @if (!attempt.success) {\n <span class=\"attempt-error\">{{ attempt.errorMessage || 'Unknown error' }}</span>\n @if (attempt.validationErrorCount > 0) {\n <span class=\"error-count\">({{ attempt.validationErrorCount }} errors)</span>\n }\n }\n @if (attempt.outputLength) {\n <span class=\"output-length\">Output: {{ attempt.outputLength }} chars</span>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n \n <!-- Validation Summary JSON -->\n @if (validationSummary) {\n <div class=\"validation-json\">\n <h4>Validation Summary Details</h4>\n <div class=\"json-viewer-container\">\n <mj-code-editor \n [(ngModel)]=\"formattedValidationSummary\"\n name=\"formattedValidationSummary\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 200px; width: 100%;\">\n </mj-code-editor>\n </div>\n </div>\n }\n \n <!-- Validation Attempts JSON -->\n @if (record.ValidationAttempts) {\n <div class=\"validation-json\">\n <h4>Validation Attempts (Raw JSON)</h4>\n <div class=\"json-viewer-container\">\n <mj-code-editor \n [(ngModel)]=\"formattedValidationAttempts\"\n name=\"formattedValidationAttempts\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n \n <!-- Hierarchy Panel (for parent/child relationships) -->\n @if (record.ParentID || childRuns.length > 0) {\n <kendo-panelbar-item [expanded]=\"hierarchyExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-sitemap\"></i>\n Run Hierarchy\n @if (childRuns.length > 0) {\n <span class=\"panel-count\">({{ childRuns.length }} children)</span>\n }\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n @if (parentRun) {\n <div class=\"parent-run-section\">\n <h4><i class=\"fa-solid fa-level-up-alt\"></i> Parent Run</h4>\n <div class=\"run-item parent\" (click)=\"navigateToEntity('MJ: AI Prompt Runs', parentRun.ID)\">\n <div class=\"run-item-icon\" [style.background-color]=\"getStatusColor() + '20'\">\n <i [class]=\"'fa-solid ' + getRunTypeIcon(parentRun.RunType)\"></i>\n </div>\n <div class=\"run-item-content\">\n <div class=\"run-item-title\">\n Parent Run #{{ parentRun.ID.substring(0, 8) }}\n <span class=\"run-item-type\">{{ parentRun.RunType }}</span>\n </div>\n <div class=\"run-item-meta\">\n <span><i class=\"fa-solid fa-clock\"></i> {{ formatDuration(parentRun.ExecutionTimeMS) }}</span>\n <span><i class=\"fa-solid fa-coins\"></i> {{ formatTokens(parentRun.TokensUsed) }}</span>\n <span><i class=\"fa-solid fa-calendar\"></i> {{ parentRun.RunAt | date:'short' }}</span>\n </div>\n </div>\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n </div>\n }\n \n @if (childRuns.length > 0) {\n <div class=\"child-runs-section\">\n <h4><i class=\"fa-solid fa-level-down-alt\"></i> Child Runs</h4>\n <div class=\"runs-list\">\n @for (childRun of childRuns; track childRun.ID) {\n <div class=\"run-item child\" (click)=\"navigateToEntity('MJ: AI Prompt Runs', childRun.ID)\">\n <div class=\"run-item-icon\" [style.background-color]=\"getStatusColor() + '20'\">\n <i [class]=\"'fa-solid ' + getRunTypeIcon(childRun.RunType)\"></i>\n </div>\n <div class=\"run-item-content\">\n <div class=\"run-item-title\">\n Child Run #{{ childRun.ID.substring(0, 8) }}\n @if (childRun.ExecutionOrder !== null) {\n <span class=\"execution-order\">#{{ childRun.ExecutionOrder }}</span>\n }\n <span class=\"run-item-type\">{{ childRun.RunType }}</span>\n </div>\n <div class=\"run-item-meta\">\n <span class=\"status-indicator\" [style.color]=\"getStatusColor()\">\n <i [class]=\"'fa-solid ' + getStatusIcon()\"></i>\n {{ childRun.Success ? 'Success' : childRun.ErrorMessage ? 'Failed' : 'Running' }}\n </span>\n <span><i class=\"fa-solid fa-clock\"></i> {{ formatDuration(childRun.ExecutionTimeMS) }}</span>\n <span><i class=\"fa-solid fa-coins\"></i> {{ formatTokens(childRun.TokensUsed) }}</span>\n </div>\n </div>\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n }\n </div>\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n \n <!-- Additional Details Panel -->\n <kendo-panelbar-item [expanded]=\"false\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Additional Details\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"detail-fields-grid\">\n @if (record.AgentID) {\n <div class=\"detail-field\">\n <label>Agent</label>\n <div class=\"detail-value clickable\" (click)=\"navigateToEntity('AI Agents', record.AgentID)\" title=\"View Agent\">\n <i class=\"fa-solid fa-robot\"></i>\n {{ record.Agent || 'Unknown' }}\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n </div>\n }\n \n @if (record.ConfigurationID) {\n <div class=\"detail-field\">\n <label>Configuration</label>\n <div class=\"detail-value\">\n <i class=\"fa-solid fa-cog\"></i>\n {{ record.Configuration || 'Unknown' }}\n </div>\n </div>\n }\n \n @if (record.RunType) {\n <div class=\"detail-field\">\n <label>Run Type</label>\n <div class=\"detail-value\">\n <i [class]=\"'fa-solid ' + getRunTypeIcon(record.RunType)\"></i>\n {{ record.RunType }}\n </div>\n </div>\n }\n \n @if (record.ResponseFormat) {\n <div class=\"detail-field\">\n <label>Response Format</label>\n <div class=\"detail-value\">\n <i class=\"fa-solid fa-code\"></i>\n {{ record.ResponseFormat }}\n </div>\n </div>\n }\n \n <div class=\"detail-field\">\n <label>Temperature</label>\n <div class=\"detail-value\" [class.null-value]=\"record.Temperature === null || record.Temperature === undefined\">\n <i class=\"fa-solid fa-temperature-high\"></i>\n {{ record.Temperature !== null && record.Temperature !== undefined ? record.Temperature : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Top P</label>\n <div class=\"detail-value\" [class.null-value]=\"record.TopP === null || record.TopP === undefined\">\n <i class=\"fa-solid fa-percentage\"></i>\n {{ record.TopP !== null && record.TopP !== undefined ? record.TopP : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Top K</label>\n <div class=\"detail-value\" [class.null-value]=\"record.TopK === null || record.TopK === undefined\">\n <i class=\"fa-solid fa-list-ol\"></i>\n {{ record.TopK !== null && record.TopK !== undefined ? record.TopK : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Min P</label>\n <div class=\"detail-value\" [class.null-value]=\"record.MinP === null || record.MinP === undefined\">\n <i class=\"fa-solid fa-filter\"></i>\n {{ record.MinP !== null && record.MinP !== undefined ? record.MinP : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Frequency Penalty</label>\n <div class=\"detail-value\" [class.null-value]=\"record.FrequencyPenalty === null || record.FrequencyPenalty === undefined\">\n <i class=\"fa-solid fa-repeat\"></i>\n {{ record.FrequencyPenalty !== null && record.FrequencyPenalty !== undefined ? record.FrequencyPenalty : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Presence Penalty</label>\n <div class=\"detail-value\" [class.null-value]=\"record.PresencePenalty === null || record.PresencePenalty === undefined\">\n <i class=\"fa-solid fa-plus-circle\"></i>\n {{ record.PresencePenalty !== null && record.PresencePenalty !== undefined ? record.PresencePenalty : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Seed</label>\n <div class=\"detail-value\" [class.null-value]=\"record.Seed === null || record.Seed === undefined\">\n <i class=\"fa-solid fa-seedling\"></i>\n {{ record.Seed !== null && record.Seed !== undefined ? record.Seed : '\u2014' }}\n </div>\n </div>\n \n @if (record.RunAt) {\n <div class=\"detail-field\">\n <label>Started At</label>\n <div class=\"detail-value\">\n <i class=\"fa-solid fa-clock\"></i>\n {{ record.RunAt | date:'medium' }}\n </div>\n </div>\n }\n \n @if (record.CompletedAt) {\n <div class=\"detail-field\">\n <label>Completed At</label>\n <div class=\"detail-value\">\n <i class=\"fa-solid fa-check-circle\"></i>\n {{ record.CompletedAt | date:'medium' }}\n </div>\n </div>\n }\n </div>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n \n </kendo-panelbar>\n </div>\n </form>\n }\n</div>", styles: ["/* Header Section */\n.prompt-run-header {\n background: #f8f9fa;\n border-bottom: 2px solid #e9ecef;\n padding: 20px;\n margin-bottom: 0;\n}\n\n.header-content {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 20px;\n margin-bottom: 16px;\n}\n\n.run-overview {\n display: flex;\n align-items: flex-start;\n gap: 16px;\n flex: 1;\n}\n\n.run-icon-wrapper {\n width: 56px;\n height: 56px;\n border-radius: 12px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.run-icon-wrapper i {\n font-size: 24px;\n}\n\n.run-info {\n flex: 1;\n min-width: 0;\n}\n\n.run-title {\n margin: 0 0 8px 0;\n font-size: 1.5em;\n font-weight: 600;\n color: #2c3e50;\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.run-id {\n font-size: 0.8em;\n color: #6c757d;\n font-weight: 400;\n font-family: 'Courier New', monospace;\n}\n\n.run-meta {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.status-badge {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 12px;\n border-radius: 16px;\n color: white;\n font-size: 0.85em;\n font-weight: 500;\n}\n\n.status-badge i {\n font-size: 0.9em;\n}\n\n.run-type-badge {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 12px;\n border-radius: 16px;\n background: #f1f3f5;\n font-size: 0.85em;\n font-weight: 500;\n}\n\n.prompt-name, .model-name, .vendor-name {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 12px;\n border-radius: 16px;\n background: #e9ecef;\n color: #495057;\n font-size: 0.85em;\n cursor: pointer;\n transition: all 0.2s;\n}\n\n.prompt-name:hover, .model-name:hover, .vendor-name:hover {\n background: #dee2e6;\n color: #007bff;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\n.run-actions {\n display: flex;\n gap: 8px;\n}\n\n/* Metrics Bar */\n.metrics-bar {\n display: flex;\n gap: 24px;\n padding-top: 16px;\n border-top: 1px solid #e9ecef;\n flex-wrap: wrap;\n}\n\n.metric-item {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.metric-item > i {\n font-size: 1.2em;\n color: #6c757d;\n width: 24px;\n text-align: center;\n}\n\n.metric-content {\n display: flex;\n flex-direction: column;\n}\n\n.metric-label {\n font-size: 0.75em;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.metric-value {\n font-size: 1.1em;\n font-weight: 600;\n color: #2c3e50;\n}\n\n/* Panels */\n.form-content {\n padding: 16px;\n}\n\n.panel-title {\n display: flex;\n align-items: center;\n gap: 8px;\n font-weight: 600;\n}\n\n.panel-badge {\n margin-left: auto;\n padding: 2px 8px;\n border-radius: 12px;\n background: #e9ecef;\n color: #495057;\n font-size: 0.75em;\n font-weight: 500;\n}\n\n.panel-badge.error {\n background: #dc3545;\n color: white;\n}\n\n.panel-count {\n color: #6c757d;\n font-weight: 400;\n font-size: 0.9em;\n}\n\n.panel-content {\n padding: 20px;\n max-height: none !important;\n overflow: visible !important;\n}\n\n/* JSON Editor Container */\n.json-editor-container {\n border: 1px solid #e9ecef;\n border-radius: 6px;\n overflow: hidden;\n}\n\n.json-toolbar {\n background: #f8f9fa;\n padding: 8px 12px;\n border-bottom: 1px solid #e9ecef;\n display: flex;\n justify-content: flex-end;\n}\n\n/* Error Message */\n.error-message {\n background: #dc354510;\n border: 1px solid #dc3545;\n border-radius: 6px;\n padding: 16px;\n display: flex;\n gap: 16px;\n margin-bottom: 16px;\n}\n\n.error-message i {\n font-size: 1.5em;\n color: #dc3545;\n flex-shrink: 0;\n}\n\n.error-content h4 {\n margin: 0 0 8px 0;\n color: #dc3545;\n font-size: 1em;\n}\n\n.error-content p {\n margin: 0;\n color: #495057;\n}\n\n/* Empty State */\n.empty-state {\n text-align: center;\n padding: 60px 40px;\n color: #6c757d;\n}\n\n.empty-state i {\n font-size: 3em;\n margin-bottom: 16px;\n opacity: 0.3;\n}\n\n.empty-state p {\n margin: 0;\n font-size: 1.1em;\n}\n\n/* Metrics Grid */\n.metrics-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 20px;\n margin-bottom: 24px;\n}\n\n.metric-card {\n background: #f8f9fa;\n border: 1px solid #e9ecef;\n border-radius: 8px;\n padding: 20px;\n}\n\n.metric-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 12px;\n}\n\n.metric-header i {\n font-size: 1.2em;\n color: #6c757d;\n}\n\n.metric-header h4 {\n margin: 0;\n font-size: 0.9em;\n color: #6c757d;\n font-weight: 500;\n}\n\n.metric-value.large {\n font-size: 1.8em;\n font-weight: 700;\n color: #2c3e50;\n}\n\n.metric-rollup {\n margin-top: 8px;\n font-size: 0.85em;\n color: #6c757d;\n}\n\n.metric-currency {\n margin-top: 4px;\n font-size: 0.85em;\n color: #6c757d;\n text-transform: uppercase;\n}\n\n/* Additional Metrics */\n.additional-metrics {\n border-top: 1px solid #e9ecef;\n padding-top: 16px;\n}\n\n.metric-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 0;\n border-bottom: 1px solid #f1f3f5;\n}\n\n.metric-row:last-child {\n border-bottom: none;\n}\n\n.metric-row .metric-label {\n font-weight: 500;\n color: #6c757d;\n}\n\n.metric-row .metric-value {\n font-weight: 400;\n color: #2c3e50;\n}\n\n.metric-row .metric-value.link {\n color: #007bff;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 6px;\n transition: color 0.2s;\n}\n\n.metric-row .metric-value.link:hover {\n color: #0056b3;\n}\n\n/* Hierarchy Section */\n.parent-run-section,\n.child-runs-section {\n margin-bottom: 24px;\n}\n\n.parent-run-section:last-child,\n.child-runs-section:last-child {\n margin-bottom: 0;\n}\n\n.parent-run-section h4,\n.child-runs-section h4 {\n margin: 0 0 12px 0;\n font-size: 0.95em;\n color: #495057;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.runs-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.run-item {\n background: #f8f9fa;\n border: 1px solid #e9ecef;\n border-radius: 8px;\n padding: 12px 16px;\n display: flex;\n align-items: center;\n gap: 12px;\n cursor: pointer;\n transition: all 0.2s;\n}\n\n.run-item:hover {\n background: #e9ecef;\n border-color: #dee2e6;\n}\n\n.run-item.parent {\n background: #e3f2fd;\n border-color: #90caf9;\n}\n\n.run-item.parent:hover {\n background: #bbdefb;\n}\n\n.run-item-icon {\n width: 36px;\n height: 36px;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.run-item-content {\n flex: 1;\n min-width: 0;\n}\n\n.run-item-title {\n font-weight: 500;\n color: #2c3e50;\n margin-bottom: 4px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.execution-order {\n background: #6c757d;\n color: white;\n padding: 2px 6px;\n border-radius: 10px;\n font-size: 0.75em;\n font-weight: 600;\n}\n\n.run-item-type {\n font-size: 0.85em;\n color: #6c757d;\n font-weight: 400;\n}\n\n.run-item-meta {\n display: flex;\n align-items: center;\n gap: 16px;\n font-size: 0.85em;\n color: #6c757d;\n}\n\n.run-item-meta span {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.status-indicator {\n font-weight: 500;\n}\n\n.run-item > i:last-child {\n color: #6c757d;\n font-size: 0.85em;\n}\n\n/* Detail Fields Grid */\n.detail-fields-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n gap: 24px;\n width: 100%;\n min-height: auto;\n overflow: visible;\n}\n\n.detail-field {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.detail-field label {\n font-size: 0.85em;\n color: #6c757d;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.detail-value {\n display: flex;\n align-items: center;\n gap: 10px;\n font-size: 1em;\n color: #2c3e50;\n padding: 10px 14px;\n background: #f8f9fa;\n border: 1px solid #e9ecef;\n border-radius: 8px;\n transition: all 0.2s;\n}\n\n.detail-value i:first-child {\n color: #6c757d;\n font-size: 1.1em;\n width: 20px;\n text-align: center;\n}\n\n.detail-value.clickable {\n cursor: pointer;\n}\n\n.detail-value.clickable:hover {\n background: #e9ecef;\n border-color: #dee2e6;\n color: #007bff;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\n.detail-value.clickable i:last-child {\n margin-left: auto;\n font-size: 0.85em;\n opacity: 0.6;\n}\n\n.detail-value.clickable:hover i:last-child {\n opacity: 1;\n}\n\n.detail-value.null-value {\n color: #adb5bd;\n font-style: italic;\n}\n\n.detail-value.null-value i:first-child {\n opacity: 0.5;\n}\n\n/* Kendo Overrides */\nkendo-panelbar {\n border: none !important;\n}\n\nkendo-panelbar-item {\n margin-bottom: 8px;\n border: 1px solid #e9ecef !important;\n border-radius: 8px !important;\n overflow: hidden;\n}\n\nkendo-panelbar-item .k-panelbar-header {\n background: #f8f9fa !important;\n border: none !important;\n padding: 12px 16px !important;\n}\n\nkendo-panelbar-item .k-panelbar-header:hover {\n background: #e9ecef !important;\n}\n\nkendo-panelbar-item .k-panelbar-content {\n border: none !important;\n padding: 0 !important;\n max-height: none !important;\n overflow: visible !important;\n}\n\n/* Validation Panel Styles */\n.validation-summary {\n margin-bottom: 24px;\n}\n\n.summary-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n}\n\n.summary-header h4 {\n margin: 0;\n font-size: 1.1em;\n color: #2c3e50;\n}\n\n.validation-status {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 6px 16px;\n border-radius: 20px;\n font-weight: 500;\n font-size: 0.9em;\n}\n\n.validation-status.success {\n background: #28a74520;\n color: #28a745;\n}\n\n.validation-status.failed {\n background: #dc354520;\n color: #dc3545;\n}\n\n.validation-metrics {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n gap: 12px;\n margin-bottom: 20px;\n}\n\n.metric-card.small {\n padding: 16px;\n text-align: center;\n}\n\n.metric-card.small .metric-label {\n font-size: 0.8em;\n margin-bottom: 8px;\n font-weight: 600;\n}\n\n.metric-card.small .metric-value {\n font-size: 1.4em;\n font-weight: 700;\n}\n\n.validation-error,\n.common-error {\n background: #dc354510;\n border: 1px solid #dc354530;\n border-radius: 8px;\n padding: 16px;\n margin-bottom: 16px;\n}\n\n.validation-error h5,\n.common-error h5 {\n margin: 0 0 8px 0;\n color: #dc3545;\n font-size: 0.95em;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.validation-error p,\n.common-error p {\n margin: 0;\n color: #495057;\n font-size: 0.9em;\n}\n\n.error-count {\n display: inline-block;\n margin-top: 8px;\n padding: 2px 8px;\n background: #dc3545;\n color: white;\n border-radius: 12px;\n font-size: 0.75em;\n font-weight: 500;\n}\n\n/* Retry Timeline */\n.retry-timeline {\n margin-bottom: 24px;\n}\n\n.retry-timeline h4 {\n margin: 0 0 12px 0;\n font-size: 1em;\n color: #495057;\n}\n\n.timeline-info {\n display: flex;\n gap: 24px;\n flex-wrap: wrap;\n}\n\n.timeline-stat {\n display: flex;\n align-items: center;\n gap: 8px;\n color: #6c757d;\n font-size: 0.9em;\n}\n\n.timeline-stat i {\n font-size: 1.1em;\n}\n\n/* Validation Attempts */\n.validation-attempts {\n margin-bottom: 24px;\n}\n\n.validation-attempts h4 {\n margin: 0 0 12px 0;\n font-size: 1em;\n color: #495057;\n}\n\n.attempts-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.attempt-item {\n border: 1px solid #e9ecef;\n border-radius: 8px;\n padding: 12px 16px;\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 16px;\n}\n\n.attempt-item.success {\n background: #28a74510;\n border-color: #28a74530;\n}\n\n.attempt-item.failed {\n background: #dc354510;\n border-color: #dc354530;\n}\n\n.attempt-number {\n display: flex;\n align-items: center;\n gap: 8px;\n font-weight: 600;\n color: #2c3e50;\n}\n\n.attempt-item.success .attempt-number {\n color: #28a745;\n}\n\n.attempt-item.failed .attempt-number {\n color: #dc3545;\n}\n\n.attempt-details {\n flex: 1;\n display: flex;\n flex-wrap: wrap;\n gap: 12px;\n font-size: 0.85em;\n}\n\n.attempt-time {\n color: #6c757d;\n}\n\n.attempt-error {\n color: #dc3545;\n flex: 1 0 100%;\n}\n\n.output-length {\n color: #6c757d;\n font-style: italic;\n}\n\n/* Validation JSON */\n.validation-json {\n margin-top: 24px;\n}\n\n.validation-json h4 {\n margin: 0 0 12px 0;\n font-size: 1em;\n color: #495057;\n}\n\n.json-viewer-container {\n border: 1px solid #e9ecef;\n border-radius: 8px;\n overflow: hidden;\n}\n\n/* Panel badge styles */\n.panel-badge.success {\n background: #28a745;\n color: white;\n}"] }]
1394
+ args: [{ selector: 'mj-ai-prompt-run-form', template: "<div class=\"record-form-container\">\n @if (record) {\n <form class=\"record-form\" #form=\"ngForm\">\n <mj-form-toolbar [form]=\"this\"></mj-form-toolbar>\n\n <!-- Header Section -->\n <div class=\"prompt-run-header\">\n <div class=\"header-content\">\n <div class=\"run-overview\">\n <div class=\"run-icon-wrapper\" [style.background-color]=\"getStatusColor() + '20'\">\n <i [class]=\"'fa-solid ' + getStatusIcon()\" [style.color]=\"getStatusColor()\"></i>\n </div>\n <div class=\"run-info\">\n <h1 class=\"run-title\">\n Prompt Run\n @if (record.ID) {\n <span class=\"run-id\">#{{ record.ID.substring(0, 8) }}</span>\n }\n </h1>\n <div class=\"run-meta\">\n <span class=\"status-badge\" [style.background-color]=\"getStatusColor()\">\n <i [class]=\"'fa-solid ' + getStatusIcon()\"></i>\n {{ getStatusText() }}\n </span>\n @if (record.RunType) {\n <span class=\"run-type-badge\" [style.color]=\"getRunTypeColor(record.RunType)\">\n <i [class]=\"'fa-solid ' + getRunTypeIcon(record.RunType)\"></i>\n {{ record.RunType }}\n </span>\n }\n @if (prompt) {\n <span class=\"prompt-name\" (click)=\"navigateToEntity('AI Prompts', prompt.ID)\" title=\"View Prompt\">\n <i class=\"fa-solid fa-comment-dots\"></i>\n {{ prompt.Name }}\n </span>\n }\n @if (model) {\n <span class=\"model-name\" (click)=\"navigateToEntity('AI Models', model.ID)\" title=\"View Model\">\n <i class=\"fa-solid fa-microchip\"></i>\n {{ model.Name }}\n </span>\n }\n @if (record.Vendor) {\n <span class=\"vendor-name\" (click)=\"navigateToEntity('MJ: AI Vendors', record.VendorID)\" title=\"View Vendor\">\n <i class=\"fa-solid fa-building\"></i>\n {{ record.Vendor }}\n </span>\n }\n </div>\n </div>\n </div>\n \n <!-- Action Buttons -->\n <div class=\"run-actions\">\n <button kendoButton fillMode=\"outline\" size=\"small\" (click)=\"refreshData()\" title=\"Refresh data\">\n <i class=\"fa-solid fa-refresh\"></i>\n </button>\n </div>\n </div>\n \n <!-- Key Metrics Bar -->\n <div class=\"metrics-bar\">\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-clock\"></i>\n <div class=\"metric-content\">\n <div class=\"metric-label\">Duration</div>\n <div class=\"metric-value\">{{ formatDuration(record.ExecutionTimeMS) }}</div>\n </div>\n </div>\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-coins\"></i>\n <div class=\"metric-content\">\n <div class=\"metric-label\">Total Tokens</div>\n <div class=\"metric-value\">{{ formatTokens(record.TokensUsed) }}</div>\n </div>\n </div>\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-dollar-sign\"></i>\n <div class=\"metric-content\">\n <div class=\"metric-label\">Cost</div>\n <div class=\"metric-value\">{{ formatCost(record.TotalCost || record.Cost) }}</div>\n </div>\n </div>\n @if (record.RunAt) {\n <div class=\"metric-item\">\n <i class=\"fa-solid fa-calendar\"></i>\n <div class=\"metric-content\">\n <div class=\"metric-label\">Started</div>\n <div class=\"metric-value\">{{ record.RunAt | date:'short' }}</div>\n </div>\n </div>\n }\n </div>\n </div>\n\n <!-- Main Content with Expansion Panels -->\n <div class=\"form-content\">\n <kendo-panelbar>\n \n <!-- Input Messages Panel -->\n <kendo-panelbar-item [expanded]=\"messagesExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-comment-dots\"></i>\n Input Messages\n @if (record.Messages && record.Messages.trim() !== '') {\n <span class=\"panel-badge\">JSON</span>\n }\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n @if (record.Messages && record.Messages.trim() !== '') {\n <div class=\"json-editor-container\">\n <div class=\"json-toolbar\">\n <button kendoButton\n fillMode=\"flat\" \n size=\"small\"\n (click)=\"copyToClipboard(formattedMessages, 'Messages')\"\n title=\"Copy JSON\">\n <i class=\"fa-solid fa-copy\"></i> Copy\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedMessages\"\n name=\"formattedMessages\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 400px; width: 100%;\">\n </mj-code-editor>\n </div>\n } @else {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-comment-slash\"></i>\n <p>No input messages recorded</p>\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n \n <!-- Result Panel -->\n <kendo-panelbar-item [expanded]=\"resultExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-square-check\"></i>\n Result\n @if (record.Result && record.Result.trim() !== '') {\n <span class=\"panel-badge\">JSON</span>\n }\n @if (record.ErrorMessage) {\n <span class=\"panel-badge error\">Error</span>\n }\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n @if (record.ErrorMessage) {\n <div class=\"error-message\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i>\n <div class=\"error-content\">\n <h4>Error Message</h4>\n <p>{{ record.ErrorMessage }}</p>\n </div>\n </div>\n }\n \n @if (record.Result && record.Result.trim() !== '') {\n <div class=\"json-editor-container\">\n <div class=\"json-toolbar\">\n <button kendoButton\n fillMode=\"flat\" \n size=\"small\"\n (click)=\"copyToClipboard(formattedResult, 'Result')\"\n title=\"Copy JSON\">\n <i class=\"fa-solid fa-copy\"></i> Copy\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedResult\"\n name=\"formattedResult\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 400px; width: 100%;\">\n </mj-code-editor>\n </div>\n } @else if (!record.ErrorMessage) {\n <div class=\"empty-state\">\n <i class=\"fa-solid fa-inbox\"></i>\n <p>No result data recorded</p>\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n \n <!-- Token Usage & Metrics Panel -->\n <kendo-panelbar-item [expanded]=\"metricsExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-chart-line\"></i>\n Token Usage & Metrics\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"metrics-grid\">\n <div class=\"metric-card\">\n <div class=\"metric-header\">\n <i class=\"fa-solid fa-message\"></i>\n <h4>Prompt Tokens</h4>\n </div>\n <div class=\"metric-value large\">{{ formatTokens(record.TokensPrompt) }}</div>\n @if (record.TokensPromptRollup && record.TokensPromptRollup !== record.TokensPrompt) {\n <div class=\"metric-rollup\">\n <span>Rollup: {{ formatTokens(record.TokensPromptRollup) }}</span>\n </div>\n }\n </div>\n \n <div class=\"metric-card\">\n <div class=\"metric-header\">\n <i class=\"fa-solid fa-reply\"></i>\n <h4>Completion Tokens</h4>\n </div>\n <div class=\"metric-value large\">{{ formatTokens(record.TokensCompletion) }}</div>\n @if (record.TokensCompletionRollup && record.TokensCompletionRollup !== record.TokensCompletion) {\n <div class=\"metric-rollup\">\n <span>Rollup: {{ formatTokens(record.TokensCompletionRollup) }}</span>\n </div>\n }\n </div>\n \n <div class=\"metric-card\">\n <div class=\"metric-header\">\n <i class=\"fa-solid fa-coins\"></i>\n <h4>Total Tokens</h4>\n </div>\n <div class=\"metric-value large\">{{ formatTokens(record.TokensUsed) }}</div>\n @if (record.TokensUsedRollup && record.TokensUsedRollup !== record.TokensUsed) {\n <div class=\"metric-rollup\">\n <span>Rollup: {{ formatTokens(record.TokensUsedRollup) }}</span>\n </div>\n }\n </div>\n \n <div class=\"metric-card\">\n <div class=\"metric-header\">\n <i class=\"fa-solid fa-dollar-sign\"></i>\n <h4>Cost</h4>\n </div>\n <div class=\"metric-value large\">{{ formatCost(record.Cost) }}</div>\n @if (record.TotalCost && record.TotalCost !== record.Cost) {\n <div class=\"metric-rollup\">\n <span>Total: {{ formatCost(record.TotalCost) }}</span>\n </div>\n }\n @if (record.CostCurrency) {\n <div class=\"metric-currency\">{{ record.CostCurrency }}</div>\n }\n </div>\n </div>\n \n <!-- Additional Metrics -->\n <div class=\"additional-metrics\">\n @if (record.ExecutionOrder !== null) {\n <div class=\"metric-row\">\n <span class=\"metric-label\">Execution Order:</span>\n <span class=\"metric-value\">{{ record.ExecutionOrder }}</span>\n </div>\n }\n @if (record.ConfigurationID) {\n <div class=\"metric-row\">\n <span class=\"metric-label\">Configuration:</span>\n <span class=\"metric-value\">{{ record.Configuration }}</span>\n </div>\n }\n @if (record.AgentID) {\n <div class=\"metric-row\">\n <span class=\"metric-label\">Agent:</span>\n <span class=\"metric-value link\" (click)=\"navigateToEntity('AI Agents', record.AgentID)\">\n {{ record.Agent }}\n <i class=\"fa-solid fa-external-link\"></i>\n </span>\n </div>\n }\n </div>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n \n <!-- Validation & Retry Panel -->\n @if (record && ((record.ValidationAttemptCount && record.ValidationAttemptCount > 0) || record.ValidationBehavior)) {\n <kendo-panelbar-item [expanded]=\"validationExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-shield-check\"></i>\n Validation & Retries\n @if (record && record.ValidationAttemptCount && record.ValidationAttemptCount > 1) {\n <span class=\"panel-count\">({{ record.ValidationAttemptCount }} attempts)</span>\n }\n @if (record.FinalValidationPassed) {\n <span class=\"panel-badge success\">Passed</span>\n } @else if (record.FinalValidationPassed === false) {\n <span class=\"panel-badge error\">Failed</span>\n }\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <!-- Validation Summary -->\n <div class=\"validation-summary\">\n <div class=\"summary-header\">\n <h4>Validation Summary</h4>\n <div class=\"validation-status\" [class.success]=\"record.FinalValidationPassed\" [class.failed]=\"!record.FinalValidationPassed\">\n <i [class]=\"record.FinalValidationPassed ? 'fa-solid fa-check-circle' : 'fa-solid fa-times-circle'\"></i>\n {{ record.FinalValidationPassed ? 'Validation Passed' : 'Validation Failed' }}\n </div>\n </div>\n \n <div class=\"validation-metrics\">\n <div class=\"metric-card small\">\n <div class=\"metric-label\">Total Attempts</div>\n <div class=\"metric-value\">{{ record.ValidationAttemptCount || 0 }}</div>\n </div>\n <div class=\"metric-card small\">\n <div class=\"metric-label\">Successful</div>\n <div class=\"metric-value\">{{ record.SuccessfulValidationCount || 0 }}</div>\n </div>\n <div class=\"metric-card small\">\n <div class=\"metric-label\">Behavior</div>\n <div class=\"metric-value\">{{ record.ValidationBehavior || 'Not set' }}</div>\n </div>\n <div class=\"metric-card small\">\n <div class=\"metric-label\">Retry Strategy</div>\n <div class=\"metric-value\">{{ record.RetryStrategy || 'Not set' }}</div>\n </div>\n </div>\n \n @if (record.FinalValidationError) {\n <div class=\"validation-error\">\n <h5><i class=\"fa-solid fa-exclamation-triangle\"></i> Final Validation Error</h5>\n <p>{{ record.FinalValidationError }}</p>\n @if (record && record.ValidationErrorCount && record.ValidationErrorCount > 0) {\n <span class=\"error-count\">{{ record.ValidationErrorCount }} validation errors</span>\n }\n </div>\n }\n \n @if (record.CommonValidationError && record.CommonValidationError !== record.FinalValidationError) {\n <div class=\"common-error\">\n <h5><i class=\"fa-solid fa-repeat\"></i> Most Common Error</h5>\n <p>{{ record.CommonValidationError }}</p>\n </div>\n }\n </div>\n \n <!-- Retry Timeline -->\n @if (record && record.ValidationAttemptCount && record.ValidationAttemptCount > 1) {\n <div class=\"retry-timeline\">\n <h4>Retry Timeline</h4>\n <div class=\"timeline-info\">\n <div class=\"timeline-stat\">\n <i class=\"fa-solid fa-clock\"></i>\n <span>First Attempt: {{ record.FirstAttemptAt | date:'short' }}</span>\n </div>\n <div class=\"timeline-stat\">\n <i class=\"fa-solid fa-flag-checkered\"></i>\n <span>Last Attempt: {{ record.LastAttemptAt | date:'short' }}</span>\n </div>\n <div class=\"timeline-stat\">\n <i class=\"fa-solid fa-stopwatch\"></i>\n <span>Total Retry Duration: {{ formatDuration(record.TotalRetryDurationMS) }}</span>\n </div>\n </div>\n </div>\n }\n \n <!-- Validation Attempts Details -->\n @if (validationAttempts && validationAttempts.length > 0) {\n <div class=\"validation-attempts\">\n <h4>Validation Attempts</h4>\n <div class=\"attempts-list\">\n @for (attempt of validationAttempts; track attempt.attemptNumber) {\n <div class=\"attempt-item\" [class.success]=\"attempt.success\" [class.failed]=\"!attempt.success\">\n <div class=\"attempt-number\">\n <i [class]=\"attempt.success ? 'fa-solid fa-check' : 'fa-solid fa-times'\"></i>\n Attempt #{{ attempt.attemptNumber }}\n </div>\n <div class=\"attempt-details\">\n <span class=\"attempt-time\">{{ attempt.timestamp }}</span>\n @if (!attempt.success) {\n <span class=\"attempt-error\">{{ attempt.errorMessage || 'Unknown error' }}</span>\n @if (attempt.validationErrorCount > 0) {\n <span class=\"error-count\">({{ attempt.validationErrorCount }} errors)</span>\n }\n }\n @if (attempt.outputLength) {\n <span class=\"output-length\">Output: {{ attempt.outputLength }} chars</span>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }\n \n <!-- Validation Summary JSON -->\n @if (validationSummary) {\n <div class=\"validation-json\">\n <h4>Validation Summary Details</h4>\n <div class=\"json-viewer-container\">\n <mj-code-editor \n [(ngModel)]=\"formattedValidationSummary\"\n name=\"formattedValidationSummary\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 200px; width: 100%;\">\n </mj-code-editor>\n </div>\n </div>\n }\n \n <!-- Validation Attempts JSON -->\n @if (record.ValidationAttempts) {\n <div class=\"validation-json\">\n <h4>Validation Attempts (Raw JSON)</h4>\n <div class=\"json-viewer-container\">\n <mj-code-editor \n [(ngModel)]=\"formattedValidationAttempts\"\n name=\"formattedValidationAttempts\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n \n <!-- Hierarchy Panel (for parent/child relationships) -->\n @if (record.ParentID || childRuns.length > 0) {\n <kendo-panelbar-item [expanded]=\"hierarchyExpanded\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-sitemap\"></i>\n Run Hierarchy\n @if (childRuns.length > 0) {\n <span class=\"panel-count\">({{ childRuns.length }} children)</span>\n }\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n @if (parentRun) {\n <div class=\"parent-run-section\">\n <h4><i class=\"fa-solid fa-level-up-alt\"></i> Parent Run</h4>\n <div class=\"run-item parent\" (click)=\"navigateToEntity('MJ: AI Prompt Runs', parentRun.ID)\">\n <div class=\"run-item-icon\" [style.background-color]=\"getStatusColor() + '20'\">\n <i [class]=\"'fa-solid ' + getRunTypeIcon(parentRun.RunType)\"></i>\n </div>\n <div class=\"run-item-content\">\n <div class=\"run-item-title\">\n Parent Run #{{ parentRun.ID.substring(0, 8) }}\n <span class=\"run-item-type\">{{ parentRun.RunType }}</span>\n </div>\n <div class=\"run-item-meta\">\n <span><i class=\"fa-solid fa-clock\"></i> {{ formatDuration(parentRun.ExecutionTimeMS) }}</span>\n <span><i class=\"fa-solid fa-coins\"></i> {{ formatTokens(parentRun.TokensUsed) }}</span>\n <span><i class=\"fa-solid fa-calendar\"></i> {{ parentRun.RunAt | date:'short' }}</span>\n </div>\n </div>\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n </div>\n }\n \n @if (childRuns.length > 0) {\n <div class=\"child-runs-section\">\n <h4><i class=\"fa-solid fa-level-down-alt\"></i> Child Runs</h4>\n <div class=\"runs-list\">\n @for (childRun of childRuns; track childRun.ID) {\n <div class=\"run-item child\" (click)=\"navigateToEntity('MJ: AI Prompt Runs', childRun.ID)\">\n <div class=\"run-item-icon\" [style.background-color]=\"getStatusColor() + '20'\">\n <i [class]=\"'fa-solid ' + getRunTypeIcon(childRun.RunType)\"></i>\n </div>\n <div class=\"run-item-content\">\n <div class=\"run-item-title\">\n Child Run #{{ childRun.ID.substring(0, 8) }}\n @if (childRun.ExecutionOrder !== null) {\n <span class=\"execution-order\">#{{ childRun.ExecutionOrder }}</span>\n }\n <span class=\"run-item-type\">{{ childRun.RunType }}</span>\n </div>\n <div class=\"run-item-meta\">\n <span class=\"status-indicator\" [style.color]=\"getStatusColor()\">\n <i [class]=\"'fa-solid ' + getStatusIcon()\"></i>\n {{ childRun.Success ? 'Success' : childRun.ErrorMessage ? 'Failed' : 'Running' }}\n </span>\n <span><i class=\"fa-solid fa-clock\"></i> {{ formatDuration(childRun.ExecutionTimeMS) }}</span>\n <span><i class=\"fa-solid fa-coins\"></i> {{ formatTokens(childRun.TokensUsed) }}</span>\n </div>\n </div>\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n }\n </div>\n </div>\n }\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n \n <!-- Additional Details Panel -->\n <kendo-panelbar-item [expanded]=\"false\">\n <ng-template kendoPanelBarItemTitle>\n <span class=\"panel-title\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Additional Details\n </span>\n </ng-template>\n <ng-template kendoPanelBarContent>\n <div class=\"panel-content\">\n <div class=\"detail-fields-grid\">\n @if (record.AgentID) {\n <div class=\"detail-field\">\n <label>Agent</label>\n <div class=\"detail-value clickable\" (click)=\"navigateToEntity('AI Agents', record.AgentID)\" title=\"View Agent\">\n <i class=\"fa-solid fa-robot\"></i>\n {{ record.Agent || 'Unknown' }}\n <i class=\"fa-solid fa-external-link\"></i>\n </div>\n </div>\n }\n \n @if (record.ConfigurationID) {\n <div class=\"detail-field\">\n <label>Configuration</label>\n <div class=\"detail-value\">\n <i class=\"fa-solid fa-cog\"></i>\n {{ record.Configuration || 'Unknown' }}\n </div>\n </div>\n }\n \n @if (record.RunType) {\n <div class=\"detail-field\">\n <label>Run Type</label>\n <div class=\"detail-value\">\n <i [class]=\"'fa-solid ' + getRunTypeIcon(record.RunType)\"></i>\n {{ record.RunType }}\n </div>\n </div>\n }\n \n @if (record.ResponseFormat) {\n <div class=\"detail-field\">\n <label>Response Format</label>\n <div class=\"detail-value\">\n <i class=\"fa-solid fa-code\"></i>\n {{ record.ResponseFormat }}\n </div>\n </div>\n }\n \n <div class=\"detail-field\">\n <label>Temperature</label>\n <div class=\"detail-value\" [class.null-value]=\"record.Temperature === null || record.Temperature === undefined\">\n <i class=\"fa-solid fa-temperature-high\"></i>\n {{ record.Temperature !== null && record.Temperature !== undefined ? record.Temperature : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Top P</label>\n <div class=\"detail-value\" [class.null-value]=\"record.TopP === null || record.TopP === undefined\">\n <i class=\"fa-solid fa-percentage\"></i>\n {{ record.TopP !== null && record.TopP !== undefined ? record.TopP : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Top K</label>\n <div class=\"detail-value\" [class.null-value]=\"record.TopK === null || record.TopK === undefined\">\n <i class=\"fa-solid fa-list-ol\"></i>\n {{ record.TopK !== null && record.TopK !== undefined ? record.TopK : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Min P</label>\n <div class=\"detail-value\" [class.null-value]=\"record.MinP === null || record.MinP === undefined\">\n <i class=\"fa-solid fa-filter\"></i>\n {{ record.MinP !== null && record.MinP !== undefined ? record.MinP : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Frequency Penalty</label>\n <div class=\"detail-value\" [class.null-value]=\"record.FrequencyPenalty === null || record.FrequencyPenalty === undefined\">\n <i class=\"fa-solid fa-repeat\"></i>\n {{ record.FrequencyPenalty !== null && record.FrequencyPenalty !== undefined ? record.FrequencyPenalty : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Presence Penalty</label>\n <div class=\"detail-value\" [class.null-value]=\"record.PresencePenalty === null || record.PresencePenalty === undefined\">\n <i class=\"fa-solid fa-plus-circle\"></i>\n {{ record.PresencePenalty !== null && record.PresencePenalty !== undefined ? record.PresencePenalty : '\u2014' }}\n </div>\n </div>\n \n <div class=\"detail-field\">\n <label>Seed</label>\n <div class=\"detail-value\" [class.null-value]=\"record.Seed === null || record.Seed === undefined\">\n <i class=\"fa-solid fa-seedling\"></i>\n {{ record.Seed !== null && record.Seed !== undefined ? record.Seed : '\u2014' }}\n </div>\n </div>\n \n @if (record.RunAt) {\n <div class=\"detail-field\">\n <label>Started At</label>\n <div class=\"detail-value\">\n <i class=\"fa-solid fa-clock\"></i>\n {{ record.RunAt | date:'medium' }}\n </div>\n </div>\n }\n \n @if (record.CompletedAt) {\n <div class=\"detail-field\">\n <label>Completed At</label>\n <div class=\"detail-value\">\n <i class=\"fa-solid fa-check-circle\"></i>\n {{ record.CompletedAt | date:'medium' }}\n </div>\n </div>\n }\n </div>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n \n </kendo-panelbar>\n </div>\n </form>\n }\n</div>", styles: ["/* Header Section */\n.prompt-run-header {\n background: #f8f9fa;\n border-bottom: 2px solid #e9ecef;\n padding: 20px;\n margin-bottom: 0;\n}\n\n.header-content {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 20px;\n margin-bottom: 16px;\n}\n\n.run-overview {\n display: flex;\n align-items: flex-start;\n gap: 16px;\n flex: 1;\n}\n\n.run-icon-wrapper {\n width: 56px;\n height: 56px;\n border-radius: 12px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.run-icon-wrapper i {\n font-size: 24px;\n}\n\n.run-info {\n flex: 1;\n min-width: 0;\n}\n\n.run-title {\n margin: 0 0 8px 0;\n font-size: 1.5em;\n font-weight: 600;\n color: #2c3e50;\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.run-id {\n font-size: 0.8em;\n color: #6c757d;\n font-weight: 400;\n font-family: 'Courier New', monospace;\n}\n\n.run-meta {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.status-badge {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 12px;\n border-radius: 16px;\n color: white;\n font-size: 0.85em;\n font-weight: 500;\n}\n\n.status-badge i {\n font-size: 0.9em;\n}\n\n.run-type-badge {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 12px;\n border-radius: 16px;\n background: #f1f3f5;\n font-size: 0.85em;\n font-weight: 500;\n}\n\n.prompt-name, .model-name, .vendor-name {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 12px;\n border-radius: 16px;\n background: #e9ecef;\n color: #495057;\n font-size: 0.85em;\n cursor: pointer;\n transition: all 0.2s;\n}\n\n.prompt-name:hover, .model-name:hover, .vendor-name:hover {\n background: #dee2e6;\n color: #007bff;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\n.run-actions {\n display: flex;\n gap: 8px;\n}\n\n/* Metrics Bar */\n.metrics-bar {\n display: flex;\n gap: 24px;\n padding-top: 16px;\n border-top: 1px solid #e9ecef;\n flex-wrap: wrap;\n}\n\n.metric-item {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.metric-item > i {\n font-size: 1.2em;\n color: #6c757d;\n width: 24px;\n text-align: center;\n}\n\n.metric-content {\n display: flex;\n flex-direction: column;\n}\n\n.metric-label {\n font-size: 0.75em;\n color: #6c757d;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.metric-value {\n font-size: 1.1em;\n font-weight: 600;\n color: #2c3e50;\n}\n\n/* Panels */\n.form-content {\n padding: 16px;\n}\n\n.panel-title {\n display: flex;\n align-items: center;\n gap: 8px;\n font-weight: 600;\n}\n\n.panel-badge {\n margin-left: auto;\n padding: 2px 8px;\n border-radius: 12px;\n background: #e9ecef;\n color: #495057;\n font-size: 0.75em;\n font-weight: 500;\n}\n\n.panel-badge.error {\n background: #dc3545;\n color: white;\n}\n\n.panel-count {\n color: #6c757d;\n font-weight: 400;\n font-size: 0.9em;\n}\n\n.panel-content {\n padding: 20px;\n max-height: none !important;\n overflow: visible !important;\n}\n\n/* JSON Editor Container */\n.json-editor-container {\n border: 1px solid #e9ecef;\n border-radius: 6px;\n overflow: hidden;\n}\n\n.json-toolbar {\n background: #f8f9fa;\n padding: 8px 12px;\n border-bottom: 1px solid #e9ecef;\n display: flex;\n justify-content: flex-end;\n}\n\n/* Error Message */\n.error-message {\n background: #dc354510;\n border: 1px solid #dc3545;\n border-radius: 6px;\n padding: 16px;\n display: flex;\n gap: 16px;\n margin-bottom: 16px;\n}\n\n.error-message i {\n font-size: 1.5em;\n color: #dc3545;\n flex-shrink: 0;\n}\n\n.error-content h4 {\n margin: 0 0 8px 0;\n color: #dc3545;\n font-size: 1em;\n}\n\n.error-content p {\n margin: 0;\n color: #495057;\n}\n\n/* Empty State */\n.empty-state {\n text-align: center;\n padding: 60px 40px;\n color: #6c757d;\n}\n\n.empty-state i {\n font-size: 3em;\n margin-bottom: 16px;\n opacity: 0.3;\n}\n\n.empty-state p {\n margin: 0;\n font-size: 1.1em;\n}\n\n/* Metrics Grid */\n.metrics-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 20px;\n margin-bottom: 24px;\n}\n\n.metric-card {\n background: #f8f9fa;\n border: 1px solid #e9ecef;\n border-radius: 8px;\n padding: 20px;\n}\n\n.metric-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 12px;\n}\n\n.metric-header i {\n font-size: 1.2em;\n color: #6c757d;\n}\n\n.metric-header h4 {\n margin: 0;\n font-size: 0.9em;\n color: #6c757d;\n font-weight: 500;\n}\n\n.metric-value.large {\n font-size: 1.8em;\n font-weight: 700;\n color: #2c3e50;\n}\n\n.metric-rollup {\n margin-top: 8px;\n font-size: 0.85em;\n color: #6c757d;\n}\n\n.metric-currency {\n margin-top: 4px;\n font-size: 0.85em;\n color: #6c757d;\n text-transform: uppercase;\n}\n\n/* Additional Metrics */\n.additional-metrics {\n border-top: 1px solid #e9ecef;\n padding-top: 16px;\n}\n\n.metric-row {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 8px 0;\n border-bottom: 1px solid #f1f3f5;\n}\n\n.metric-row:last-child {\n border-bottom: none;\n}\n\n.metric-row .metric-label {\n font-weight: 500;\n color: #6c757d;\n}\n\n.metric-row .metric-value {\n font-weight: 400;\n color: #2c3e50;\n}\n\n.metric-row .metric-value.link {\n color: #007bff;\n cursor: pointer;\n display: flex;\n align-items: center;\n gap: 6px;\n transition: color 0.2s;\n}\n\n.metric-row .metric-value.link:hover {\n color: #0056b3;\n}\n\n/* Hierarchy Section */\n.parent-run-section,\n.child-runs-section {\n margin-bottom: 24px;\n}\n\n.parent-run-section:last-child,\n.child-runs-section:last-child {\n margin-bottom: 0;\n}\n\n.parent-run-section h4,\n.child-runs-section h4 {\n margin: 0 0 12px 0;\n font-size: 0.95em;\n color: #495057;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.runs-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.run-item {\n background: #f8f9fa;\n border: 1px solid #e9ecef;\n border-radius: 8px;\n padding: 12px 16px;\n display: flex;\n align-items: center;\n gap: 12px;\n cursor: pointer;\n transition: all 0.2s;\n}\n\n.run-item:hover {\n background: #e9ecef;\n border-color: #dee2e6;\n}\n\n.run-item.parent {\n background: #e3f2fd;\n border-color: #90caf9;\n}\n\n.run-item.parent:hover {\n background: #bbdefb;\n}\n\n.run-item-icon {\n width: 36px;\n height: 36px;\n border-radius: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n}\n\n.run-item-content {\n flex: 1;\n min-width: 0;\n}\n\n.run-item-title {\n font-weight: 500;\n color: #2c3e50;\n margin-bottom: 4px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.execution-order {\n background: #6c757d;\n color: white;\n padding: 2px 6px;\n border-radius: 10px;\n font-size: 0.75em;\n font-weight: 600;\n}\n\n.run-item-type {\n font-size: 0.85em;\n color: #6c757d;\n font-weight: 400;\n}\n\n.run-item-meta {\n display: flex;\n align-items: center;\n gap: 16px;\n font-size: 0.85em;\n color: #6c757d;\n}\n\n.run-item-meta span {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.status-indicator {\n font-weight: 500;\n}\n\n.run-item > i:last-child {\n color: #6c757d;\n font-size: 0.85em;\n}\n\n/* Detail Fields Grid */\n.detail-fields-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));\n gap: 24px;\n width: 100%;\n min-height: auto;\n overflow: visible;\n}\n\n.detail-field {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.detail-field label {\n font-size: 0.85em;\n color: #6c757d;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.detail-value {\n display: flex;\n align-items: center;\n gap: 10px;\n font-size: 1em;\n color: #2c3e50;\n padding: 10px 14px;\n background: #f8f9fa;\n border: 1px solid #e9ecef;\n border-radius: 8px;\n transition: all 0.2s;\n}\n\n.detail-value i:first-child {\n color: #6c757d;\n font-size: 1.1em;\n width: 20px;\n text-align: center;\n}\n\n.detail-value.clickable {\n cursor: pointer;\n}\n\n.detail-value.clickable:hover {\n background: #e9ecef;\n border-color: #dee2e6;\n color: #007bff;\n transform: translateY(-1px);\n box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n}\n\n.detail-value.clickable i:last-child {\n margin-left: auto;\n font-size: 0.85em;\n opacity: 0.6;\n}\n\n.detail-value.clickable:hover i:last-child {\n opacity: 1;\n}\n\n.detail-value.null-value {\n color: #adb5bd;\n font-style: italic;\n}\n\n.detail-value.null-value i:first-child {\n opacity: 0.5;\n}\n\n/* Kendo Overrides */\nkendo-panelbar {\n border: none !important;\n}\n\nkendo-panelbar-item {\n margin-bottom: 8px;\n border: 1px solid #e9ecef !important;\n border-radius: 8px !important;\n overflow: hidden;\n}\n\nkendo-panelbar-item .k-panelbar-header {\n background: #f8f9fa !important;\n border: none !important;\n padding: 12px 16px !important;\n}\n\nkendo-panelbar-item .k-panelbar-header:hover {\n background: #e9ecef !important;\n}\n\nkendo-panelbar-item .k-panelbar-content {\n border: none !important;\n padding: 0 !important;\n max-height: none !important;\n overflow: visible !important;\n}\n\n/* Validation Panel Styles */\n.validation-summary {\n margin-bottom: 24px;\n}\n\n.summary-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-bottom: 16px;\n}\n\n.summary-header h4 {\n margin: 0;\n font-size: 1.1em;\n color: #2c3e50;\n}\n\n.validation-status {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 6px 16px;\n border-radius: 20px;\n font-weight: 500;\n font-size: 0.9em;\n}\n\n.validation-status.success {\n background: #28a74520;\n color: #28a745;\n}\n\n.validation-status.failed {\n background: #dc354520;\n color: #dc3545;\n}\n\n.validation-metrics {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n gap: 12px;\n margin-bottom: 20px;\n}\n\n.metric-card.small {\n padding: 16px;\n text-align: center;\n}\n\n.metric-card.small .metric-label {\n font-size: 0.8em;\n margin-bottom: 8px;\n font-weight: 600;\n}\n\n.metric-card.small .metric-value {\n font-size: 1.4em;\n font-weight: 700;\n}\n\n.validation-error,\n.common-error {\n background: #dc354510;\n border: 1px solid #dc354530;\n border-radius: 8px;\n padding: 16px;\n margin-bottom: 16px;\n}\n\n.validation-error h5,\n.common-error h5 {\n margin: 0 0 8px 0;\n color: #dc3545;\n font-size: 0.95em;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.validation-error p,\n.common-error p {\n margin: 0;\n color: #495057;\n font-size: 0.9em;\n}\n\n.error-count {\n display: inline-block;\n margin-top: 8px;\n padding: 2px 8px;\n background: #dc3545;\n color: white;\n border-radius: 12px;\n font-size: 0.75em;\n font-weight: 500;\n}\n\n/* Retry Timeline */\n.retry-timeline {\n margin-bottom: 24px;\n}\n\n.retry-timeline h4 {\n margin: 0 0 12px 0;\n font-size: 1em;\n color: #495057;\n}\n\n.timeline-info {\n display: flex;\n gap: 24px;\n flex-wrap: wrap;\n}\n\n.timeline-stat {\n display: flex;\n align-items: center;\n gap: 8px;\n color: #6c757d;\n font-size: 0.9em;\n}\n\n.timeline-stat i {\n font-size: 1.1em;\n}\n\n/* Validation Attempts */\n.validation-attempts {\n margin-bottom: 24px;\n}\n\n.validation-attempts h4 {\n margin: 0 0 12px 0;\n font-size: 1em;\n color: #495057;\n}\n\n.attempts-list {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.attempt-item {\n border: 1px solid #e9ecef;\n border-radius: 8px;\n padding: 12px 16px;\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n gap: 16px;\n}\n\n.attempt-item.success {\n background: #28a74510;\n border-color: #28a74530;\n}\n\n.attempt-item.failed {\n background: #dc354510;\n border-color: #dc354530;\n}\n\n.attempt-number {\n display: flex;\n align-items: center;\n gap: 8px;\n font-weight: 600;\n color: #2c3e50;\n}\n\n.attempt-item.success .attempt-number {\n color: #28a745;\n}\n\n.attempt-item.failed .attempt-number {\n color: #dc3545;\n}\n\n.attempt-details {\n flex: 1;\n display: flex;\n flex-wrap: wrap;\n gap: 12px;\n font-size: 0.85em;\n}\n\n.attempt-time {\n color: #6c757d;\n}\n\n.attempt-error {\n color: #dc3545;\n flex: 1 0 100%;\n}\n\n.output-length {\n color: #6c757d;\n font-style: italic;\n}\n\n/* Validation JSON */\n.validation-json {\n margin-top: 24px;\n}\n\n.validation-json h4 {\n margin: 0 0 12px 0;\n font-size: 1em;\n color: #495057;\n}\n\n.json-viewer-container {\n border: 1px solid #e9ecef;\n border-radius: 8px;\n overflow: hidden;\n}\n\n/* Panel badge styles */\n.panel-badge.success {\n background: #28a745;\n color: white;\n}"] }]
1396
1395
  }], () => [{ type: i0.ElementRef }, { type: i1.SharedService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i0.ChangeDetectorRef }], null); })();
1397
1396
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AIPromptRunFormComponentExtended, { className: "AIPromptRunFormComponentExtended", filePath: "src/lib/custom/AIPromptRuns/ai-prompt-run-form.component.ts", lineNumber: 16 }); })();
1398
1397
  //# sourceMappingURL=ai-prompt-run-form.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-prompt-run-form.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/AIPromptRuns/ai-prompt-run-form.component.ts","../../../../src/lib/custom/AIPromptRuns/ai-prompt-run-form.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-prompt-run-form.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/AIPromptRuns/ai-prompt-run-form.component.ts","../../../../src/lib/custom/AIPromptRuns/ai-prompt-run-form.component.html"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ai-prompt-form.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIPrompts/ai-prompt-form.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-prompt-form.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/AIPrompts/ai-prompt-form.component.ts"],"names":[],"mappings":"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"}