@memberjunction/ng-core-entity-forms 5.21.0 → 5.23.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 (157) hide show
  1. package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts +4 -5
  2. package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts.map +1 -1
  3. package/dist/lib/custom/AIAgents/add-action-dialog.component.js +55 -59
  4. package/dist/lib/custom/AIAgents/add-action-dialog.component.js.map +1 -1
  5. package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js +0 -1
  6. package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js.map +1 -1
  7. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts +4 -5
  8. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts.map +1 -1
  9. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js +54 -71
  10. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js.map +1 -1
  11. package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
  12. package/dist/lib/custom/AIAgents/ai-agent-form.component.js +1053 -1096
  13. package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
  14. package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts +2 -3
  15. package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts.map +1 -1
  16. package/dist/lib/custom/AIAgents/ai-agent-management.service.js +39 -82
  17. package/dist/lib/custom/AIAgents/ai-agent-management.service.js.map +1 -1
  18. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts +4 -5
  19. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts.map +1 -1
  20. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js +28 -31
  21. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js.map +1 -1
  22. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts +4 -5
  23. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts.map +1 -1
  24. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js +15 -14
  25. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js.map +1 -1
  26. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts +4 -7
  27. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
  28. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js +77 -124
  29. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
  30. package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts +2 -2
  31. package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts.map +1 -1
  32. package/dist/lib/custom/AIAgents/new-agent-dialog.service.js +10 -11
  33. package/dist/lib/custom/AIAgents/new-agent-dialog.service.js.map +1 -1
  34. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts +4 -5
  35. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts.map +1 -1
  36. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js +18 -18
  37. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js.map +1 -1
  38. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts +4 -5
  39. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts.map +1 -1
  40. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js +59 -80
  41. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js.map +1 -1
  42. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts +4 -5
  43. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts.map +1 -1
  44. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js +23 -24
  45. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js.map +1 -1
  46. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts.map +1 -1
  47. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js +862 -906
  48. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
  49. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js +4 -5
  50. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js.map +1 -1
  51. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +448 -499
  52. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
  53. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts +2 -2
  54. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts.map +1 -1
  55. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js +6 -11
  56. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js.map +1 -1
  57. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts +4 -5
  58. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts.map +1 -1
  59. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js +16 -15
  60. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js.map +1 -1
  61. package/dist/lib/custom/Actions/action-execution-log-form.component.js +160 -166
  62. package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
  63. package/dist/lib/custom/Actions/action-form.component.d.ts.map +1 -1
  64. package/dist/lib/custom/Actions/action-form.component.js +93 -94
  65. package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
  66. package/dist/lib/custom/Entities/entity-form.component.js +2 -2
  67. package/dist/lib/custom/Lists/list-form.component.js +61 -63
  68. package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
  69. package/dist/lib/custom/Queries/query-category-dialog.component.js +33 -59
  70. package/dist/lib/custom/Queries/query-category-dialog.component.js.map +1 -1
  71. package/dist/lib/custom/Queries/query-form.component.js +354 -360
  72. package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
  73. package/dist/lib/custom/Queries/query-run-dialog.component.js +62 -71
  74. package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
  75. package/dist/lib/custom/Templates/template-param-dialog.component.js +128 -124
  76. package/dist/lib/custom/Templates/template-param-dialog.component.js.map +1 -1
  77. package/dist/lib/custom/Templates/template-params-grid.component.d.ts +45 -22
  78. package/dist/lib/custom/Templates/template-params-grid.component.d.ts.map +1 -1
  79. package/dist/lib/custom/Templates/template-params-grid.component.js +380 -384
  80. package/dist/lib/custom/Templates/template-params-grid.component.js.map +1 -1
  81. package/dist/lib/custom/Templates/templates-form.component.js +34 -36
  82. package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
  83. package/dist/lib/custom/Tests/test-form.component.js +9 -10
  84. package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
  85. package/dist/lib/custom/Tests/test-run-feedback-form.component.js +4 -4
  86. package/dist/lib/custom/Tests/test-run-feedback-form.component.js.map +1 -1
  87. package/dist/lib/custom/Tests/test-run-form.component.js +8 -8
  88. package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
  89. package/dist/lib/custom/Tests/test-suite-form.component.js +7 -8
  90. package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
  91. package/dist/lib/custom/Tests/test-suite-run-form.component.js +7 -8
  92. package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
  93. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js +381 -409
  94. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js.map +1 -1
  95. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.d.ts.map +1 -1
  96. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js +1 -1
  97. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js.map +1 -1
  98. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts.map +1 -1
  99. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js +74 -63
  100. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js.map +1 -1
  101. package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js +10 -10
  102. package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js.map +1 -1
  103. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts.map +1 -1
  104. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js +352 -332
  105. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
  106. package/dist/lib/custom/custom-forms.module.d.ts +22 -27
  107. package/dist/lib/custom/custom-forms.module.d.ts.map +1 -1
  108. package/dist/lib/custom/custom-forms.module.js +51 -81
  109. package/dist/lib/custom/custom-forms.module.js.map +1 -1
  110. package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts +4 -5
  111. package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts.map +1 -1
  112. package/dist/lib/custom/shared/entity-selector-dialog.component.js +59 -66
  113. package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
  114. package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.d.ts.map +1 -1
  115. package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js +176 -156
  116. package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js.map +1 -1
  117. package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.d.ts +10 -0
  118. package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.d.ts.map +1 -0
  119. package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.js +65 -0
  120. package/dist/lib/generated/Entities/MJAIAgentClientTool/mjaiagentclienttool.form.component.js.map +1 -0
  121. package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.d.ts +10 -0
  122. package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.d.ts.map +1 -0
  123. package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.js +89 -0
  124. package/dist/lib/generated/Entities/MJAIClientToolDefinition/mjaiclienttooldefinition.form.component.js.map +1 -0
  125. package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.d.ts.map +1 -1
  126. package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.js +80 -44
  127. package/dist/lib/generated/Entities/MJAIModel/mjaimodel.form.component.js.map +1 -1
  128. package/dist/lib/generated/Entities/MJContentItemTag/mjcontentitemtag.form.component.js +11 -8
  129. package/dist/lib/generated/Entities/MJContentItemTag/mjcontentitemtag.form.component.js.map +1 -1
  130. package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.d.ts.map +1 -1
  131. package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.js +39 -24
  132. package/dist/lib/generated/Entities/MJContentSource/mjcontentsource.form.component.js.map +1 -1
  133. package/dist/lib/generated/Entities/MJContentType/mjcontenttype.form.component.d.ts.map +1 -1
  134. package/dist/lib/generated/Entities/MJContentType/mjcontenttype.form.component.js +35 -17
  135. package/dist/lib/generated/Entities/MJContentType/mjcontenttype.form.component.js.map +1 -1
  136. package/dist/lib/generated/Entities/MJDuplicateRunDetail/mjduplicaterundetail.form.component.js +15 -13
  137. package/dist/lib/generated/Entities/MJDuplicateRunDetail/mjduplicaterundetail.form.component.js.map +1 -1
  138. package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.d.ts.map +1 -1
  139. package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.js +7 -9
  140. package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.js.map +1 -1
  141. package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.js +28 -24
  142. package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.js.map +1 -1
  143. package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.d.ts.map +1 -1
  144. package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.js +21 -9
  145. package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.js.map +1 -1
  146. package/dist/lib/generated/Entities/MJVectorDatabase/mjvectordatabase.form.component.js +19 -17
  147. package/dist/lib/generated/Entities/MJVectorDatabase/mjvectordatabase.form.component.js.map +1 -1
  148. package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.d.ts.map +1 -1
  149. package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.js +82 -14
  150. package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.js.map +1 -1
  151. package/dist/lib/generated/generated-forms.module.d.ts +280 -279
  152. package/dist/lib/generated/generated-forms.module.d.ts.map +1 -1
  153. package/dist/lib/generated/generated-forms.module.js +102 -142
  154. package/dist/lib/generated/generated-forms.module.js.map +1 -1
  155. package/dist/lib/shared/components/template-editor.component.js +14 -15
  156. package/dist/lib/shared/components/template-editor.component.js.map +1 -1
  157. package/package.json +34 -41
@@ -1 +1 @@
1
- {"version":3,"file":"action-execution-log-form.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/Actions/action-execution-log-form.component.ts","../../../../src/lib/custom/Actions/action-execution-log-form.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, OnInit } from '@angular/core';\nimport { MJActionExecutionLogEntity, MJActionEntity, MJUserEntity } from '@memberjunction/core-entities';\nimport { RegisterClass, ParseJSONRecursive, ParseJSONOptions } from '@memberjunction/global';\nimport { BaseFormComponent } from '@memberjunction/ng-base-forms';\nimport { SharedService } from '@memberjunction/ng-shared';\nimport { Metadata, CompositeKey } from '@memberjunction/core';\nimport { MJActionExecutionLogFormComponent } from '../../generated/Entities/MJActionExecutionLog/mjactionexecutionlog.form.component';\n\ninterface ActionParameter {\n Name: string;\n Value: unknown;\n Type: 'Input' | 'Output' | 'Both';\n}\n\n@RegisterClass(BaseFormComponent, 'MJ: Action Execution Logs')\n@Component({\n standalone: false,\n selector: 'mj-action-execution-log-form',\n templateUrl: './action-execution-log-form.component.html',\n styleUrls: ['./action-execution-log-form.component.css']\n})\nexport class MJActionExecutionLogFormComponentExtended extends MJActionExecutionLogFormComponent implements OnInit {\n public record!: MJActionExecutionLogEntity;\n \n // Related entities\n public action: MJActionEntity | null = null;\n public user: MJUserEntity | null = null;\n \n // Parameter counts for visibility\n public hasInputParams = false;\n public hasOutputParams = false;\n public hasBothParams = false;\n \n // Loading states\n public isLoadingAction = false;\n public isLoadingUser = false;\n \n // Formatted JSON fields\n public formattedParams: string = '';\n public formattedMessage: string = '';\n public formattedInputParams: string = '';\n public formattedOutputParams: string = '';\n public formattedBothParams: string = '';\n \n // UI state\n public expandedSections = {\n execution: true,\n input: true,\n output: true,\n inputParams: true,\n outputParams: true,\n bothParams: true,\n metadata: false\n };\n\n async ngOnInit() {\n await super.ngOnInit();\n \n if (this.record?.IsSaved) {\n // Load related data\n await Promise.all([\n this.loadAction(),\n this.loadUser()\n ]);\n \n // Format JSON fields\n this.formatJSONFields();\n this.cdr.detectChanges();\n }\n }\n\n private async loadAction() {\n if (!this.record.ActionID) return;\n \n this.isLoadingAction = true;\n try {\n const md = new Metadata();\n this.action = await md.GetEntityObject<MJActionEntity>('MJ: Actions');\n if (this.action) {\n await this.action.Load(this.record.ActionID);\n }\n } catch (error) {\n console.error('Error loading action:', error);\n } finally {\n this.isLoadingAction = false;\n }\n }\n\n private async loadUser() {\n if (!this.record.UserID) return;\n \n this.isLoadingUser = true;\n try {\n const md = new Metadata();\n this.user = await md.GetEntityObject<MJUserEntity>('MJ: Users');\n if (this.user) {\n await this.user.Load(this.record.UserID);\n }\n } catch (error) {\n console.error('Error loading user:', error);\n } finally {\n this.isLoadingUser = false;\n }\n }\n\n private formatJSONFields() {\n const parseOptions: ParseJSONOptions = {\n extractInlineJson: true,\n maxDepth: 100,\n debug: false\n };\n\n // Format Params with recursive JSON parsing\n if (this.record.Params) {\n try {\n const parsed = JSON.parse(this.record.Params);\n const recursivelyParsed = ParseJSONRecursive(parsed, parseOptions);\n this.formattedParams = JSON.stringify(recursivelyParsed, null, 2);\n \n // Format parameter-specific views if params is an array of ActionParameter objects\n if (Array.isArray(recursivelyParsed)) {\n this.formatParameterSections(recursivelyParsed as ActionParameter[]);\n }\n } catch (e) {\n this.formattedParams = this.record.Params;\n }\n }\n \n // Format Message field with recursive JSON parsing\n if (this.record.Message) {\n try {\n const parsed = JSON.parse(this.record.Message);\n const recursivelyParsed = ParseJSONRecursive(parsed, parseOptions);\n this.formattedMessage = JSON.stringify(recursivelyParsed, null, 2);\n } catch (e) {\n this.formattedMessage = this.record.Message;\n }\n }\n }\n\n private formatParameterSections(params: ActionParameter[]) {\n // Reset visibility flags\n this.hasInputParams = false;\n this.hasOutputParams = false;\n this.hasBothParams = false;\n \n // Arrays to collect parameters by type\n const inputParams: ActionParameter[] = [];\n const outputParams: ActionParameter[] = [];\n const bothParams: ActionParameter[] = [];\n \n // Sort parameters by type\n for (const param of params) {\n switch (param.Type) {\n case 'Input':\n inputParams.push(param);\n this.hasInputParams = true;\n break;\n case 'Output':\n outputParams.push(param);\n this.hasOutputParams = true;\n break;\n case 'Both':\n bothParams.push(param);\n this.hasBothParams = true;\n break;\n }\n }\n \n // Format input parameters\n if (inputParams.length > 0) {\n this.formattedInputParams = JSON.stringify(inputParams, null, 2);\n }\n \n // Format output parameters\n if (outputParams.length > 0) {\n this.formattedOutputParams = JSON.stringify(outputParams, null, 2);\n }\n \n // Format both parameters\n if (bothParams.length > 0) {\n this.formattedBothParams = JSON.stringify(bothParams, null, 2);\n }\n }\n\n // Navigation\n navigateToEntity(entityName: string, recordId: string | null) {\n if (!recordId) return;\n SharedService.Instance.OpenEntityRecord(entityName, CompositeKey.FromID(recordId));\n }\n\n navigateToAction() {\n if (this.record.ActionID) {\n this.navigateToEntity('MJ: Actions', this.record.ActionID);\n }\n }\n\n navigateToUser() {\n if (this.record.UserID) {\n this.navigateToEntity('MJ: Users', this.record.UserID);\n }\n }\n\n // UI Helpers\n getExecutionDuration(): number {\n if (!this.record.StartedAt || !this.record.EndedAt) return 0;\n return new Date(this.record.EndedAt).getTime() - new Date(this.record.StartedAt).getTime();\n }\n\n formatDuration(ms: number): string {\n if (ms < 1000) return `${ms}ms`;\n if (ms < 60000) return `${(ms / 1000).toFixed(1)}s`;\n if (ms < 3600000) return `${(ms / 60000).toFixed(1)}m`;\n return `${(ms / 3600000).toFixed(1)}h`;\n }\n\n getResultCodeColor(): string {\n const code = this.record.ResultCode?.toLowerCase();\n if (code === 'success' || code === 'ok' || code === 'completed' || code === '200') {\n return 'var(--mj-status-success)';\n }\n return 'var(--mj-status-error)';\n }\n\n getResultCodeIcon(): string {\n const code = this.record.ResultCode?.toLowerCase();\n if (code === 'success' || code === 'ok' || code === 'completed' || code === '200') {\n return 'fa-check-circle';\n }\n return 'fa-times-circle';\n }\n\n // Save handlers for JSON fields\n async saveParams() {\n if (!this.EditMode) return;\n \n try {\n // Validate JSON\n JSON.parse(this.formattedParams);\n this.record.Params = this.formattedParams;\n await this.record.Save();\n } catch (e) {\n console.error('Invalid JSON in Params field:', e);\n // Could show notification here\n }\n }\n\n async saveMessage() {\n if (!this.EditMode) return;\n \n try {\n // Validate JSON\n JSON.parse(this.formattedMessage);\n this.record.Message = this.formattedMessage;\n await this.record.Save();\n } catch (e) {\n console.error('Invalid JSON in Message field:', e);\n // Could show notification here\n }\n }\n \n async copyToClipboard(text: string) {\n try {\n await navigator.clipboard.writeText(text);\n // Could show a toast notification here\n } catch (err) {\n console.error('Failed to copy to clipboard:', err);\n }\n }\n}\n","<div class=\"record-form-container action-execution-log-form\" style=\"height: 100%; display: flex; flex-direction: column;\">\n <div class=\"record-form\" style=\"display: flex; flex-direction: column; height: 100%; overflow: hidden;\">\n <!-- Header -->\n <div class=\"header\">\n <div class=\"header-content\">\n <div class=\"header-left\">\n <div class=\"icon-wrapper\">\n <i class=\"fas fa-terminal\"></i>\n </div>\n <div class=\"header-info\">\n <h2>Action Execution Log</h2>\n <div class=\"meta-info\">\n @if (action) {\n <span class=\"action-name\">{{ action.Name }}</span>\n }\n <span class=\"log-id\">{{ record.ID }}</span>\n </div>\n </div>\n </div>\n <div class=\"header-right\">\n <div class=\"status-badge\" [attr.data-status]=\"record.ResultCode?.toLowerCase()\">\n <i class=\"fas\" [ngClass]=\"getResultCodeIcon()\"></i>\n {{ record.ResultCode || 'UNKNOWN' }}\n </div>\n <div class=\"execution-time\">\n <i class=\"fas fa-clock\"></i>\n {{ formatDuration(getExecutionDuration()) }}\n </div>\n </div>\n </div>\n <div class=\"header-stats\">\n <div class=\"stat\">\n <span class=\"label\">Started</span>\n <span class=\"value\">{{ record.StartedAt | date:'short' }}</span>\n </div>\n @if (record.EndedAt) {\n <div class=\"stat\">\n <span class=\"label\">Ended</span>\n <span class=\"value\">{{ record.EndedAt | date:'short' }}</span>\n </div>\n }\n @if (action) {\n <div class=\"stat\">\n <span class=\"label\">Action</span>\n <span class=\"value\">\n <button class=\"btn-link\" (click)=\"navigateToAction()\">\n {{ action.Name }}\n <i class=\"fas fa-external-link-alt\"></i>\n </button>\n </span>\n </div>\n }\n @if (user) {\n <div class=\"stat\">\n <span class=\"label\">User</span>\n <span class=\"value\">\n <button class=\"btn-link\" (click)=\"navigateToUser()\">\n {{ user.Name }}\n <i class=\"fas fa-external-link-alt\"></i>\n </button>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Content Area -->\n <div class=\"content-area\">\n <kendo-panelbar [keepItemContent]=\"true\">\n <!-- Execution Details -->\n <kendo-panelbar-item title=\"Execution Details\" [expanded]=\"true\">\n <ng-template kendoPanelBarContent>\n <div class=\"details-grid\">\n <div class=\"detail-item\">\n <label>Execution ID</label>\n <span class=\"monospace\">{{ record.ID }}</span>\n </div>\n <div class=\"detail-item\">\n <label>Action ID</label>\n <span class=\"monospace\">{{ record.ActionID }}</span>\n </div>\n <div class=\"detail-item\">\n <label>User ID</label>\n <span class=\"monospace\">{{ record.UserID }}</span>\n </div>\n <div class=\"detail-item\">\n <label>Result Code</label>\n <span class=\"detail-value\">\n <i class=\"fas\" [ngClass]=\"getResultCodeIcon()\" [style.color]=\"getResultCodeColor()\"></i>\n <span [style.color]=\"getResultCodeColor()\">{{ record.ResultCode || 'N/A' }}</span>\n </span>\n </div>\n <div class=\"detail-item\">\n <label>Duration</label>\n <span>{{ formatDuration(getExecutionDuration()) }}</span>\n </div>\n <div class=\"detail-item\">\n <label>Retention Period</label>\n <span>{{ record.RetentionPeriod ? record.RetentionPeriod + ' days' : 'Indefinite' }}</span>\n </div>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n\n <!-- Input Parameters Only -->\n @if (hasInputParams && formattedInputParams) {\n <kendo-panelbar-item title=\"Input Parameters\" [expanded]=\"expandedSections.inputParams\">\n <ng-template kendoPanelBarContent>\n <div class=\"json-viewer\">\n <div class=\"json-toolbar\">\n <span class=\"json-label\">JSON (Input Parameters Only)</span>\n <button class=\"btn-icon\" title=\"Copy JSON\" (click)=\"copyToClipboard(formattedInputParams)\">\n <i class=\"fas fa-copy\"></i>\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedInputParams\"\n name=\"formattedInputParams\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n\n <!-- Output Parameters Only -->\n @if (hasOutputParams && formattedOutputParams) {\n <kendo-panelbar-item title=\"Output Parameters\" [expanded]=\"expandedSections.outputParams\">\n <ng-template kendoPanelBarContent>\n <div class=\"json-viewer\">\n <div class=\"json-toolbar\">\n <span class=\"json-label\">JSON (Output Parameters Only)</span>\n <button class=\"btn-icon\" title=\"Copy JSON\" (click)=\"copyToClipboard(formattedOutputParams)\">\n <i class=\"fas fa-copy\"></i>\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedOutputParams\"\n name=\"formattedOutputParams\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n\n <!-- Input+Output Parameters -->\n @if (hasBothParams && formattedBothParams) {\n <kendo-panelbar-item title=\"Input+Output Parameters\" [expanded]=\"expandedSections.bothParams\">\n <ng-template kendoPanelBarContent>\n <div class=\"json-viewer\">\n <div class=\"json-toolbar\">\n <span class=\"json-label\">JSON (Input+Output Parameters)</span>\n <button class=\"btn-icon\" title=\"Copy JSON\" (click)=\"copyToClipboard(formattedBothParams)\">\n <i class=\"fas fa-copy\"></i>\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedBothParams\"\n name=\"formattedBothParams\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n\n <!-- Output Message -->\n @if (record.Message) {\n <kendo-panelbar-item title=\"Output Message\" [expanded]=\"expandedSections.output\">\n <ng-template kendoPanelBarContent>\n <div class=\"json-viewer\">\n <div class=\"json-toolbar\">\n <span class=\"json-label\">JSON</span>\n <button class=\"btn-icon\" title=\"Copy JSON\" (click)=\"copyToClipboard(formattedMessage)\">\n <i class=\"fas fa-copy\"></i>\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedMessage\"\n name=\"formattedMessage\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n\n <!-- Empty States for missing data -->\n @if (!record.Params && !record.Message && !hasInputParams && !hasOutputParams && !hasBothParams) {\n <kendo-panelbar-item title=\"Execution Data\" [expanded]=\"true\">\n <ng-template kendoPanelBarContent>\n <div class=\"empty-state\">\n <i class=\"fas fa-inbox\"></i>\n <p>No execution data recorded</p>\n </div>\n </ng-template>\n </kendo-panelbar-item>\n }\n </kendo-panelbar>\n </div>\n </div>\n</div>"]}
1
+ {"version":3,"file":"action-execution-log-form.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/Actions/action-execution-log-form.component.ts","../../../../src/lib/custom/Actions/action-execution-log-form.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, OnInit } from '@angular/core';\nimport { MJActionExecutionLogEntity, MJActionEntity, MJUserEntity } from '@memberjunction/core-entities';\nimport { RegisterClass, ParseJSONRecursive, ParseJSONOptions } from '@memberjunction/global';\nimport { BaseFormComponent } from '@memberjunction/ng-base-forms';\nimport { SharedService } from '@memberjunction/ng-shared';\nimport { Metadata, CompositeKey } from '@memberjunction/core';\nimport { MJActionExecutionLogFormComponent } from '../../generated/Entities/MJActionExecutionLog/mjactionexecutionlog.form.component';\n\ninterface ActionParameter {\n Name: string;\n Value: unknown;\n Type: 'Input' | 'Output' | 'Both';\n}\n\n@RegisterClass(BaseFormComponent, 'MJ: Action Execution Logs')\n@Component({\n standalone: false,\n selector: 'mj-action-execution-log-form',\n templateUrl: './action-execution-log-form.component.html',\n styleUrls: ['./action-execution-log-form.component.css']\n})\nexport class MJActionExecutionLogFormComponentExtended extends MJActionExecutionLogFormComponent implements OnInit {\n public record!: MJActionExecutionLogEntity;\n \n // Related entities\n public action: MJActionEntity | null = null;\n public user: MJUserEntity | null = null;\n \n // Parameter counts for visibility\n public hasInputParams = false;\n public hasOutputParams = false;\n public hasBothParams = false;\n \n // Loading states\n public isLoadingAction = false;\n public isLoadingUser = false;\n \n // Formatted JSON fields\n public formattedParams: string = '';\n public formattedMessage: string = '';\n public formattedInputParams: string = '';\n public formattedOutputParams: string = '';\n public formattedBothParams: string = '';\n \n // UI state\n public expandedSections = {\n execution: true,\n input: true,\n output: true,\n inputParams: true,\n outputParams: true,\n bothParams: true,\n metadata: false\n };\n\n async ngOnInit() {\n await super.ngOnInit();\n \n if (this.record?.IsSaved) {\n // Load related data\n await Promise.all([\n this.loadAction(),\n this.loadUser()\n ]);\n \n // Format JSON fields\n this.formatJSONFields();\n this.cdr.detectChanges();\n }\n }\n\n private async loadAction() {\n if (!this.record.ActionID) return;\n \n this.isLoadingAction = true;\n try {\n const md = new Metadata();\n this.action = await md.GetEntityObject<MJActionEntity>('MJ: Actions');\n if (this.action) {\n await this.action.Load(this.record.ActionID);\n }\n } catch (error) {\n console.error('Error loading action:', error);\n } finally {\n this.isLoadingAction = false;\n }\n }\n\n private async loadUser() {\n if (!this.record.UserID) return;\n \n this.isLoadingUser = true;\n try {\n const md = new Metadata();\n this.user = await md.GetEntityObject<MJUserEntity>('MJ: Users');\n if (this.user) {\n await this.user.Load(this.record.UserID);\n }\n } catch (error) {\n console.error('Error loading user:', error);\n } finally {\n this.isLoadingUser = false;\n }\n }\n\n private formatJSONFields() {\n const parseOptions: ParseJSONOptions = {\n extractInlineJson: true,\n maxDepth: 100,\n debug: false\n };\n\n // Format Params with recursive JSON parsing\n if (this.record.Params) {\n try {\n const parsed = JSON.parse(this.record.Params);\n const recursivelyParsed = ParseJSONRecursive(parsed, parseOptions);\n this.formattedParams = JSON.stringify(recursivelyParsed, null, 2);\n \n // Format parameter-specific views if params is an array of ActionParameter objects\n if (Array.isArray(recursivelyParsed)) {\n this.formatParameterSections(recursivelyParsed as ActionParameter[]);\n }\n } catch (e) {\n this.formattedParams = this.record.Params;\n }\n }\n \n // Format Message field with recursive JSON parsing\n if (this.record.Message) {\n try {\n const parsed = JSON.parse(this.record.Message);\n const recursivelyParsed = ParseJSONRecursive(parsed, parseOptions);\n this.formattedMessage = JSON.stringify(recursivelyParsed, null, 2);\n } catch (e) {\n this.formattedMessage = this.record.Message;\n }\n }\n }\n\n private formatParameterSections(params: ActionParameter[]) {\n // Reset visibility flags\n this.hasInputParams = false;\n this.hasOutputParams = false;\n this.hasBothParams = false;\n \n // Arrays to collect parameters by type\n const inputParams: ActionParameter[] = [];\n const outputParams: ActionParameter[] = [];\n const bothParams: ActionParameter[] = [];\n \n // Sort parameters by type\n for (const param of params) {\n switch (param.Type) {\n case 'Input':\n inputParams.push(param);\n this.hasInputParams = true;\n break;\n case 'Output':\n outputParams.push(param);\n this.hasOutputParams = true;\n break;\n case 'Both':\n bothParams.push(param);\n this.hasBothParams = true;\n break;\n }\n }\n \n // Format input parameters\n if (inputParams.length > 0) {\n this.formattedInputParams = JSON.stringify(inputParams, null, 2);\n }\n \n // Format output parameters\n if (outputParams.length > 0) {\n this.formattedOutputParams = JSON.stringify(outputParams, null, 2);\n }\n \n // Format both parameters\n if (bothParams.length > 0) {\n this.formattedBothParams = JSON.stringify(bothParams, null, 2);\n }\n }\n\n // Navigation\n navigateToEntity(entityName: string, recordId: string | null) {\n if (!recordId) return;\n SharedService.Instance.OpenEntityRecord(entityName, CompositeKey.FromID(recordId));\n }\n\n navigateToAction() {\n if (this.record.ActionID) {\n this.navigateToEntity('MJ: Actions', this.record.ActionID);\n }\n }\n\n navigateToUser() {\n if (this.record.UserID) {\n this.navigateToEntity('MJ: Users', this.record.UserID);\n }\n }\n\n // UI Helpers\n getExecutionDuration(): number {\n if (!this.record.StartedAt || !this.record.EndedAt) return 0;\n return new Date(this.record.EndedAt).getTime() - new Date(this.record.StartedAt).getTime();\n }\n\n formatDuration(ms: number): string {\n if (ms < 1000) return `${ms}ms`;\n if (ms < 60000) return `${(ms / 1000).toFixed(1)}s`;\n if (ms < 3600000) return `${(ms / 60000).toFixed(1)}m`;\n return `${(ms / 3600000).toFixed(1)}h`;\n }\n\n getResultCodeColor(): string {\n const code = this.record.ResultCode?.toLowerCase();\n if (code === 'success' || code === 'ok' || code === 'completed' || code === '200') {\n return 'var(--mj-status-success)';\n }\n return 'var(--mj-status-error)';\n }\n\n getResultCodeIcon(): string {\n const code = this.record.ResultCode?.toLowerCase();\n if (code === 'success' || code === 'ok' || code === 'completed' || code === '200') {\n return 'fa-check-circle';\n }\n return 'fa-times-circle';\n }\n\n // Save handlers for JSON fields\n async saveParams() {\n if (!this.EditMode) return;\n \n try {\n // Validate JSON\n JSON.parse(this.formattedParams);\n this.record.Params = this.formattedParams;\n await this.record.Save();\n } catch (e) {\n console.error('Invalid JSON in Params field:', e);\n // Could show notification here\n }\n }\n\n async saveMessage() {\n if (!this.EditMode) return;\n \n try {\n // Validate JSON\n JSON.parse(this.formattedMessage);\n this.record.Message = this.formattedMessage;\n await this.record.Save();\n } catch (e) {\n console.error('Invalid JSON in Message field:', e);\n // Could show notification here\n }\n }\n \n async copyToClipboard(text: string) {\n try {\n await navigator.clipboard.writeText(text);\n // Could show a toast notification here\n } catch (err) {\n console.error('Failed to copy to clipboard:', err);\n }\n }\n}\n","<div class=\"record-form-container action-execution-log-form\" style=\"height: 100%; display: flex; flex-direction: column;\">\n <div class=\"record-form\" style=\"display: flex; flex-direction: column; height: 100%; overflow: hidden;\">\n <!-- Header -->\n <div class=\"header\">\n <div class=\"header-content\">\n <div class=\"header-left\">\n <div class=\"icon-wrapper\">\n <i class=\"fas fa-terminal\"></i>\n </div>\n <div class=\"header-info\">\n <h2>Action Execution Log</h2>\n <div class=\"meta-info\">\n @if (action) {\n <span class=\"action-name\">{{ action.Name }}</span>\n }\n <span class=\"log-id\">{{ record.ID }}</span>\n </div>\n </div>\n </div>\n <div class=\"header-right\">\n <div class=\"status-badge\" [attr.data-status]=\"record.ResultCode?.toLowerCase()\">\n <i class=\"fas\" [ngClass]=\"getResultCodeIcon()\"></i>\n {{ record.ResultCode || 'UNKNOWN' }}\n </div>\n <div class=\"execution-time\">\n <i class=\"fas fa-clock\"></i>\n {{ formatDuration(getExecutionDuration()) }}\n </div>\n </div>\n </div>\n <div class=\"header-stats\">\n <div class=\"stat\">\n <span class=\"label\">Started</span>\n <span class=\"value\">{{ record.StartedAt | date:'short' }}</span>\n </div>\n @if (record.EndedAt) {\n <div class=\"stat\">\n <span class=\"label\">Ended</span>\n <span class=\"value\">{{ record.EndedAt | date:'short' }}</span>\n </div>\n }\n @if (action) {\n <div class=\"stat\">\n <span class=\"label\">Action</span>\n <span class=\"value\">\n <button class=\"btn-link\" (click)=\"navigateToAction()\">\n {{ action.Name }}\n <i class=\"fas fa-external-link-alt\"></i>\n </button>\n </span>\n </div>\n }\n @if (user) {\n <div class=\"stat\">\n <span class=\"label\">User</span>\n <span class=\"value\">\n <button class=\"btn-link\" (click)=\"navigateToUser()\">\n {{ user.Name }}\n <i class=\"fas fa-external-link-alt\"></i>\n </button>\n </span>\n </div>\n }\n </div>\n </div>\n\n <!-- Content Area -->\n <div class=\"content-area\">\n <div class=\"accordion-container\">\n <!-- Execution Details -->\n <mj-accordion-panel [Expanded]=\"true\">\n <ng-template mjAccordionTitle>\n <i class=\"fas fa-info-circle\"></i> Execution Details\n </ng-template>\n <div class=\"details-grid\">\n <div class=\"detail-item\">\n <label>Execution ID</label>\n <span class=\"monospace\">{{ record.ID }}</span>\n </div>\n <div class=\"detail-item\">\n <label>Action ID</label>\n <span class=\"monospace\">{{ record.ActionID }}</span>\n </div>\n <div class=\"detail-item\">\n <label>User ID</label>\n <span class=\"monospace\">{{ record.UserID }}</span>\n </div>\n <div class=\"detail-item\">\n <label>Result Code</label>\n <span class=\"detail-value\">\n <i class=\"fas\" [ngClass]=\"getResultCodeIcon()\" [style.color]=\"getResultCodeColor()\"></i>\n <span [style.color]=\"getResultCodeColor()\">{{ record.ResultCode || 'N/A' }}</span>\n </span>\n </div>\n <div class=\"detail-item\">\n <label>Duration</label>\n <span>{{ formatDuration(getExecutionDuration()) }}</span>\n </div>\n <div class=\"detail-item\">\n <label>Retention Period</label>\n <span>{{ record.RetentionPeriod ? record.RetentionPeriod + ' days' : 'Indefinite' }}</span>\n </div>\n </div>\n </mj-accordion-panel>\n\n <!-- Input Parameters Only -->\n @if (hasInputParams && formattedInputParams) {\n <mj-accordion-panel [Expanded]=\"expandedSections.inputParams\">\n <ng-template mjAccordionTitle>\n <i class=\"fas fa-sign-in-alt\"></i> Input Parameters\n </ng-template>\n <div class=\"json-viewer\">\n <div class=\"json-toolbar\">\n <span class=\"json-label\">JSON (Input Parameters Only)</span>\n <button class=\"btn-icon\" title=\"Copy JSON\" (click)=\"copyToClipboard(formattedInputParams)\">\n <i class=\"fas fa-copy\"></i>\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedInputParams\"\n name=\"formattedInputParams\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </mj-accordion-panel>\n }\n\n <!-- Output Parameters Only -->\n @if (hasOutputParams && formattedOutputParams) {\n <mj-accordion-panel [Expanded]=\"expandedSections.outputParams\">\n <ng-template mjAccordionTitle>\n <i class=\"fas fa-sign-out-alt\"></i> Output Parameters\n </ng-template>\n <div class=\"json-viewer\">\n <div class=\"json-toolbar\">\n <span class=\"json-label\">JSON (Output Parameters Only)</span>\n <button class=\"btn-icon\" title=\"Copy JSON\" (click)=\"copyToClipboard(formattedOutputParams)\">\n <i class=\"fas fa-copy\"></i>\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedOutputParams\"\n name=\"formattedOutputParams\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </mj-accordion-panel>\n }\n\n <!-- Input+Output Parameters -->\n @if (hasBothParams && formattedBothParams) {\n <mj-accordion-panel [Expanded]=\"expandedSections.bothParams\">\n <ng-template mjAccordionTitle>\n <i class=\"fas fa-exchange-alt\"></i> Input+Output Parameters\n </ng-template>\n <div class=\"json-viewer\">\n <div class=\"json-toolbar\">\n <span class=\"json-label\">JSON (Input+Output Parameters)</span>\n <button class=\"btn-icon\" title=\"Copy JSON\" (click)=\"copyToClipboard(formattedBothParams)\">\n <i class=\"fas fa-copy\"></i>\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedBothParams\"\n name=\"formattedBothParams\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </mj-accordion-panel>\n }\n\n <!-- Output Message -->\n @if (record.Message) {\n <mj-accordion-panel [Expanded]=\"expandedSections.output\">\n <ng-template mjAccordionTitle>\n <i class=\"fas fa-comment-alt\"></i> Output Message\n </ng-template>\n <div class=\"json-viewer\">\n <div class=\"json-toolbar\">\n <span class=\"json-label\">JSON</span>\n <button class=\"btn-icon\" title=\"Copy JSON\" (click)=\"copyToClipboard(formattedMessage)\">\n <i class=\"fas fa-copy\"></i>\n </button>\n </div>\n <mj-code-editor \n [(ngModel)]=\"formattedMessage\"\n name=\"formattedMessage\"\n [readonly]=\"true\"\n [language]=\"'json'\"\n [lineWrapping]=\"true\"\n style=\"height: 300px; width: 100%;\">\n </mj-code-editor>\n </div>\n </mj-accordion-panel>\n }\n\n <!-- Empty States for missing data -->\n @if (!record.Params && !record.Message && !hasInputParams && !hasOutputParams && !hasBothParams) {\n <mj-accordion-panel [Expanded]=\"true\">\n <ng-template mjAccordionTitle>\n <i class=\"fas fa-database\"></i> Execution Data\n </ng-template>\n <div class=\"empty-state\">\n <i class=\"fas fa-inbox\"></i>\n <p>No execution data recorded</p>\n </div>\n </mj-accordion-panel>\n }\n </div>\n </div>\n </div>\n</div>"]}
@@ -1 +1 @@
1
- {"version":3,"file":"action-form.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/Actions/action-form.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action-form.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/Actions/action-form.component.ts"],"names":[],"mappings":"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"}