@memberjunction/ng-core-entity-forms 6.2.0-edge.0 → 6.2.0-edge.1

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 (275) hide show
  1. package/dist/lib/custom/AIAgentCategories/ai-agent-category-overview.panel.d.ts +1 -1
  2. package/dist/lib/custom/AIAgentCategories/ai-agent-category-overview.panel.js +2 -2
  3. package/dist/lib/custom/AIAgentCategories/ai-agent-category-overview.panel.js.map +1 -1
  4. package/dist/lib/custom/AIAgentSessions/ai-agent-session-form.component.js.map +1 -1
  5. package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts +90 -16
  6. package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts.map +1 -1
  7. package/dist/lib/custom/AIAgents/add-action-dialog.component.js +218 -70
  8. package/dist/lib/custom/AIAgents/add-action-dialog.component.js.map +1 -1
  9. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts +80 -16
  10. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts.map +1 -1
  11. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js +146 -46
  12. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js.map +1 -1
  13. package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts +329 -27
  14. package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
  15. package/dist/lib/custom/AIAgents/ai-agent-form.component.js +794 -262
  16. package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
  17. package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts +76 -0
  18. package/dist/lib/custom/AIAgents/ai-agent-management.service.d.ts.map +1 -1
  19. package/dist/lib/custom/AIAgents/ai-agent-management.service.js +77 -33
  20. package/dist/lib/custom/AIAgents/ai-agent-management.service.js.map +1 -1
  21. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts +69 -15
  22. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts.map +1 -1
  23. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js +182 -74
  24. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js.map +1 -1
  25. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts +105 -25
  26. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts.map +1 -1
  27. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js +272 -112
  28. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js.map +1 -1
  29. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts +32 -6
  30. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
  31. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js +71 -19
  32. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
  33. package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts +10 -0
  34. package/dist/lib/custom/AIAgents/new-agent-dialog.service.d.ts.map +1 -1
  35. package/dist/lib/custom/AIAgents/new-agent-dialog.service.js +27 -7
  36. package/dist/lib/custom/AIAgents/new-agent-dialog.service.js.map +1 -1
  37. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts +65 -15
  38. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts.map +1 -1
  39. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js +152 -52
  40. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js.map +1 -1
  41. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts +81 -15
  42. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts.map +1 -1
  43. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js +145 -45
  44. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js.map +1 -1
  45. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts +71 -17
  46. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts.map +1 -1
  47. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js +175 -67
  48. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js.map +1 -1
  49. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts +173 -27
  50. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.d.ts.map +1 -1
  51. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js +385 -93
  52. package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
  53. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.d.ts +64 -4
  54. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.d.ts.map +1 -1
  55. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js +129 -29
  56. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js.map +1 -1
  57. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts +260 -27
  58. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts.map +1 -1
  59. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +686 -238
  60. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
  61. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts +10 -0
  62. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.d.ts.map +1 -1
  63. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js +17 -9
  64. package/dist/lib/custom/AIPrompts/ai-prompt-management.service.js.map +1 -1
  65. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts +74 -16
  66. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.d.ts.map +1 -1
  67. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js +174 -58
  68. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js.map +1 -1
  69. package/dist/lib/custom/Actions/action-execution-log-form.component.d.ts +108 -14
  70. package/dist/lib/custom/Actions/action-execution-log-form.component.d.ts.map +1 -1
  71. package/dist/lib/custom/Actions/action-execution-log-form.component.js +258 -70
  72. package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
  73. package/dist/lib/custom/Actions/action-form.component.d.ts +198 -14
  74. package/dist/lib/custom/Actions/action-form.component.d.ts.map +1 -1
  75. package/dist/lib/custom/Actions/action-form.component.js +387 -107
  76. package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
  77. package/dist/lib/custom/BridgeProviders/bridge-provider-features.d.ts +12 -6
  78. package/dist/lib/custom/BridgeProviders/bridge-provider-features.d.ts.map +1 -1
  79. package/dist/lib/custom/BridgeProviders/bridge-provider-features.js +41 -29
  80. package/dist/lib/custom/BridgeProviders/bridge-provider-features.js.map +1 -1
  81. package/dist/lib/custom/BridgeProviders/bridge-provider-form.component.js +14 -14
  82. package/dist/lib/custom/BridgeProviders/bridge-provider-form.component.js.map +1 -1
  83. package/dist/lib/custom/Companies/company-overview.panel.d.ts +1 -1
  84. package/dist/lib/custom/Companies/company-overview.panel.js +2 -2
  85. package/dist/lib/custom/Companies/company-overview.panel.js.map +1 -1
  86. package/dist/lib/custom/Conversations/conversation-overview.panel.d.ts +1 -1
  87. package/dist/lib/custom/Conversations/conversation-overview.panel.js +2 -2
  88. package/dist/lib/custom/Conversations/conversation-overview.panel.js.map +1 -1
  89. package/dist/lib/custom/Employees/employee-overview.panel.d.ts +1 -1
  90. package/dist/lib/custom/Employees/employee-overview.panel.js +2 -2
  91. package/dist/lib/custom/Employees/employee-overview.panel.js.map +1 -1
  92. package/dist/lib/custom/Entities/entity-form.component.d.ts +209 -28
  93. package/dist/lib/custom/Entities/entity-form.component.d.ts.map +1 -1
  94. package/dist/lib/custom/Entities/entity-form.component.js +494 -138
  95. package/dist/lib/custom/Entities/entity-form.component.js.map +1 -1
  96. package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts +5 -1
  97. package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts.map +1 -1
  98. package/dist/lib/custom/EntityActions/entityaction.form.component.js +10 -2
  99. package/dist/lib/custom/EntityActions/entityaction.form.component.js.map +1 -1
  100. package/dist/lib/custom/Files/file-form.component.d.ts +1 -1
  101. package/dist/lib/custom/Files/file-form.component.js +2 -2
  102. package/dist/lib/custom/Files/file-form.component.js.map +1 -1
  103. package/dist/lib/custom/Lists/list-form.component.d.ts +300 -36
  104. package/dist/lib/custom/Lists/list-form.component.d.ts.map +1 -1
  105. package/dist/lib/custom/Lists/list-form.component.js +664 -208
  106. package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
  107. package/dist/lib/custom/MLModels/ml-model-view-models.d.ts +31 -0
  108. package/dist/lib/custom/MLModels/ml-model-view-models.d.ts.map +1 -1
  109. package/dist/lib/custom/MLModels/ml-model-view-models.js +52 -16
  110. package/dist/lib/custom/MLModels/ml-model-view-models.js.map +1 -1
  111. package/dist/lib/custom/MLModels/ps-model-detail.component.d.ts +107 -10
  112. package/dist/lib/custom/MLModels/ps-model-detail.component.d.ts.map +1 -1
  113. package/dist/lib/custom/MLModels/ps-model-detail.component.js +291 -101
  114. package/dist/lib/custom/MLModels/ps-model-detail.component.js.map +1 -1
  115. package/dist/lib/custom/Queries/query-form.component.d.ts +201 -26
  116. package/dist/lib/custom/Queries/query-form.component.d.ts.map +1 -1
  117. package/dist/lib/custom/Queries/query-form.component.js +429 -109
  118. package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
  119. package/dist/lib/custom/Queries/query-run-dialog.component.d.ts +107 -14
  120. package/dist/lib/custom/Queries/query-run-dialog.component.d.ts.map +1 -1
  121. package/dist/lib/custom/Queries/query-run-dialog.component.js +249 -79
  122. package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
  123. package/dist/lib/custom/RecordProcesses/record-process-form.component.d.ts +110 -4
  124. package/dist/lib/custom/RecordProcesses/record-process-form.component.d.ts.map +1 -1
  125. package/dist/lib/custom/RecordProcesses/record-process-form.component.js +858 -86
  126. package/dist/lib/custom/RecordProcesses/record-process-form.component.js.map +1 -1
  127. package/dist/lib/custom/SearchScopes/searchscope-form.component.d.ts +1 -1
  128. package/dist/lib/custom/SearchScopes/searchscope-form.component.js +4 -4
  129. package/dist/lib/custom/SearchScopes/searchscope-form.component.js.map +1 -1
  130. package/dist/lib/custom/SessionBridges/session-bridge-form.component.js.map +1 -1
  131. package/dist/lib/custom/Templates/template-param-dialog.component.d.ts +77 -13
  132. package/dist/lib/custom/Templates/template-param-dialog.component.d.ts.map +1 -1
  133. package/dist/lib/custom/Templates/template-param-dialog.component.js +196 -78
  134. package/dist/lib/custom/Templates/template-param-dialog.component.js.map +1 -1
  135. package/dist/lib/custom/Templates/template-params-grid.component.d.ts +49 -7
  136. package/dist/lib/custom/Templates/template-params-grid.component.d.ts.map +1 -1
  137. package/dist/lib/custom/Templates/template-params-grid.component.js +132 -44
  138. package/dist/lib/custom/Templates/template-params-grid.component.js.map +1 -1
  139. package/dist/lib/custom/Templates/templates-form.component.d.ts +142 -17
  140. package/dist/lib/custom/Templates/templates-form.component.d.ts.map +1 -1
  141. package/dist/lib/custom/Templates/templates-form.component.js +333 -113
  142. package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
  143. package/dist/lib/custom/Tests/entity-link-pill.component.d.ts +24 -4
  144. package/dist/lib/custom/Tests/entity-link-pill.component.d.ts.map +1 -1
  145. package/dist/lib/custom/Tests/entity-link-pill.component.js +64 -20
  146. package/dist/lib/custom/Tests/entity-link-pill.component.js.map +1 -1
  147. package/dist/lib/custom/Tests/test-form.component.d.ts +217 -27
  148. package/dist/lib/custom/Tests/test-form.component.d.ts.map +1 -1
  149. package/dist/lib/custom/Tests/test-form.component.js +549 -169
  150. package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
  151. package/dist/lib/custom/Tests/test-run-checks.d.ts +2 -0
  152. package/dist/lib/custom/Tests/test-run-checks.d.ts.map +1 -1
  153. package/dist/lib/custom/Tests/test-run-checks.js +5 -1
  154. package/dist/lib/custom/Tests/test-run-checks.js.map +1 -1
  155. package/dist/lib/custom/Tests/test-run-feedback-form.component.d.ts +2 -0
  156. package/dist/lib/custom/Tests/test-run-feedback-form.component.d.ts.map +1 -1
  157. package/dist/lib/custom/Tests/test-run-feedback-form.component.js +5 -1
  158. package/dist/lib/custom/Tests/test-run-feedback-form.component.js.map +1 -1
  159. package/dist/lib/custom/Tests/test-run-form.component.d.ts +146 -18
  160. package/dist/lib/custom/Tests/test-run-form.component.d.ts.map +1 -1
  161. package/dist/lib/custom/Tests/test-run-form.component.js +362 -106
  162. package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
  163. package/dist/lib/custom/Tests/test-suite-form.component.d.ts +390 -47
  164. package/dist/lib/custom/Tests/test-suite-form.component.d.ts.map +1 -1
  165. package/dist/lib/custom/Tests/test-suite-form.component.js +1015 -343
  166. package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
  167. package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts +214 -26
  168. package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts.map +1 -1
  169. package/dist/lib/custom/Tests/test-suite-run-form.component.js +535 -159
  170. package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
  171. package/dist/lib/custom/Users/user-overview.panel.d.ts +1 -1
  172. package/dist/lib/custom/Users/user-overview.panel.js +2 -2
  173. package/dist/lib/custom/Users/user-overview.panel.js.map +1 -1
  174. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.d.ts +208 -29
  175. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.d.ts.map +1 -1
  176. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js +446 -138
  177. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js.map +1 -1
  178. package/dist/lib/custom/ai-agent-run/ai-agent-run-cost.service.d.ts +6 -0
  179. package/dist/lib/custom/ai-agent-run/ai-agent-run-cost.service.d.ts.map +1 -1
  180. package/dist/lib/custom/ai-agent-run/ai-agent-run-cost.service.js +16 -4
  181. package/dist/lib/custom/ai-agent-run/ai-agent-run-cost.service.js.map +1 -1
  182. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.d.ts +50 -6
  183. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.d.ts.map +1 -1
  184. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js +84 -12
  185. package/dist/lib/custom/ai-agent-run/ai-agent-run-data.service.js.map +1 -1
  186. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.d.ts +89 -5
  187. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.d.ts.map +1 -1
  188. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.js +216 -70
  189. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.js.map +1 -1
  190. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.d.ts +62 -3
  191. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.d.ts.map +1 -1
  192. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.js +140 -42
  193. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.js.map +1 -1
  194. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts +81 -10
  195. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts.map +1 -1
  196. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js +165 -37
  197. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js.map +1 -1
  198. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts +140 -15
  199. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts.map +1 -1
  200. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js +326 -100
  201. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
  202. package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.d.ts +101 -15
  203. package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.d.ts.map +1 -1
  204. package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.js +281 -97
  205. package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.js.map +1 -1
  206. package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.d.ts +43 -25
  207. package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.d.ts.map +1 -1
  208. package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.js +100 -64
  209. package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.js.map +1 -1
  210. package/dist/lib/custom/ai-agent-run/flow/constellation.component.d.ts +14 -2
  211. package/dist/lib/custom/ai-agent-run/flow/constellation.component.d.ts.map +1 -1
  212. package/dist/lib/custom/ai-agent-run/flow/constellation.component.js +71 -53
  213. package/dist/lib/custom/ai-agent-run/flow/constellation.component.js.map +1 -1
  214. package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.d.ts +14 -2
  215. package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.d.ts.map +1 -1
  216. package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.js +70 -52
  217. package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.js.map +1 -1
  218. package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.d.ts +8 -0
  219. package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.d.ts.map +1 -1
  220. package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.js +22 -6
  221. package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.js.map +1 -1
  222. package/dist/lib/custom/ai-agent-run/flow/flowchart.component.d.ts +24 -2
  223. package/dist/lib/custom/ai-agent-run/flow/flowchart.component.d.ts.map +1 -1
  224. package/dist/lib/custom/ai-agent-run/flow/flowchart.component.js +91 -59
  225. package/dist/lib/custom/ai-agent-run/flow/flowchart.component.js.map +1 -1
  226. package/dist/lib/custom/ai-agent-run/flow/pan-zoom.d.ts +10 -2
  227. package/dist/lib/custom/ai-agent-run/flow/pan-zoom.d.ts.map +1 -1
  228. package/dist/lib/custom/ai-agent-run/flow/pan-zoom.js +33 -17
  229. package/dist/lib/custom/ai-agent-run/flow/pan-zoom.js.map +1 -1
  230. package/dist/lib/custom/ai-agent-run/flow/run-tree-flow-projection.d.ts +2 -0
  231. package/dist/lib/custom/ai-agent-run/flow/run-tree-flow-projection.d.ts.map +1 -1
  232. package/dist/lib/custom/ai-agent-run/flow/run-tree-flow-projection.js +34 -30
  233. package/dist/lib/custom/ai-agent-run/flow/run-tree-flow-projection.js.map +1 -1
  234. package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.d.ts +14 -2
  235. package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.d.ts.map +1 -1
  236. package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.js +69 -51
  237. package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.js.map +1 -1
  238. package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts +38 -12
  239. package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts.map +1 -1
  240. package/dist/lib/custom/shared/entity-selector-dialog.component.js +103 -51
  241. package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
  242. package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.d.ts.map +1 -1
  243. package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js +59 -51
  244. package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js.map +1 -1
  245. package/dist/lib/generated/Entities/MJAIVendor/mjaivendor.form.component.js +76 -74
  246. package/dist/lib/generated/Entities/MJAIVendor/mjaivendor.form.component.js.map +1 -1
  247. package/dist/lib/generated/Entities/MJProject/mjproject.form.component.js +27 -25
  248. package/dist/lib/generated/Entities/MJProject/mjproject.form.component.js.map +1 -1
  249. package/dist/lib/generated/Entities/MJUser/mjuser.form.component.d.ts.map +1 -1
  250. package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js +155 -119
  251. package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js.map +1 -1
  252. package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.d.ts +5 -1
  253. package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.d.ts.map +1 -1
  254. package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.js +11 -3
  255. package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.js.map +1 -1
  256. package/dist/lib/panels/content-sources/tag-pipeline-configuration.panel.d.ts +2 -0
  257. package/dist/lib/panels/content-sources/tag-pipeline-configuration.panel.d.ts.map +1 -1
  258. package/dist/lib/panels/content-sources/tag-pipeline-configuration.panel.js +16 -12
  259. package/dist/lib/panels/content-sources/tag-pipeline-configuration.panel.js.map +1 -1
  260. package/dist/lib/panels/content-sources/website-crawler-settings.panel.d.ts +1 -1
  261. package/dist/lib/panels/content-sources/website-crawler-settings.panel.js +2 -2
  262. package/dist/lib/panels/content-sources/website-crawler-settings.panel.js.map +1 -1
  263. package/dist/lib/panels/model-predictions/model-prediction.logic.d.ts +45 -19
  264. package/dist/lib/panels/model-predictions/model-prediction.logic.d.ts.map +1 -1
  265. package/dist/lib/panels/model-predictions/model-prediction.logic.js +95 -43
  266. package/dist/lib/panels/model-predictions/model-prediction.logic.js.map +1 -1
  267. package/dist/lib/panels/model-predictions/model-prediction.panel.d.ts +20 -16
  268. package/dist/lib/panels/model-predictions/model-prediction.panel.d.ts.map +1 -1
  269. package/dist/lib/panels/model-predictions/model-prediction.panel.js +73 -65
  270. package/dist/lib/panels/model-predictions/model-prediction.panel.js.map +1 -1
  271. package/dist/lib/shared/components/template-editor.component.d.ts +133 -14
  272. package/dist/lib/shared/components/template-editor.component.d.ts.map +1 -1
  273. package/dist/lib/shared/components/template-editor.component.js +322 -124
  274. package/dist/lib/shared/components/template-editor.component.js.map +1 -1
  275. package/package.json +43 -42
@@ -1293,53 +1293,265 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1293
1293
  super(...arguments);
1294
1294
  this.destroy$ = new Subject();
1295
1295
  // UI state
1296
- this.activeTab = 'overview';
1297
- this.loading = false;
1298
- this.loadingRuns = false;
1299
- this.loadingSuites = false;
1296
+ this.ActiveTab = 'overview';
1297
+ this.Loading = false;
1298
+ this.LoadingRuns = false;
1299
+ this.LoadingSuites = false;
1300
1300
  this.error = null;
1301
- this.testRunsLoaded = false;
1302
- this.suiteTestsLoaded = false;
1303
- this.isRefreshing = false;
1301
+ this.TestRunsLoaded = false;
1302
+ this.SuiteTestsLoaded = false;
1303
+ this.isRefreshing = false; // case-violation-ok-legacy-back-compat: an ancestor class already declares the PascalCase name
1304
1304
  // Related data
1305
- this.testRuns = [];
1306
- this.suiteTests = [];
1305
+ this.TestRuns = [];
1306
+ this.SuiteTests = [];
1307
1307
  // Human feedback map: testRunId -> feedback entity
1308
- this.feedbackMap = new Map();
1308
+ this.FeedbackMap = new Map();
1309
1309
  // History tab data
1310
- this.historyLoaded = false;
1311
- this.loadingHistory = false;
1312
- this.historyTimeRange = '30d';
1313
- this.historyData = [];
1314
- this.suitePerformance = [];
1315
- this.uniqueTags = [];
1316
- this.selectedTagFilter = null;
1310
+ this.HistoryLoaded = false;
1311
+ this.LoadingHistory = false;
1312
+ this.HistoryTimeRange = '30d';
1313
+ this.HistoryData = [];
1314
+ this.SuitePerformance = [];
1315
+ this.UniqueTags = [];
1316
+ this.SelectedTagFilter = null;
1317
1317
  // Parsed JSON fields
1318
- this.parsedData = {};
1318
+ this.ParsedData = {};
1319
1319
  // Active JSON view
1320
- this.activeJsonView = 'input';
1320
+ this.ActiveJsonView = 'input';
1321
1321
  // Code editor configuration
1322
- this.jsonToolbar = createCopyOnlyToolbar();
1322
+ this.JsonToolbar = createCopyOnlyToolbar();
1323
1323
  // Keyboard shortcuts
1324
- this.keyboardShortcutsEnabled = true;
1325
- this.showShortcuts = false; // Hidden by default
1324
+ this.KeyboardShortcutsEnabled = true;
1325
+ this.ShowShortcuts = false;
1326
1326
  this.shortcutsSettingEntity = null;
1327
1327
  // Evaluation preferences
1328
- this.evalPreferences = { showExecution: true, showHuman: true, showAuto: false };
1328
+ this.EvalPreferences = { showExecution: true, showHuman: true, showAuto: false };
1329
1329
  // Service injections
1330
1330
  this.navigationService = inject(NavigationService);
1331
- this.testingDialogService = inject(TestingDialogService);
1331
+ this.TestingDialogService = inject(TestingDialogService);
1332
1332
  this.evalPrefsService = inject(EvaluationPreferencesService);
1333
1333
  this.viewContainerRef = inject(ViewContainerRef);
1334
1334
  this.appManager = inject(ApplicationManager);
1335
1335
  this.confirmService = inject(MJConfirmService);
1336
1336
  // Edit state
1337
- this.isSaving = false;
1338
- this.testTypeOptions = [];
1339
- this.tagDraft = '';
1340
- this.statusOptions = ['Active', 'Pending', 'Disabled'];
1337
+ this.IsSaving = false;
1338
+ this.TestTypeOptions = [];
1339
+ this.TagDraft = '';
1340
+ this.StatusOptions = ['Active', 'Pending', 'Disabled'];
1341
1341
  }
1342
+ /** @deprecated Use {@link ActiveTab}. */
1343
+ get activeTab() {
1344
+ return this.ActiveTab;
1345
+ }
1346
+ /** @deprecated Use {@link ActiveTab}. */
1347
+ set activeTab(value) {
1348
+ this.ActiveTab = value;
1349
+ }
1350
+ /** @deprecated Use {@link Loading}. */
1351
+ get loading() {
1352
+ return this.Loading;
1353
+ }
1354
+ /** @deprecated Use {@link Loading}. */
1355
+ set loading(value) {
1356
+ this.Loading = value;
1357
+ }
1358
+ /** @deprecated Use {@link LoadingRuns}. */
1359
+ get loadingRuns() {
1360
+ return this.LoadingRuns;
1361
+ }
1362
+ /** @deprecated Use {@link LoadingRuns}. */
1363
+ set loadingRuns(value) {
1364
+ this.LoadingRuns = value;
1365
+ }
1366
+ /** @deprecated Use {@link LoadingSuites}. */
1367
+ get loadingSuites() {
1368
+ return this.LoadingSuites;
1369
+ }
1370
+ /** @deprecated Use {@link LoadingSuites}. */
1371
+ set loadingSuites(value) {
1372
+ this.LoadingSuites = value;
1373
+ }
1374
+ /** @deprecated Use {@link TestRunsLoaded}. */
1375
+ get testRunsLoaded() {
1376
+ return this.TestRunsLoaded;
1377
+ }
1378
+ /** @deprecated Use {@link TestRunsLoaded}. */
1379
+ set testRunsLoaded(value) {
1380
+ this.TestRunsLoaded = value;
1381
+ }
1382
+ /** @deprecated Use {@link SuiteTestsLoaded}. */
1383
+ get suiteTestsLoaded() {
1384
+ return this.SuiteTestsLoaded;
1385
+ }
1386
+ /** @deprecated Use {@link SuiteTestsLoaded}. */
1387
+ set suiteTestsLoaded(value) {
1388
+ this.SuiteTestsLoaded = value;
1389
+ }
1390
+ /** @deprecated Use {@link TestRuns}. */
1391
+ get testRuns() {
1392
+ return this.TestRuns;
1393
+ }
1394
+ /** @deprecated Use {@link TestRuns}. */
1395
+ set testRuns(value) {
1396
+ this.TestRuns = value;
1397
+ }
1398
+ /** @deprecated Use {@link SuiteTests}. */
1399
+ get suiteTests() {
1400
+ return this.SuiteTests;
1401
+ }
1402
+ /** @deprecated Use {@link SuiteTests}. */
1403
+ set suiteTests(value) {
1404
+ this.SuiteTests = value;
1405
+ }
1406
+ /** @deprecated Use {@link FeedbackMap}. */
1407
+ get feedbackMap() {
1408
+ return this.FeedbackMap;
1409
+ }
1410
+ /** @deprecated Use {@link FeedbackMap}. */
1411
+ set feedbackMap(value) {
1412
+ this.FeedbackMap = value;
1413
+ }
1414
+ /** @deprecated Use {@link HistoryLoaded}. */
1415
+ get historyLoaded() {
1416
+ return this.HistoryLoaded;
1417
+ }
1418
+ /** @deprecated Use {@link HistoryLoaded}. */
1419
+ set historyLoaded(value) {
1420
+ this.HistoryLoaded = value;
1421
+ }
1422
+ /** @deprecated Use {@link LoadingHistory}. */
1423
+ get loadingHistory() {
1424
+ return this.LoadingHistory;
1425
+ }
1426
+ /** @deprecated Use {@link LoadingHistory}. */
1427
+ set loadingHistory(value) {
1428
+ this.LoadingHistory = value;
1429
+ }
1430
+ /** @deprecated Use {@link HistoryTimeRange}. */
1431
+ get historyTimeRange() {
1432
+ return this.HistoryTimeRange;
1433
+ }
1434
+ /** @deprecated Use {@link HistoryTimeRange}. */
1435
+ set historyTimeRange(value) {
1436
+ this.HistoryTimeRange = value;
1437
+ }
1438
+ /** @deprecated Use {@link HistoryData}. */
1439
+ get historyData() {
1440
+ return this.HistoryData;
1441
+ }
1442
+ /** @deprecated Use {@link HistoryData}. */
1443
+ set historyData(value) {
1444
+ this.HistoryData = value;
1445
+ }
1446
+ /** @deprecated Use {@link SuitePerformance}. */
1447
+ get suitePerformance() {
1448
+ return this.SuitePerformance;
1449
+ }
1450
+ /** @deprecated Use {@link SuitePerformance}. */
1451
+ set suitePerformance(value) {
1452
+ this.SuitePerformance = value;
1453
+ }
1454
+ /** @deprecated Use {@link UniqueTags}. */
1455
+ get uniqueTags() {
1456
+ return this.UniqueTags;
1457
+ }
1458
+ /** @deprecated Use {@link UniqueTags}. */
1459
+ set uniqueTags(value) {
1460
+ this.UniqueTags = value;
1461
+ }
1462
+ /** @deprecated Use {@link SelectedTagFilter}. */
1463
+ get selectedTagFilter() {
1464
+ return this.SelectedTagFilter;
1465
+ }
1466
+ /** @deprecated Use {@link SelectedTagFilter}. */
1467
+ set selectedTagFilter(value) {
1468
+ this.SelectedTagFilter = value;
1469
+ }
1470
+ /** @deprecated Use {@link ParsedData}. */
1471
+ get parsedData() {
1472
+ return this.ParsedData;
1473
+ }
1474
+ /** @deprecated Use {@link ParsedData}. */
1475
+ set parsedData(value) {
1476
+ this.ParsedData = value;
1477
+ }
1478
+ /** @deprecated Use {@link ActiveJsonView}. */
1479
+ get activeJsonView() {
1480
+ return this.ActiveJsonView;
1481
+ }
1482
+ /** @deprecated Use {@link ActiveJsonView}. */
1483
+ set activeJsonView(value) {
1484
+ this.ActiveJsonView = value;
1485
+ }
1486
+ /** @deprecated Use {@link JsonToolbar}. */
1487
+ get jsonToolbar() {
1488
+ return this.JsonToolbar;
1489
+ }
1490
+ /** @deprecated Use {@link JsonToolbar}. */
1491
+ set jsonToolbar(value) {
1492
+ this.JsonToolbar = value;
1493
+ }
1494
+ /** @deprecated Use {@link KeyboardShortcutsEnabled}. */
1495
+ get keyboardShortcutsEnabled() {
1496
+ return this.KeyboardShortcutsEnabled;
1497
+ }
1498
+ /** @deprecated Use {@link KeyboardShortcutsEnabled}. */
1499
+ set keyboardShortcutsEnabled(value) {
1500
+ this.KeyboardShortcutsEnabled = value;
1501
+ }
1502
+ /** @deprecated Use {@link ShowShortcuts}. */
1503
+ get showShortcuts() {
1504
+ return this.ShowShortcuts;
1505
+ }
1506
+ /** @deprecated Use {@link ShowShortcuts}. */
1507
+ set showShortcuts(value) {
1508
+ this.ShowShortcuts = value;
1509
+ } // Hidden by default
1342
1510
  get metadata() { return this.ProviderToUse; }
1511
+ /** @deprecated Use {@link EvalPreferences}. */
1512
+ get evalPreferences() {
1513
+ return this.EvalPreferences;
1514
+ }
1515
+ /** @deprecated Use {@link EvalPreferences}. */
1516
+ set evalPreferences(value) {
1517
+ this.EvalPreferences = value;
1518
+ }
1519
+ /** @deprecated Use {@link TestingDialogService}. */
1520
+ get testingDialogService() {
1521
+ return this.TestingDialogService;
1522
+ }
1523
+ /** @deprecated Use {@link TestingDialogService}. */
1524
+ set testingDialogService(value) {
1525
+ this.TestingDialogService = value;
1526
+ }
1527
+ /** @deprecated Use {@link IsSaving}. */
1528
+ get isSaving() {
1529
+ return this.IsSaving;
1530
+ }
1531
+ /** @deprecated Use {@link IsSaving}. */
1532
+ set isSaving(value) {
1533
+ this.IsSaving = value;
1534
+ }
1535
+ /** @deprecated Use {@link TestTypeOptions}. */
1536
+ get testTypeOptions() {
1537
+ return this.TestTypeOptions;
1538
+ }
1539
+ /** @deprecated Use {@link TestTypeOptions}. */
1540
+ set testTypeOptions(value) {
1541
+ this.TestTypeOptions = value;
1542
+ }
1543
+ /** @deprecated Use {@link TagDraft}. */
1544
+ get tagDraft() {
1545
+ return this.TagDraft;
1546
+ }
1547
+ /** @deprecated Use {@link TagDraft}. */
1548
+ set tagDraft(value) {
1549
+ this.TagDraft = value;
1550
+ }
1551
+ /** @deprecated Use {@link StatusOptions}. */
1552
+ get statusOptions() {
1553
+ return this.StatusOptions;
1554
+ }
1343
1555
  async ngOnInit() {
1344
1556
  await super.ngOnInit();
1345
1557
  this.loadShortcutsSetting();
@@ -1349,11 +1561,11 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1349
1561
  this.evalPrefsService.preferences$
1350
1562
  .pipe(takeUntil(this.destroy$))
1351
1563
  .subscribe(prefs => {
1352
- this.evalPreferences = prefs;
1564
+ this.EvalPreferences = prefs;
1353
1565
  this.cdr.markForCheck();
1354
1566
  });
1355
1567
  // Subscribe to panel state changes so the slide panel renders in this form
1356
- this.testingDialogService.PanelStateChanged$
1568
+ this.TestingDialogService.PanelStateChanged$
1357
1569
  .pipe(takeUntil(this.destroy$))
1358
1570
  .subscribe(() => {
1359
1571
  this.cdr.detectChanges();
@@ -1368,52 +1580,52 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1368
1580
  }
1369
1581
  // Keyboard shortcuts
1370
1582
  handleKeyboardShortcut(event) {
1371
- if (!this.keyboardShortcutsEnabled)
1583
+ if (!this.KeyboardShortcutsEnabled)
1372
1584
  return;
1373
1585
  // Cmd/Ctrl + S: Save (if dirty)
1374
1586
  if ((event.metaKey || event.ctrlKey) && event.key === 's' && !event.shiftKey) {
1375
- if (this.isDirty) {
1587
+ if (this.IsDirty) {
1376
1588
  event.preventDefault();
1377
- this.saveChanges();
1589
+ this.SaveChanges();
1378
1590
  }
1379
1591
  return;
1380
1592
  }
1381
1593
  // Cmd/Ctrl + R: Refresh
1382
1594
  if ((event.metaKey || event.ctrlKey) && event.key === 'r' && !event.shiftKey) {
1383
1595
  event.preventDefault();
1384
- this.refresh();
1596
+ this.Refresh();
1385
1597
  return;
1386
1598
  }
1387
1599
  // Cmd/Ctrl + Enter: Run test
1388
1600
  if ((event.metaKey || event.ctrlKey) && event.key === 'Enter') {
1389
1601
  event.preventDefault();
1390
- this.runTest();
1602
+ this.RunTest();
1391
1603
  return;
1392
1604
  }
1393
1605
  // Number keys for tabs (1-5) — skip when typing into form inputs
1394
1606
  if (!event.metaKey && !event.ctrlKey && !event.altKey && !this.isTextInputFocused()) {
1395
1607
  switch (event.key) {
1396
1608
  case '1':
1397
- this.changeTab('overview');
1609
+ this.ChangeTab('overview');
1398
1610
  break;
1399
1611
  case '2':
1400
- this.changeTab('config');
1612
+ this.ChangeTab('config');
1401
1613
  break;
1402
1614
  case '3':
1403
- this.changeTab('runs');
1615
+ this.ChangeTab('runs');
1404
1616
  break;
1405
1617
  case '4':
1406
- this.changeTab('suites');
1618
+ this.ChangeTab('suites');
1407
1619
  break;
1408
1620
  case '5':
1409
- this.changeTab('analytics');
1621
+ this.ChangeTab('analytics');
1410
1622
  break;
1411
1623
  }
1412
1624
  }
1413
1625
  }
1414
1626
  // Warn before tab close / hard navigation when there are unsaved changes
1415
1627
  handleBeforeUnload(event) {
1416
- if (this.isDirty) {
1628
+ if (this.IsDirty) {
1417
1629
  event.preventDefault();
1418
1630
  event.returnValue = '';
1419
1631
  }
@@ -1426,9 +1638,9 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1426
1638
  return tag === 'INPUT' || tag === 'TEXTAREA' || tag === 'SELECT' || el.isContentEditable;
1427
1639
  }
1428
1640
  async loadTestRuns() {
1429
- if (this.testRunsLoaded)
1641
+ if (this.TestRunsLoaded)
1430
1642
  return;
1431
- this.loadingRuns = true;
1643
+ this.LoadingRuns = true;
1432
1644
  this.cdr.markForCheck();
1433
1645
  try {
1434
1646
  const rv = RunView.FromMetadataProvider(this.ProviderToUse);
@@ -1440,20 +1652,20 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1440
1652
  ResultType: 'entity_object'
1441
1653
  });
1442
1654
  if (result.Success) {
1443
- this.testRuns = result.Results || [];
1655
+ this.TestRuns = result.Results || [];
1444
1656
  // Load feedbacks for all test runs
1445
- if (this.testRuns.length > 0) {
1446
- await this.loadFeedbacksForTestRuns(this.testRuns.map(r => r.ID));
1657
+ if (this.TestRuns.length > 0) {
1658
+ await this.loadFeedbacksForTestRuns(this.TestRuns.map(r => r.ID));
1447
1659
  }
1448
1660
  }
1449
- this.testRunsLoaded = true;
1661
+ this.TestRunsLoaded = true;
1450
1662
  }
1451
1663
  catch (error) {
1452
1664
  console.error('Error loading test runs:', error);
1453
1665
  SharedService.Instance.CreateSimpleNotification('Failed to load test runs', 'error', 3000);
1454
1666
  }
1455
1667
  finally {
1456
- this.loadingRuns = false;
1668
+ this.LoadingRuns = false;
1457
1669
  this.cdr.markForCheck();
1458
1670
  }
1459
1671
  }
@@ -1476,7 +1688,7 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1476
1688
  });
1477
1689
  if (result.Success && result.Results) {
1478
1690
  for (const feedback of result.Results) {
1479
- this.feedbackMap.set(feedback.TestRunID, feedback);
1691
+ this.FeedbackMap.set(feedback.TestRunID, feedback);
1480
1692
  }
1481
1693
  }
1482
1694
  }
@@ -1488,13 +1700,17 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1488
1700
  /**
1489
1701
  * Get feedback for a specific test run
1490
1702
  */
1703
+ GetFeedbackForRun(testRunId) {
1704
+ return this.FeedbackMap.get(testRunId);
1705
+ }
1706
+ /** @deprecated Use {@link GetFeedbackForRun}. */
1491
1707
  getFeedbackForRun(testRunId) {
1492
- return this.feedbackMap.get(testRunId);
1708
+ return this.GetFeedbackForRun(testRunId);
1493
1709
  }
1494
1710
  /**
1495
1711
  * Get tooltip for status indicator
1496
1712
  */
1497
- getStatusTooltip(status) {
1713
+ GetStatusTooltip(status) {
1498
1714
  switch (status) {
1499
1715
  case 'Passed': return 'Status: Passed - Test completed without error';
1500
1716
  case 'Failed': return 'Status: Failed - Test assertions did not pass';
@@ -1506,10 +1722,14 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1506
1722
  default: return `Status: ${status}`;
1507
1723
  }
1508
1724
  }
1725
+ /** @deprecated Use {@link GetStatusTooltip}. */
1726
+ getStatusTooltip(status) {
1727
+ return this.GetStatusTooltip(status);
1728
+ }
1509
1729
  /**
1510
1730
  * Get tooltip for human review with rating and optional comments
1511
1731
  */
1512
- getHumanTooltip(rating, comments) {
1732
+ GetHumanTooltip(rating, comments) {
1513
1733
  let tooltip = `Human Review: ${rating}/10 rating`;
1514
1734
  if (comments) {
1515
1735
  const truncated = comments.length > 200 ? comments.substring(0, 200) + '...' : comments;
@@ -1517,10 +1737,14 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1517
1737
  }
1518
1738
  return tooltip;
1519
1739
  }
1740
+ /** @deprecated Use {@link GetHumanTooltip}. */
1741
+ getHumanTooltip(rating, comments) {
1742
+ return this.GetHumanTooltip(rating, comments);
1743
+ }
1520
1744
  async loadSuiteTests() {
1521
- if (this.suiteTestsLoaded)
1745
+ if (this.SuiteTestsLoaded)
1522
1746
  return;
1523
- this.loadingSuites = true;
1747
+ this.LoadingSuites = true;
1524
1748
  this.cdr.markForCheck();
1525
1749
  try {
1526
1750
  const rv = RunView.FromMetadataProvider(this.ProviderToUse);
@@ -1531,57 +1755,65 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1531
1755
  ResultType: 'entity_object'
1532
1756
  });
1533
1757
  if (result.Success) {
1534
- this.suiteTests = result.Results || [];
1758
+ this.SuiteTests = result.Results || [];
1535
1759
  }
1536
- this.suiteTestsLoaded = true;
1760
+ this.SuiteTestsLoaded = true;
1537
1761
  }
1538
1762
  catch (error) {
1539
1763
  console.error('Error loading suite tests:', error);
1540
1764
  SharedService.Instance.CreateSimpleNotification('Failed to load test suites', 'error', 3000);
1541
1765
  }
1542
1766
  finally {
1543
- this.loadingSuites = false;
1767
+ this.LoadingSuites = false;
1544
1768
  this.cdr.markForCheck();
1545
1769
  }
1546
1770
  }
1547
1771
  parseJsonFields() {
1548
1772
  try {
1549
1773
  if (this.record.InputDefinition) {
1550
- this.parsedData.inputDefinition = JSON.parse(this.record.InputDefinition);
1774
+ this.ParsedData.inputDefinition = JSON.parse(this.record.InputDefinition);
1551
1775
  }
1552
1776
  if (this.record.ExpectedOutcomes) {
1553
- this.parsedData.expectedOutcomes = JSON.parse(this.record.ExpectedOutcomes);
1777
+ this.ParsedData.expectedOutcomes = JSON.parse(this.record.ExpectedOutcomes);
1554
1778
  }
1555
1779
  if (this.record.Configuration) {
1556
- this.parsedData.configuration = JSON.parse(this.record.Configuration);
1780
+ this.ParsedData.configuration = JSON.parse(this.record.Configuration);
1557
1781
  }
1558
1782
  if (this.record.Tags) {
1559
- this.parsedData.tags = JSON.parse(this.record.Tags);
1783
+ this.ParsedData.tags = JSON.parse(this.record.Tags);
1560
1784
  }
1561
1785
  }
1562
1786
  catch (error) {
1563
1787
  console.error('Error parsing JSON fields:', error);
1564
1788
  }
1565
1789
  }
1566
- changeTab(tab) {
1567
- this.activeTab = tab;
1790
+ ChangeTab(tab) {
1791
+ this.ActiveTab = tab;
1568
1792
  // Lazy load tabs
1569
- if (tab === 'runs' && !this.testRunsLoaded) {
1793
+ if (tab === 'runs' && !this.TestRunsLoaded) {
1570
1794
  this.loadTestRuns();
1571
1795
  }
1572
- if (tab === 'suites' && !this.suiteTestsLoaded) {
1796
+ if (tab === 'suites' && !this.SuiteTestsLoaded) {
1573
1797
  this.loadSuiteTests();
1574
1798
  }
1575
- if (tab === 'analytics' && !this.historyLoaded) {
1576
- this.loadHistory();
1799
+ if (tab === 'analytics' && !this.HistoryLoaded) {
1800
+ this.LoadHistory();
1577
1801
  }
1578
1802
  this.cdr.markForCheck();
1579
1803
  }
1580
- setJsonView(view) {
1581
- this.activeJsonView = view;
1804
+ /** @deprecated Use {@link ChangeTab}. */
1805
+ changeTab(tab) {
1806
+ return this.ChangeTab(tab);
1807
+ }
1808
+ SetJsonView(view) {
1809
+ this.ActiveJsonView = view;
1582
1810
  this.cdr.markForCheck();
1583
1811
  }
1584
- getStatusColor() {
1812
+ /** @deprecated Use {@link SetJsonView}. */
1813
+ setJsonView(view) {
1814
+ return this.SetJsonView(view);
1815
+ }
1816
+ GetStatusColor() {
1585
1817
  switch (this.record.Status) {
1586
1818
  case 'Active': return '#10b981';
1587
1819
  case 'Disabled': return '#6b7280';
@@ -1589,7 +1821,11 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1589
1821
  default: return '#9ca3af';
1590
1822
  }
1591
1823
  }
1592
- getStatusIcon() {
1824
+ /** @deprecated Use {@link GetStatusColor}. */
1825
+ getStatusColor() {
1826
+ return this.GetStatusColor();
1827
+ }
1828
+ GetStatusIcon() {
1593
1829
  switch (this.record.Status) {
1594
1830
  case 'Active': return 'fa-circle-check';
1595
1831
  case 'Disabled': return 'fa-circle-stop';
@@ -1597,10 +1833,18 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1597
1833
  default: return 'fa-circle-question';
1598
1834
  }
1599
1835
  }
1600
- getStatusClass() {
1836
+ /** @deprecated Use {@link GetStatusIcon}. */
1837
+ getStatusIcon() {
1838
+ return this.GetStatusIcon();
1839
+ }
1840
+ GetStatusClass() {
1601
1841
  return `status-${this.record.Status?.toLowerCase() || 'unknown'}`;
1602
1842
  }
1603
- getRunStatusColor(status) {
1843
+ /** @deprecated Use {@link GetStatusClass}. */
1844
+ getStatusClass() {
1845
+ return this.GetStatusClass();
1846
+ }
1847
+ GetRunStatusColor(status) {
1604
1848
  switch (status) {
1605
1849
  case 'Passed': return '#10b981';
1606
1850
  case 'Failed': return '#ef4444';
@@ -1611,23 +1855,39 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1611
1855
  default: return '#6b7280';
1612
1856
  }
1613
1857
  }
1858
+ /** @deprecated Use {@link GetRunStatusColor}. */
1859
+ getRunStatusColor(status) {
1860
+ return this.GetRunStatusColor(status);
1861
+ }
1862
+ GetPassRate() {
1863
+ if (this.TestRuns.length === 0)
1864
+ return 0;
1865
+ const passed = this.TestRuns.filter(r => r.Status === 'Passed').length;
1866
+ return (passed / this.TestRuns.length) * 100;
1867
+ }
1868
+ /** @deprecated Use {@link GetPassRate}. */
1614
1869
  getPassRate() {
1615
- if (this.testRuns.length === 0)
1870
+ return this.GetPassRate();
1871
+ }
1872
+ GetAverageCost() {
1873
+ if (this.TestRuns.length === 0)
1616
1874
  return 0;
1617
- const passed = this.testRuns.filter(r => r.Status === 'Passed').length;
1618
- return (passed / this.testRuns.length) * 100;
1875
+ const totalCost = this.TestRuns.reduce((sum, r) => sum + (r.CostUSD || 0), 0);
1876
+ return totalCost / this.TestRuns.length;
1619
1877
  }
1878
+ /** @deprecated Use {@link GetAverageCost}. */
1620
1879
  getAverageCost() {
1621
- if (this.testRuns.length === 0)
1880
+ return this.GetAverageCost();
1881
+ }
1882
+ GetAverageDuration() {
1883
+ if (this.TestRuns.length === 0)
1622
1884
  return 0;
1623
- const totalCost = this.testRuns.reduce((sum, r) => sum + (r.CostUSD || 0), 0);
1624
- return totalCost / this.testRuns.length;
1885
+ const totalDuration = this.TestRuns.reduce((sum, r) => sum + (r.DurationSeconds || 0), 0);
1886
+ return totalDuration / this.TestRuns.length;
1625
1887
  }
1888
+ /** @deprecated Use {@link GetAverageDuration}. */
1626
1889
  getAverageDuration() {
1627
- if (this.testRuns.length === 0)
1628
- return 0;
1629
- const totalDuration = this.testRuns.reduce((sum, r) => sum + (r.DurationSeconds || 0), 0);
1630
- return totalDuration / this.testRuns.length;
1890
+ return this.GetAverageDuration();
1631
1891
  }
1632
1892
  formatDuration(seconds) {
1633
1893
  if (seconds < 60)
@@ -1641,10 +1901,14 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1641
1901
  const mins = Math.floor((seconds % 3600) / 60);
1642
1902
  return `${hours}h ${mins}m`;
1643
1903
  }
1644
- formatCost(cost) {
1904
+ FormatCost(cost) {
1645
1905
  return `$${cost.toFixed(6)}`;
1646
1906
  }
1647
- formatTimeout(ms) {
1907
+ /** @deprecated Use {@link FormatCost}. */
1908
+ formatCost(cost) {
1909
+ return this.FormatCost(cost);
1910
+ }
1911
+ FormatTimeout(ms) {
1648
1912
  if (ms === null || ms === undefined)
1649
1913
  return 'Default (5 min)';
1650
1914
  if (ms < 1000)
@@ -1660,45 +1924,69 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1660
1924
  const mins = Math.floor((ms % 3600000) / 60000);
1661
1925
  return mins > 0 ? `${hours}h ${mins}m` : `${hours}h`;
1662
1926
  }
1663
- openTestRun(runId) {
1927
+ /** @deprecated Use {@link FormatTimeout}. */
1928
+ formatTimeout(ms) {
1929
+ return this.FormatTimeout(ms);
1930
+ }
1931
+ OpenTestRun(runId) {
1664
1932
  SharedService.Instance.OpenEntityRecord('MJ: Test Runs', CompositeKey.FromID(runId));
1665
1933
  }
1666
- getRunTags(run) {
1934
+ /** @deprecated Use {@link OpenTestRun}. */
1935
+ openTestRun(runId) {
1936
+ return this.OpenTestRun(runId);
1937
+ }
1938
+ GetRunTags(run) {
1667
1939
  return TagsHelper.parseTags(run.Tags);
1668
1940
  }
1669
- openTestSuite(suiteId) {
1941
+ /** @deprecated Use {@link GetRunTags}. */
1942
+ getRunTags(run) {
1943
+ return this.GetRunTags(run);
1944
+ }
1945
+ OpenTestSuite(suiteId) {
1670
1946
  SharedService.Instance.OpenEntityRecord('MJ: Test Suites', CompositeKey.FromID(suiteId));
1671
1947
  }
1672
- navigateToTestingDashboard() {
1948
+ /** @deprecated Use {@link OpenTestSuite}. */
1949
+ openTestSuite(suiteId) {
1950
+ return this.OpenTestSuite(suiteId);
1951
+ }
1952
+ NavigateToTestingDashboard() {
1673
1953
  const testingApp = this.appManager.GetAppByName('Testing');
1674
1954
  if (testingApp) {
1675
1955
  this.navigationService.SwitchToApp(testingApp.ID);
1676
1956
  }
1677
1957
  }
1678
- async runTest() {
1958
+ /** @deprecated Use {@link NavigateToTestingDashboard}. */
1959
+ navigateToTestingDashboard() {
1960
+ return this.NavigateToTestingDashboard();
1961
+ }
1962
+ async RunTest() {
1679
1963
  if (this.record?.ID) {
1680
- this.testingDialogService.OpenTestPanel(this.record.ID);
1964
+ this.TestingDialogService.OpenTestPanel(this.record.ID);
1681
1965
  }
1682
1966
  }
1967
+ /** @deprecated Use {@link RunTest}. */
1968
+ async runTest() {
1969
+ return this.RunTest();
1970
+ }
1683
1971
  OnPanelClosed() {
1684
- this.testingDialogService.ClosePanel();
1972
+ this.TestingDialogService.ClosePanel();
1685
1973
  this.cdr.markForCheck();
1686
1974
  }
1687
- async refresh() {
1975
+ async Refresh() {
1688
1976
  this.isRefreshing = true;
1689
1977
  this.cdr.markForCheck();
1690
1978
  try {
1691
1979
  await this.record.Load(this.record.ID);
1692
1980
  this.parseJsonFields();
1693
1981
  // Reset lazy-loaded data to force reload
1694
- if (this.testRunsLoaded) {
1695
- this.testRunsLoaded = false;
1696
- this.testRuns = [];
1982
+ if (this.TestRunsLoaded) {
1983
+ this.TestRunsLoaded = false;
1984
+ this.TestRuns = [];
1697
1985
  await this.loadTestRuns();
1698
1986
  }
1699
- if (this.suiteTestsLoaded) {
1700
- this.suiteTestsLoaded = false;
1701
- this.suiteTests = [];
1987
+ if (this.SuiteTestsLoaded) {
1988
+ this.SuiteTestsLoaded = false;
1989
+ this.SuiteTests = [];
1702
1990
  await this.loadSuiteTests();
1703
1991
  }
1704
1992
  SharedService.Instance.CreateSimpleNotification('Refreshed successfully', 'success', 2000);
@@ -1711,25 +1999,33 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1711
1999
  this.cdr.markForCheck();
1712
2000
  }
1713
2001
  }
1714
- getJsonData() {
2002
+ /** @deprecated Use {@link Refresh}. */
2003
+ async refresh() {
2004
+ return this.Refresh();
2005
+ }
2006
+ GetJsonData() {
1715
2007
  let data;
1716
- switch (this.activeJsonView) {
2008
+ switch (this.ActiveJsonView) {
1717
2009
  case 'input':
1718
- data = this.parsedData.inputDefinition;
2010
+ data = this.ParsedData.inputDefinition;
1719
2011
  break;
1720
2012
  case 'expected':
1721
- data = this.parsedData.expectedOutcomes;
2013
+ data = this.ParsedData.expectedOutcomes;
1722
2014
  break;
1723
2015
  case 'config':
1724
- data = this.parsedData.configuration;
2016
+ data = this.ParsedData.configuration;
1725
2017
  break;
1726
2018
  case 'tags':
1727
- data = this.parsedData.tags;
2019
+ data = this.ParsedData.tags;
1728
2020
  break;
1729
2021
  }
1730
2022
  return data ? JSON.stringify(data, null, 2) : '// No data available';
1731
2023
  }
1732
- getRelativeTime(date) {
2024
+ /** @deprecated Use {@link GetJsonData}. */
2025
+ getJsonData() {
2026
+ return this.GetJsonData();
2027
+ }
2028
+ GetRelativeTime(date) {
1733
2029
  if (!date)
1734
2030
  return 'N/A';
1735
2031
  const d = new Date(date);
@@ -1748,13 +2044,17 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1748
2044
  return `${diffDays}d ago`;
1749
2045
  return d.toLocaleDateString();
1750
2046
  }
2047
+ /** @deprecated Use {@link GetRelativeTime}. */
2048
+ getRelativeTime(date) {
2049
+ return this.GetRelativeTime(date);
2050
+ }
1751
2051
  // ===========================
1752
2052
  // History Tab Methods
1753
2053
  // ===========================
1754
- async loadHistory() {
1755
- if (this.historyLoaded)
2054
+ async LoadHistory() {
2055
+ if (this.HistoryLoaded)
1756
2056
  return;
1757
- this.loadingHistory = true;
2057
+ this.LoadingHistory = true;
1758
2058
  this.cdr.markForCheck();
1759
2059
  try {
1760
2060
  // Load all test runs for this test
@@ -1768,23 +2068,27 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1768
2068
  if (runsResult.Success && runsResult.Results) {
1769
2069
  const allRuns = runsResult.Results;
1770
2070
  // Extract unique tags from all runs
1771
- this.uniqueTags = TagsHelper.getUniqueTags(allRuns.map(r => r.Tags));
2071
+ this.UniqueTags = TagsHelper.getUniqueTags(allRuns.map(r => r.Tags));
1772
2072
  // Build history data (aggregated by date)
1773
- this.historyData = this.buildHistoryData(allRuns);
2073
+ this.HistoryData = this.buildHistoryData(allRuns);
1774
2074
  // Build suite performance data
1775
2075
  await this.buildSuitePerformance(allRuns);
1776
2076
  }
1777
- this.historyLoaded = true;
2077
+ this.HistoryLoaded = true;
1778
2078
  }
1779
2079
  catch (error) {
1780
2080
  console.error('Error loading history:', error);
1781
2081
  SharedService.Instance.CreateSimpleNotification('Failed to load history', 'error', 3000);
1782
2082
  }
1783
2083
  finally {
1784
- this.loadingHistory = false;
2084
+ this.LoadingHistory = false;
1785
2085
  this.cdr.markForCheck();
1786
2086
  }
1787
2087
  }
2088
+ /** @deprecated Use {@link LoadHistory}. */
2089
+ async loadHistory() {
2090
+ return this.LoadHistory();
2091
+ }
1788
2092
  buildHistoryData(runs) {
1789
2093
  // Filter by time range
1790
2094
  const filteredRuns = this.filterRunsByTimeRange(runs);
@@ -1822,11 +2126,11 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1822
2126
  return dataPoints.sort((a, b) => b.date.getTime() - a.date.getTime());
1823
2127
  }
1824
2128
  filterRunsByTimeRange(runs) {
1825
- if (this.historyTimeRange === 'all')
2129
+ if (this.HistoryTimeRange === 'all')
1826
2130
  return runs;
1827
2131
  const now = new Date();
1828
2132
  let cutoff;
1829
- switch (this.historyTimeRange) {
2133
+ switch (this.HistoryTimeRange) {
1830
2134
  case '7d':
1831
2135
  cutoff = new Date(now.getTime() - 7 * 24 * 60 * 60 * 1000);
1832
2136
  break;
@@ -1874,7 +2178,7 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1874
2178
  suiteIdMap.get(suiteId).runs.push(...testRuns);
1875
2179
  }
1876
2180
  // Build performance data for each suite
1877
- this.suitePerformance = [];
2181
+ this.SuitePerformance = [];
1878
2182
  for (const [suiteId, data] of suiteIdMap) {
1879
2183
  const suiteName = data.suiteRuns[0]?.Suite || 'Unknown Suite';
1880
2184
  const totalRuns = data.runs.length;
@@ -1889,7 +2193,7 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1889
2193
  const lastRun = data.runs
1890
2194
  .filter(r => r.StartedAt)
1891
2195
  .sort((a, b) => new Date(b.StartedAt).getTime() - new Date(a.StartedAt).getTime())[0];
1892
- this.suitePerformance.push({
2196
+ this.SuitePerformance.push({
1893
2197
  suiteId,
1894
2198
  suiteName,
1895
2199
  totalRuns,
@@ -1904,57 +2208,89 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1904
2208
  });
1905
2209
  }
1906
2210
  // Sort by total runs descending
1907
- this.suitePerformance.sort((a, b) => b.totalRuns - a.totalRuns);
2211
+ this.SuitePerformance.sort((a, b) => b.totalRuns - a.totalRuns);
1908
2212
  }
1909
2213
  }
1910
2214
  }
2215
+ SetHistoryTimeRange(range) {
2216
+ this.HistoryTimeRange = range;
2217
+ this.HistoryLoaded = false;
2218
+ this.LoadHistory();
2219
+ }
2220
+ /** @deprecated Use {@link SetHistoryTimeRange}. */
1911
2221
  setHistoryTimeRange(range) {
1912
- this.historyTimeRange = range;
1913
- this.historyLoaded = false;
1914
- this.loadHistory();
2222
+ return this.SetHistoryTimeRange(range);
1915
2223
  }
1916
- setTagFilter(tag) {
1917
- this.selectedTagFilter = tag;
2224
+ SetTagFilter(tag) {
2225
+ this.SelectedTagFilter = tag;
1918
2226
  this.cdr.markForCheck();
1919
2227
  }
2228
+ /** @deprecated Use {@link SetTagFilter}. */
2229
+ setTagFilter(tag) {
2230
+ return this.SetTagFilter(tag);
2231
+ }
2232
+ GetFilteredHistoryData() {
2233
+ return this.HistoryData;
2234
+ }
2235
+ /** @deprecated Use {@link GetFilteredHistoryData}. */
1920
2236
  getFilteredHistoryData() {
1921
- return this.historyData;
2237
+ return this.GetFilteredHistoryData();
1922
2238
  }
1923
- getOverallPassRate() {
1924
- if (this.historyData.length === 0)
2239
+ GetOverallPassRate() {
2240
+ if (this.HistoryData.length === 0)
1925
2241
  return 0;
1926
- const totalRuns = this.historyData.reduce((sum, d) => sum + d.runCount, 0);
1927
- const totalPassed = this.historyData.reduce((sum, d) => sum + d.passCount, 0);
2242
+ const totalRuns = this.HistoryData.reduce((sum, d) => sum + d.runCount, 0);
2243
+ const totalPassed = this.HistoryData.reduce((sum, d) => sum + d.passCount, 0);
1928
2244
  return totalRuns > 0 ? (totalPassed / totalRuns) * 100 : 0;
1929
2245
  }
1930
- getOverallAvgScore() {
1931
- if (this.historyData.length === 0)
2246
+ /** @deprecated Use {@link GetOverallPassRate}. */
2247
+ getOverallPassRate() {
2248
+ return this.GetOverallPassRate();
2249
+ }
2250
+ GetOverallAvgScore() {
2251
+ if (this.HistoryData.length === 0)
1932
2252
  return 0;
1933
- const scores = this.historyData.filter(d => d.avgScore > 0).map(d => d.avgScore);
2253
+ const scores = this.HistoryData.filter(d => d.avgScore > 0).map(d => d.avgScore);
1934
2254
  return scores.length > 0 ? scores.reduce((a, b) => a + b, 0) / scores.length : 0;
1935
2255
  }
1936
- getOverallAvgDuration() {
1937
- if (this.historyData.length === 0)
2256
+ /** @deprecated Use {@link GetOverallAvgScore}. */
2257
+ getOverallAvgScore() {
2258
+ return this.GetOverallAvgScore();
2259
+ }
2260
+ GetOverallAvgDuration() {
2261
+ if (this.HistoryData.length === 0)
1938
2262
  return 0;
1939
- const durations = this.historyData.filter(d => d.avgDuration > 0).map(d => d.avgDuration);
2263
+ const durations = this.HistoryData.filter(d => d.avgDuration > 0).map(d => d.avgDuration);
1940
2264
  return durations.length > 0 ? durations.reduce((a, b) => a + b, 0) / durations.length : 0;
1941
2265
  }
1942
- getOverallAvgCost() {
1943
- if (this.historyData.length === 0)
2266
+ /** @deprecated Use {@link GetOverallAvgDuration}. */
2267
+ getOverallAvgDuration() {
2268
+ return this.GetOverallAvgDuration();
2269
+ }
2270
+ GetOverallAvgCost() {
2271
+ if (this.HistoryData.length === 0)
1944
2272
  return 0;
1945
- const costs = this.historyData.filter(d => d.avgCost > 0).map(d => d.avgCost);
2273
+ const costs = this.HistoryData.filter(d => d.avgCost > 0).map(d => d.avgCost);
1946
2274
  return costs.length > 0 ? costs.reduce((a, b) => a + b, 0) / costs.length : 0;
1947
2275
  }
2276
+ /** @deprecated Use {@link GetOverallAvgCost}. */
2277
+ getOverallAvgCost() {
2278
+ return this.GetOverallAvgCost();
2279
+ }
2280
+ GetTotalRuns() {
2281
+ return this.HistoryData.reduce((sum, d) => sum + d.runCount, 0);
2282
+ }
2283
+ /** @deprecated Use {@link GetTotalRuns}. */
1948
2284
  getTotalRuns() {
1949
- return this.historyData.reduce((sum, d) => sum + d.runCount, 0);
2285
+ return this.GetTotalRuns();
1950
2286
  }
1951
- getPassRateTrend() {
1952
- if (this.historyData.length < 2)
2287
+ GetPassRateTrend() {
2288
+ if (this.HistoryData.length < 2)
1953
2289
  return 'stable';
1954
2290
  // Compare recent half to older half
1955
- const mid = Math.floor(this.historyData.length / 2);
1956
- const recentData = this.historyData.slice(0, mid);
1957
- const olderData = this.historyData.slice(mid);
2291
+ const mid = Math.floor(this.HistoryData.length / 2);
2292
+ const recentData = this.HistoryData.slice(0, mid);
2293
+ const olderData = this.HistoryData.slice(mid);
1958
2294
  const recentRate = recentData.reduce((sum, d) => sum + d.passRate, 0) / recentData.length;
1959
2295
  const olderRate = olderData.reduce((sum, d) => sum + d.passRate, 0) / olderData.length;
1960
2296
  const diff = recentRate - olderRate;
@@ -1964,9 +2300,13 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1964
2300
  return 'down';
1965
2301
  return 'stable';
1966
2302
  }
1967
- exportHistoryToCSV() {
2303
+ /** @deprecated Use {@link GetPassRateTrend}. */
2304
+ getPassRateTrend() {
2305
+ return this.GetPassRateTrend();
2306
+ }
2307
+ ExportHistoryToCSV() {
1968
2308
  const headers = ['Date', 'Run Count', 'Passed', 'Failed', 'Pass Rate (%)', 'Avg Score', 'Avg Duration (s)', 'Avg Cost (USD)'];
1969
- const rows = this.historyData.map(d => [
2309
+ const rows = this.HistoryData.map(d => [
1970
2310
  d.date.toISOString().split('T')[0],
1971
2311
  d.runCount.toString(),
1972
2312
  d.passCount.toString(),
@@ -1987,9 +2327,17 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
1987
2327
  URL.revokeObjectURL(link.href);
1988
2328
  SharedService.Instance.CreateSimpleNotification('Export complete', 'success', 2000);
1989
2329
  }
1990
- openSuiteFromHistory(suiteId) {
2330
+ /** @deprecated Use {@link ExportHistoryToCSV}. */
2331
+ exportHistoryToCSV() {
2332
+ return this.ExportHistoryToCSV();
2333
+ }
2334
+ OpenSuiteFromHistory(suiteId) {
1991
2335
  SharedService.Instance.OpenEntityRecord('MJ: Test Suites', CompositeKey.FromID(suiteId));
1992
2336
  }
2337
+ /** @deprecated Use {@link OpenSuiteFromHistory}. */
2338
+ openSuiteFromHistory(suiteId) {
2339
+ return this.OpenSuiteFromHistory(suiteId);
2340
+ }
1993
2341
  // ===========================
1994
2342
  // Keyboard Shortcuts Settings
1995
2343
  // ===========================
@@ -2002,11 +2350,11 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
2002
2350
  const setting = engine.UserSettings.find(s => s.Setting === SHORTCUTS_SETTINGS_KEY);
2003
2351
  if (setting) {
2004
2352
  this.shortcutsSettingEntity = setting;
2005
- this.showShortcuts = setting.Value === 'true';
2353
+ this.ShowShortcuts = setting.Value === 'true';
2006
2354
  }
2007
2355
  else {
2008
2356
  // Default to hidden
2009
- this.showShortcuts = false;
2357
+ this.ShowShortcuts = false;
2010
2358
  }
2011
2359
  this.cdr.markForCheck();
2012
2360
  }
@@ -2017,8 +2365,8 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
2017
2365
  /**
2018
2366
  * Toggle keyboard shortcuts visibility and save preference
2019
2367
  */
2020
- async toggleShortcuts() {
2021
- this.showShortcuts = !this.showShortcuts;
2368
+ async ToggleShortcuts() {
2369
+ this.ShowShortcuts = !this.ShowShortcuts;
2022
2370
  this.cdr.markForCheck();
2023
2371
  try {
2024
2372
  const userId = this.metadata.CurrentUser?.ID;
@@ -2036,26 +2384,38 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
2036
2384
  this.shortcutsSettingEntity.Setting = SHORTCUTS_SETTINGS_KEY;
2037
2385
  }
2038
2386
  }
2039
- this.shortcutsSettingEntity.Value = this.showShortcuts ? 'true' : 'false';
2387
+ this.shortcutsSettingEntity.Value = this.ShowShortcuts ? 'true' : 'false';
2040
2388
  await this.shortcutsSettingEntity.Save();
2041
2389
  }
2042
2390
  catch (error) {
2043
2391
  console.warn('Failed to save shortcuts setting:', error);
2044
2392
  }
2045
2393
  }
2394
+ /** @deprecated Use {@link ToggleShortcuts}. */
2395
+ async toggleShortcuts() {
2396
+ return this.ToggleShortcuts();
2397
+ }
2046
2398
  // ==========================================
2047
2399
  // Edit / Save Methods
2048
2400
  // ==========================================
2049
2401
  /** True if the test record has any unsaved field changes. */
2050
- get isDirty() {
2402
+ get IsDirty() {
2051
2403
  return this.record?.Dirty === true;
2052
2404
  }
2405
+ /** @deprecated Use {@link IsDirty}. */
2406
+ get isDirty() {
2407
+ return this.IsDirty;
2408
+ }
2053
2409
  /** Names of fields with pending edits, used by the save bar. */
2054
- get dirtyFieldNames() {
2410
+ get DirtyFieldNames() {
2055
2411
  if (!this.record?.Fields)
2056
2412
  return [];
2057
2413
  return this.record.Fields.filter(f => f.Dirty).map(f => f.Name);
2058
2414
  }
2415
+ /** @deprecated Use {@link DirtyFieldNames}. */
2416
+ get dirtyFieldNames() {
2417
+ return this.DirtyFieldNames;
2418
+ }
2059
2419
  /** Parsed tags as a plain array — derived from record.Tags JSON. */
2060
2420
  get tags() {
2061
2421
  return TagsHelper.parseTags(this.record?.Tags);
@@ -2070,7 +2430,7 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
2070
2430
  ResultType: 'entity_object'
2071
2431
  });
2072
2432
  if (result.Success) {
2073
- this.testTypeOptions = result.Results || [];
2433
+ this.TestTypeOptions = result.Results || [];
2074
2434
  this.cdr.markForCheck();
2075
2435
  }
2076
2436
  }
@@ -2079,10 +2439,10 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
2079
2439
  }
2080
2440
  }
2081
2441
  /** Save all pending changes on the test record. */
2082
- async saveChanges() {
2083
- if (!this.isDirty || this.isSaving)
2442
+ async SaveChanges() {
2443
+ if (!this.IsDirty || this.IsSaving)
2084
2444
  return;
2085
- this.isSaving = true;
2445
+ this.IsSaving = true;
2086
2446
  this.cdr.markForCheck();
2087
2447
  try {
2088
2448
  const ok = await this.SaveRecord(false);
@@ -2101,24 +2461,32 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
2101
2461
  SharedService.Instance.CreateSimpleNotification(msg, 'error', 4000);
2102
2462
  }
2103
2463
  finally {
2104
- this.isSaving = false;
2464
+ this.IsSaving = false;
2105
2465
  this.cdr.markForCheck();
2106
2466
  }
2107
2467
  }
2468
+ /** @deprecated Use {@link SaveChanges}. */
2469
+ async saveChanges() {
2470
+ return this.SaveChanges();
2471
+ }
2108
2472
  /** Discard all pending field changes on the test. */
2109
- async discardChanges() {
2110
- if (!this.isDirty)
2473
+ async DiscardChanges() {
2474
+ if (!this.IsDirty)
2111
2475
  return;
2112
2476
  if (!(await this.confirmService.Confirm('Discard your unsaved changes?')))
2113
2477
  return;
2114
2478
  this.record.Revert();
2115
- this.tagDraft = '';
2479
+ this.TagDraft = '';
2116
2480
  this.parseJsonFields();
2117
2481
  this.cdr.markForCheck();
2118
2482
  }
2483
+ /** @deprecated Use {@link DiscardChanges}. */
2484
+ async discardChanges() {
2485
+ return this.DiscardChanges();
2486
+ }
2119
2487
  /** Add a tag from tagDraft (called on Enter / comma / blur). */
2120
- addTagFromDraft() {
2121
- const raw = this.tagDraft.trim();
2488
+ AddTagFromDraft() {
2489
+ const raw = this.TagDraft.trim();
2122
2490
  if (!raw)
2123
2491
  return;
2124
2492
  const incoming = raw.split(',').map(t => t.trim()).filter(t => t.length > 0);
@@ -2129,29 +2497,41 @@ let MJTestFormComponentExtended = class MJTestFormComponentExtended extends MJTe
2129
2497
  merged.push(t);
2130
2498
  }
2131
2499
  this.record.Tags = TagsHelper.toJson(merged);
2132
- this.tagDraft = '';
2500
+ this.TagDraft = '';
2133
2501
  this.cdr.markForCheck();
2134
2502
  }
2503
+ /** @deprecated Use {@link AddTagFromDraft}. */
2504
+ addTagFromDraft() {
2505
+ return this.AddTagFromDraft();
2506
+ }
2135
2507
  /** Remove a single tag. */
2136
- removeTag(tag) {
2508
+ RemoveTag(tag) {
2137
2509
  this.record.Tags = TagsHelper.removeTag(this.record.Tags, tag);
2138
2510
  this.cdr.markForCheck();
2139
2511
  }
2512
+ /** @deprecated Use {@link RemoveTag}. */
2513
+ removeTag(tag) {
2514
+ return this.RemoveTag(tag);
2515
+ }
2140
2516
  /** Handle Enter / comma in the tag input to commit the draft tag. */
2141
- onTagInputKeydown(event) {
2517
+ OnTagInputKeydown(event) {
2142
2518
  if (event.key === 'Enter' || event.key === ',') {
2143
2519
  event.preventDefault();
2144
- this.addTagFromDraft();
2520
+ this.AddTagFromDraft();
2145
2521
  return;
2146
2522
  }
2147
- if (event.key === 'Backspace' && !this.tagDraft) {
2523
+ if (event.key === 'Backspace' && !this.TagDraft) {
2148
2524
  const all = this.tags;
2149
2525
  if (all.length > 0) {
2150
2526
  event.preventDefault();
2151
- this.removeTag(all[all.length - 1]);
2527
+ this.RemoveTag(all[all.length - 1]);
2152
2528
  }
2153
2529
  }
2154
2530
  }
2531
+ /** @deprecated Use {@link OnTagInputKeydown}. */
2532
+ onTagInputKeydown(event) {
2533
+ return this.OnTagInputKeydown(event);
2534
+ }
2155
2535
  static { this.ɵfac = /*@__PURE__*/ (() => { let ɵMJTestFormComponentExtended_BaseFactory; return function MJTestFormComponentExtended_Factory(__ngFactoryType__) { return (ɵMJTestFormComponentExtended_BaseFactory || (ɵMJTestFormComponentExtended_BaseFactory = i0.ɵɵgetInheritedFactory(MJTestFormComponentExtended)))(__ngFactoryType__ || MJTestFormComponentExtended); }; })(); }
2156
2536
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MJTestFormComponentExtended, selectors: [["mj-test-form"]], hostBindings: function MJTestFormComponentExtended_HostBindings(rf, ctx) { if (rf & 1) {
2157
2537
  i0.ɵɵlistener("keydown", function MJTestFormComponentExtended_keydown_HostBindingHandler($event) { return ctx.handleKeyboardShortcut($event); }, i0.ɵɵresolveDocument)("beforeunload", function MJTestFormComponentExtended_beforeunload_HostBindingHandler($event) { return ctx.handleBeforeUnload($event); }, i0.ɵɵresolveWindow);