@memberjunction/ng-core-entity-forms 3.3.0 → 4.0.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 (1916) hide show
  1. package/README.md +2 -2
  2. package/dist/lib/custom/AIAgents/FlowAgentType/flow-agent-diagram.component.js +1 -1
  3. package/dist/lib/custom/AIAgents/FlowAgentType/flow-agent-form-section.component.d.ts +13 -25
  4. package/dist/lib/custom/AIAgents/FlowAgentType/flow-agent-form-section.component.d.ts.map +1 -1
  5. package/dist/lib/custom/AIAgents/FlowAgentType/flow-agent-form-section.component.js +33 -379
  6. package/dist/lib/custom/AIAgents/FlowAgentType/flow-agent-form-section.component.js.map +1 -1
  7. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/condition-editor/condition-editor.component.js +1 -1
  8. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/confirmation-dialog/confirmation-dialog.component.js +1 -1
  9. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/custom-node/custom-node.component.js +1 -1
  10. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/execution-panel/execution-panel.component.js +1 -1
  11. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/flow-editor/flow-editor.component.js +1 -1
  12. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/prompt-editor/prompt-editor.component.js +1 -1
  13. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/properties-panel/properties-panel.component.js +1 -1
  14. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/simple-condition-editor/simple-condition-editor.component.js +1 -1
  15. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/step/step.component.js +1 -1
  16. package/dist/lib/custom/AIAgents/FlowAgentType/flow-editor-integration/components/toolbar/toolbar.component.js +1 -1
  17. package/dist/lib/custom/AIAgents/FlowAgentType/mj-integrated-flow-editor.component.js +1 -1
  18. package/dist/lib/custom/AIAgents/FlowAgentType/step-info-control.component.js +1 -1
  19. package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts.map +1 -1
  20. package/dist/lib/custom/AIAgents/add-action-dialog.component.js +15 -14
  21. package/dist/lib/custom/AIAgents/add-action-dialog.component.js.map +1 -1
  22. package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js +1 -0
  23. package/dist/lib/custom/AIAgents/agent-advanced-settings-dialog.component.js.map +1 -1
  24. package/dist/lib/custom/AIAgents/agent-permissions-dialog.component.js +1 -1
  25. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.d.ts.map +1 -1
  26. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js +14 -13
  27. package/dist/lib/custom/AIAgents/agent-prompt-advanced-settings-dialog.component.js.map +1 -1
  28. package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts +41 -4
  29. package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
  30. package/dist/lib/custom/AIAgents/ai-agent-form.component.js +1335 -1159
  31. package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
  32. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.d.ts.map +1 -1
  33. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js +15 -14
  34. package/dist/lib/custom/AIAgents/create-prompt-dialog.component.js.map +1 -1
  35. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.d.ts.map +1 -1
  36. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js +12 -12
  37. package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js.map +1 -1
  38. package/dist/lib/custom/AIAgents/new-agent-dialog.component.d.ts.map +1 -1
  39. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js +9 -8
  40. package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
  41. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.d.ts.map +1 -1
  42. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js +14 -14
  43. package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js.map +1 -1
  44. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.d.ts.map +1 -1
  45. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js +12 -11
  46. package/dist/lib/custom/AIAgents/sub-agent-advanced-settings-dialog.component.js.map +1 -1
  47. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts.map +1 -1
  48. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js +18 -16
  49. package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js.map +1 -1
  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 +91 -59
  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.map +1 -1
  54. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js +9 -9
  55. package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js.map +1 -1
  56. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts +0 -1
  57. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.d.ts.map +1 -1
  58. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +546 -532
  59. package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
  60. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js +12 -11
  61. package/dist/lib/custom/AIPrompts/template-selector-dialog.component.js.map +1 -1
  62. package/dist/lib/custom/Actions/action-execution-log-form.component.d.ts +0 -1
  63. package/dist/lib/custom/Actions/action-execution-log-form.component.d.ts.map +1 -1
  64. package/dist/lib/custom/Actions/action-execution-log-form.component.js +12 -10
  65. package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
  66. package/dist/lib/custom/Actions/action-form.component.d.ts +0 -1
  67. package/dist/lib/custom/Actions/action-form.component.d.ts.map +1 -1
  68. package/dist/lib/custom/Actions/action-form.component.js +62 -68
  69. package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
  70. package/dist/lib/custom/Actions/action-param-dialog.component.js +1 -1
  71. package/dist/lib/custom/Actions/action-result-code-dialog.component.js +1 -1
  72. package/dist/lib/custom/Actions/action-test-harness-dialog.component.js +1 -1
  73. package/dist/lib/custom/Actions/action-test-harness.component.js +1 -1
  74. package/dist/lib/custom/Actions/actions-top-area-extended.d.ts +8 -0
  75. package/dist/lib/custom/Actions/actions-top-area-extended.d.ts.map +1 -0
  76. package/dist/lib/custom/Actions/actions-top-area-extended.js +64 -0
  77. package/dist/lib/custom/Actions/actions-top-area-extended.js.map +1 -0
  78. package/dist/lib/custom/Entities/entities-form.component.d.ts +10 -0
  79. package/dist/lib/custom/Entities/entities-form.component.d.ts.map +1 -0
  80. package/dist/lib/custom/Entities/entities-form.component.js +198 -0
  81. package/dist/lib/custom/Entities/entities-form.component.js.map +1 -0
  82. package/dist/lib/custom/Entities/entity-form.component.d.ts +0 -1
  83. package/dist/lib/custom/Entities/entity-form.component.d.ts.map +1 -1
  84. package/dist/lib/custom/Entities/entity-form.component.js +722 -691
  85. package/dist/lib/custom/Entities/entity-form.component.js.map +1 -1
  86. package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts +0 -1
  87. package/dist/lib/custom/EntityActions/entityaction.form.component.d.ts.map +1 -1
  88. package/dist/lib/custom/EntityActions/entityaction.form.component.js +25 -29
  89. package/dist/lib/custom/EntityActions/entityaction.form.component.js.map +1 -1
  90. package/dist/lib/custom/Lists/list-form.component.d.ts +0 -1
  91. package/dist/lib/custom/Lists/list-form.component.d.ts.map +1 -1
  92. package/dist/lib/custom/Lists/list-form.component.js +425 -438
  93. package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
  94. package/dist/lib/custom/Queries/query-category-dialog.component.d.ts.map +1 -1
  95. package/dist/lib/custom/Queries/query-category-dialog.component.js +28 -29
  96. package/dist/lib/custom/Queries/query-category-dialog.component.js.map +1 -1
  97. package/dist/lib/custom/Queries/query-form.component.d.ts +0 -1
  98. package/dist/lib/custom/Queries/query-form.component.d.ts.map +1 -1
  99. package/dist/lib/custom/Queries/query-form.component.js +187 -185
  100. package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
  101. package/dist/lib/custom/Queries/query-run-dialog.component.d.ts.map +1 -1
  102. package/dist/lib/custom/Queries/query-run-dialog.component.js +90 -89
  103. package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
  104. package/dist/lib/custom/Templates/template-param-dialog.component.d.ts.map +1 -1
  105. package/dist/lib/custom/Templates/template-param-dialog.component.js +76 -75
  106. package/dist/lib/custom/Templates/template-param-dialog.component.js.map +1 -1
  107. package/dist/lib/custom/Templates/template-params-grid.component.d.ts.map +1 -1
  108. package/dist/lib/custom/Templates/template-params-grid.component.js +98 -93
  109. package/dist/lib/custom/Templates/template-params-grid.component.js.map +1 -1
  110. package/dist/lib/custom/Templates/templates-form.component.d.ts +0 -1
  111. package/dist/lib/custom/Templates/templates-form.component.d.ts.map +1 -1
  112. package/dist/lib/custom/Templates/templates-form.component.js +199 -126
  113. package/dist/lib/custom/Templates/templates-form.component.js.map +1 -1
  114. package/dist/lib/custom/Tests/entity-link-pill.component.d.ts +0 -1
  115. package/dist/lib/custom/Tests/entity-link-pill.component.d.ts.map +1 -1
  116. package/dist/lib/custom/Tests/entity-link-pill.component.js +16 -18
  117. package/dist/lib/custom/Tests/entity-link-pill.component.js.map +1 -1
  118. package/dist/lib/custom/Tests/test-form.component.d.ts +4 -2
  119. package/dist/lib/custom/Tests/test-form.component.d.ts.map +1 -1
  120. package/dist/lib/custom/Tests/test-form.component.js +485 -445
  121. package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
  122. package/dist/lib/custom/Tests/test-rubric-form.component.d.ts +0 -1
  123. package/dist/lib/custom/Tests/test-rubric-form.component.d.ts.map +1 -1
  124. package/dist/lib/custom/Tests/test-rubric-form.component.js +6 -8
  125. package/dist/lib/custom/Tests/test-rubric-form.component.js.map +1 -1
  126. package/dist/lib/custom/Tests/test-run-feedback-form.component.d.ts +0 -1
  127. package/dist/lib/custom/Tests/test-run-feedback-form.component.d.ts.map +1 -1
  128. package/dist/lib/custom/Tests/test-run-feedback-form.component.js +17 -17
  129. package/dist/lib/custom/Tests/test-run-feedback-form.component.js.map +1 -1
  130. package/dist/lib/custom/Tests/test-run-form.component.d.ts +0 -1
  131. package/dist/lib/custom/Tests/test-run-form.component.d.ts.map +1 -1
  132. package/dist/lib/custom/Tests/test-run-form.component.js +405 -390
  133. package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
  134. package/dist/lib/custom/Tests/test-suite-form.component.d.ts +4 -2
  135. package/dist/lib/custom/Tests/test-suite-form.component.d.ts.map +1 -1
  136. package/dist/lib/custom/Tests/test-suite-form.component.js +739 -693
  137. package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
  138. package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts +4 -2
  139. package/dist/lib/custom/Tests/test-suite-run-form.component.d.ts.map +1 -1
  140. package/dist/lib/custom/Tests/test-suite-run-form.component.js +685 -637
  141. package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
  142. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.d.ts.map +1 -1
  143. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js +240 -243
  144. package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js.map +1 -1
  145. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.d.ts.map +1 -1
  146. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.js +42 -40
  147. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.js.map +1 -1
  148. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.d.ts.map +1 -1
  149. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.js +37 -36
  150. package/dist/lib/custom/ai-agent-run/ai-agent-run-step-node.component.js.map +1 -1
  151. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.d.ts.map +1 -1
  152. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js +68 -78
  153. package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js.map +1 -1
  154. package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.d.ts.map +1 -1
  155. package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js +6 -6
  156. package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js.map +1 -1
  157. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts +0 -1
  158. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts.map +1 -1
  159. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js +289 -271
  160. package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
  161. package/dist/lib/custom/custom-forms.module.d.ts +51 -58
  162. package/dist/lib/custom/custom-forms.module.d.ts.map +1 -1
  163. package/dist/lib/custom/custom-forms.module.js +37 -81
  164. package/dist/lib/custom/custom-forms.module.js.map +1 -1
  165. package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts.map +1 -1
  166. package/dist/lib/custom/shared/entity-selector-dialog.component.js +85 -82
  167. package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
  168. package/dist/lib/generated/Entities/AIAction/aiaction.form.component.d.ts.map +1 -1
  169. package/dist/lib/generated/Entities/AIAction/aiaction.form.component.js +17 -18
  170. package/dist/lib/generated/Entities/AIAction/aiaction.form.component.js.map +1 -1
  171. package/dist/lib/generated/Entities/AIAction/sections/details.component.d.ts +11 -0
  172. package/dist/lib/generated/Entities/AIAction/sections/details.component.d.ts.map +1 -0
  173. package/dist/lib/generated/Entities/AIAction/sections/details.component.js +127 -0
  174. package/dist/lib/generated/Entities/AIAction/sections/details.component.js.map +1 -0
  175. package/dist/lib/generated/Entities/AIAgent/aiagent.form.component.d.ts.map +1 -1
  176. package/dist/lib/generated/Entities/AIAgent/aiagent.form.component.js +137 -138
  177. package/dist/lib/generated/Entities/AIAgent/aiagent.form.component.js.map +1 -1
  178. package/dist/lib/generated/Entities/AIAgent/sections/aiagent-form-overview.component.d.ts +54 -0
  179. package/dist/lib/generated/Entities/AIAgent/sections/aiagent-form-overview.component.d.ts.map +1 -0
  180. package/dist/lib/generated/Entities/AIAgent/sections/aiagent-form-overview.component.js +492 -0
  181. package/dist/lib/generated/Entities/AIAgent/sections/aiagent-form-overview.component.js.map +1 -0
  182. package/dist/lib/generated/Entities/AIAgent/sections/details.component.d.ts +11 -0
  183. package/dist/lib/generated/Entities/AIAgent/sections/details.component.d.ts.map +1 -0
  184. package/dist/lib/generated/Entities/AIAgent/sections/details.component.js +576 -0
  185. package/dist/lib/generated/Entities/AIAgent/sections/details.component.js.map +1 -0
  186. package/dist/lib/generated/Entities/AIAgentAction/aiagentaction.form.component.d.ts.map +1 -1
  187. package/dist/lib/generated/Entities/AIAgentAction/aiagentaction.form.component.js +3 -3
  188. package/dist/lib/generated/Entities/AIAgentAction/aiagentaction.form.component.js.map +1 -1
  189. package/dist/lib/generated/Entities/AIAgentAction/sections/details.component.d.ts +11 -0
  190. package/dist/lib/generated/Entities/AIAgentAction/sections/details.component.d.ts.map +1 -0
  191. package/dist/lib/generated/Entities/AIAgentAction/sections/details.component.js +194 -0
  192. package/dist/lib/generated/Entities/AIAgentAction/sections/details.component.js.map +1 -0
  193. package/dist/lib/generated/Entities/AIAgentArtifactType/aiagentartifacttype.form.component.d.ts.map +1 -1
  194. package/dist/lib/generated/Entities/AIAgentArtifactType/aiagentartifacttype.form.component.js +3 -3
  195. package/dist/lib/generated/Entities/AIAgentArtifactType/aiagentartifacttype.form.component.js.map +1 -1
  196. package/dist/lib/generated/Entities/AIAgentArtifactType/sections/details.component.d.ts +11 -0
  197. package/dist/lib/generated/Entities/AIAgentArtifactType/sections/details.component.d.ts.map +1 -0
  198. package/dist/lib/generated/Entities/AIAgentArtifactType/sections/details.component.js +120 -0
  199. package/dist/lib/generated/Entities/AIAgentArtifactType/sections/details.component.js.map +1 -0
  200. package/dist/lib/generated/Entities/AIAgentConfiguration/aiagentconfiguration.form.component.d.ts.map +1 -1
  201. package/dist/lib/generated/Entities/AIAgentConfiguration/aiagentconfiguration.form.component.js +3 -3
  202. package/dist/lib/generated/Entities/AIAgentConfiguration/aiagentconfiguration.form.component.js.map +1 -1
  203. package/dist/lib/generated/Entities/AIAgentDataSource/aiagentdatasource.form.component.d.ts.map +1 -1
  204. package/dist/lib/generated/Entities/AIAgentDataSource/aiagentdatasource.form.component.js +3 -3
  205. package/dist/lib/generated/Entities/AIAgentDataSource/aiagentdatasource.form.component.js.map +1 -1
  206. package/dist/lib/generated/Entities/AIAgentDataSource/sections/details.component.d.ts +11 -0
  207. package/dist/lib/generated/Entities/AIAgentDataSource/sections/details.component.d.ts.map +1 -0
  208. package/dist/lib/generated/Entities/AIAgentDataSource/sections/details.component.js +253 -0
  209. package/dist/lib/generated/Entities/AIAgentDataSource/sections/details.component.js.map +1 -0
  210. package/dist/lib/generated/Entities/AIAgentExample/aiagentexample.form.component.d.ts.map +1 -1
  211. package/dist/lib/generated/Entities/AIAgentExample/aiagentexample.form.component.js +3 -3
  212. package/dist/lib/generated/Entities/AIAgentExample/aiagentexample.form.component.js.map +1 -1
  213. package/dist/lib/generated/Entities/AIAgentExample/sections/details.component.d.ts +11 -0
  214. package/dist/lib/generated/Entities/AIAgentExample/sections/details.component.d.ts.map +1 -0
  215. package/dist/lib/generated/Entities/AIAgentExample/sections/details.component.js +265 -0
  216. package/dist/lib/generated/Entities/AIAgentExample/sections/details.component.js.map +1 -0
  217. package/dist/lib/generated/Entities/AIAgentLearningCycle/aiagentlearningcycle.form.component.d.ts.map +1 -1
  218. package/dist/lib/generated/Entities/AIAgentLearningCycle/aiagentlearningcycle.form.component.js +3 -3
  219. package/dist/lib/generated/Entities/AIAgentLearningCycle/aiagentlearningcycle.form.component.js.map +1 -1
  220. package/dist/lib/generated/Entities/AIAgentLearningCycle/sections/details.component.d.ts +11 -0
  221. package/dist/lib/generated/Entities/AIAgentLearningCycle/sections/details.component.d.ts.map +1 -0
  222. package/dist/lib/generated/Entities/AIAgentLearningCycle/sections/details.component.js +127 -0
  223. package/dist/lib/generated/Entities/AIAgentLearningCycle/sections/details.component.js.map +1 -0
  224. package/dist/lib/generated/Entities/AIAgentModality/aiagentmodality.form.component.d.ts.map +1 -1
  225. package/dist/lib/generated/Entities/AIAgentModality/aiagentmodality.form.component.js +3 -3
  226. package/dist/lib/generated/Entities/AIAgentModality/aiagentmodality.form.component.js.map +1 -1
  227. package/dist/lib/generated/Entities/AIAgentModel/aiagentmodel.form.component.d.ts.map +1 -1
  228. package/dist/lib/generated/Entities/AIAgentModel/aiagentmodel.form.component.js +3 -3
  229. package/dist/lib/generated/Entities/AIAgentModel/aiagentmodel.form.component.js.map +1 -1
  230. package/dist/lib/generated/Entities/AIAgentModel/sections/details.component.d.ts +11 -0
  231. package/dist/lib/generated/Entities/AIAgentModel/sections/details.component.d.ts.map +1 -0
  232. package/dist/lib/generated/Entities/AIAgentModel/sections/details.component.js +129 -0
  233. package/dist/lib/generated/Entities/AIAgentModel/sections/details.component.js.map +1 -0
  234. package/dist/lib/generated/Entities/AIAgentNote/aiagentnote.form.component.d.ts.map +1 -1
  235. package/dist/lib/generated/Entities/AIAgentNote/aiagentnote.form.component.js +3 -3
  236. package/dist/lib/generated/Entities/AIAgentNote/aiagentnote.form.component.js.map +1 -1
  237. package/dist/lib/generated/Entities/AIAgentNote/sections/details.component.d.ts +11 -0
  238. package/dist/lib/generated/Entities/AIAgentNote/sections/details.component.d.ts.map +1 -0
  239. package/dist/lib/generated/Entities/AIAgentNote/sections/details.component.js +267 -0
  240. package/dist/lib/generated/Entities/AIAgentNote/sections/details.component.js.map +1 -0
  241. package/dist/lib/generated/Entities/AIAgentNoteType/aiagentnotetype.form.component.d.ts.map +1 -1
  242. package/dist/lib/generated/Entities/AIAgentNoteType/aiagentnotetype.form.component.js +11 -12
  243. package/dist/lib/generated/Entities/AIAgentNoteType/aiagentnotetype.form.component.js.map +1 -1
  244. package/dist/lib/generated/Entities/AIAgentNoteType/sections/details.component.d.ts +11 -0
  245. package/dist/lib/generated/Entities/AIAgentNoteType/sections/details.component.d.ts.map +1 -0
  246. package/dist/lib/generated/Entities/AIAgentNoteType/sections/details.component.js +107 -0
  247. package/dist/lib/generated/Entities/AIAgentNoteType/sections/details.component.js.map +1 -0
  248. package/dist/lib/generated/Entities/AIAgentPermission/aiagentpermission.form.component.d.ts.map +1 -1
  249. package/dist/lib/generated/Entities/AIAgentPermission/aiagentpermission.form.component.js +3 -3
  250. package/dist/lib/generated/Entities/AIAgentPermission/aiagentpermission.form.component.js.map +1 -1
  251. package/dist/lib/generated/Entities/AIAgentPermission/sections/details.component.d.ts +11 -0
  252. package/dist/lib/generated/Entities/AIAgentPermission/sections/details.component.d.ts.map +1 -0
  253. package/dist/lib/generated/Entities/AIAgentPermission/sections/details.component.js +176 -0
  254. package/dist/lib/generated/Entities/AIAgentPermission/sections/details.component.js.map +1 -0
  255. package/dist/lib/generated/Entities/AIAgentPrompt/aiagentprompt.form.component.d.ts.map +1 -1
  256. package/dist/lib/generated/Entities/AIAgentPrompt/aiagentprompt.form.component.js +3 -3
  257. package/dist/lib/generated/Entities/AIAgentPrompt/aiagentprompt.form.component.js.map +1 -1
  258. package/dist/lib/generated/Entities/AIAgentPrompt/sections/details.component.d.ts +11 -0
  259. package/dist/lib/generated/Entities/AIAgentPrompt/sections/details.component.d.ts.map +1 -0
  260. package/dist/lib/generated/Entities/AIAgentPrompt/sections/details.component.js +176 -0
  261. package/dist/lib/generated/Entities/AIAgentPrompt/sections/details.component.js.map +1 -0
  262. package/dist/lib/generated/Entities/AIAgentRelationship/aiagentrelationship.form.component.d.ts.map +1 -1
  263. package/dist/lib/generated/Entities/AIAgentRelationship/aiagentrelationship.form.component.js +3 -3
  264. package/dist/lib/generated/Entities/AIAgentRelationship/aiagentrelationship.form.component.js.map +1 -1
  265. package/dist/lib/generated/Entities/AIAgentRelationship/sections/details.component.d.ts +11 -0
  266. package/dist/lib/generated/Entities/AIAgentRelationship/sections/details.component.d.ts.map +1 -0
  267. package/dist/lib/generated/Entities/AIAgentRelationship/sections/details.component.js +165 -0
  268. package/dist/lib/generated/Entities/AIAgentRelationship/sections/details.component.js.map +1 -0
  269. package/dist/lib/generated/Entities/AIAgentRequest/aiagentrequest.form.component.d.ts.map +1 -1
  270. package/dist/lib/generated/Entities/AIAgentRequest/aiagentrequest.form.component.js +3 -3
  271. package/dist/lib/generated/Entities/AIAgentRequest/aiagentrequest.form.component.js.map +1 -1
  272. package/dist/lib/generated/Entities/AIAgentRequest/sections/details.component.d.ts +11 -0
  273. package/dist/lib/generated/Entities/AIAgentRequest/sections/details.component.d.ts.map +1 -0
  274. package/dist/lib/generated/Entities/AIAgentRequest/sections/details.component.js +185 -0
  275. package/dist/lib/generated/Entities/AIAgentRequest/sections/details.component.js.map +1 -0
  276. package/dist/lib/generated/Entities/AIAgentRun/aiagentrun.form.component.d.ts.map +1 -1
  277. package/dist/lib/generated/Entities/AIAgentRun/aiagentrun.form.component.js +41 -42
  278. package/dist/lib/generated/Entities/AIAgentRun/aiagentrun.form.component.js.map +1 -1
  279. package/dist/lib/generated/Entities/AIAgentRun/sections/details.component.d.ts +11 -0
  280. package/dist/lib/generated/Entities/AIAgentRun/sections/details.component.d.ts.map +1 -0
  281. package/dist/lib/generated/Entities/AIAgentRun/sections/details.component.js +496 -0
  282. package/dist/lib/generated/Entities/AIAgentRun/sections/details.component.js.map +1 -0
  283. package/dist/lib/generated/Entities/AIAgentRunMedia/aiagentrunmedia.form.component.d.ts.map +1 -1
  284. package/dist/lib/generated/Entities/AIAgentRunMedia/aiagentrunmedia.form.component.js +3 -3
  285. package/dist/lib/generated/Entities/AIAgentRunMedia/aiagentrunmedia.form.component.js.map +1 -1
  286. package/dist/lib/generated/Entities/AIAgentRunStep/aiagentrunstep.form.component.d.ts.map +1 -1
  287. package/dist/lib/generated/Entities/AIAgentRunStep/aiagentrunstep.form.component.js +24 -31
  288. package/dist/lib/generated/Entities/AIAgentRunStep/aiagentrunstep.form.component.js.map +1 -1
  289. package/dist/lib/generated/Entities/AIAgentRunStep/sections/details.component.d.ts +11 -0
  290. package/dist/lib/generated/Entities/AIAgentRunStep/sections/details.component.d.ts.map +1 -0
  291. package/dist/lib/generated/Entities/AIAgentRunStep/sections/details.component.js +255 -0
  292. package/dist/lib/generated/Entities/AIAgentRunStep/sections/details.component.js.map +1 -0
  293. package/dist/lib/generated/Entities/AIAgentStep/aiagentstep.form.component.d.ts.map +1 -1
  294. package/dist/lib/generated/Entities/AIAgentStep/aiagentstep.form.component.js +16 -17
  295. package/dist/lib/generated/Entities/AIAgentStep/aiagentstep.form.component.js.map +1 -1
  296. package/dist/lib/generated/Entities/AIAgentStep/sections/details.component.d.ts +11 -0
  297. package/dist/lib/generated/Entities/AIAgentStep/sections/details.component.d.ts.map +1 -0
  298. package/dist/lib/generated/Entities/AIAgentStep/sections/details.component.js +295 -0
  299. package/dist/lib/generated/Entities/AIAgentStep/sections/details.component.js.map +1 -0
  300. package/dist/lib/generated/Entities/AIAgentStepPath/aiagentsteppath.form.component.d.ts.map +1 -1
  301. package/dist/lib/generated/Entities/AIAgentStepPath/aiagentsteppath.form.component.js +3 -3
  302. package/dist/lib/generated/Entities/AIAgentStepPath/aiagentsteppath.form.component.js.map +1 -1
  303. package/dist/lib/generated/Entities/AIAgentStepPath/sections/details.component.d.ts +11 -0
  304. package/dist/lib/generated/Entities/AIAgentStepPath/sections/details.component.d.ts.map +1 -0
  305. package/dist/lib/generated/Entities/AIAgentStepPath/sections/details.component.js +147 -0
  306. package/dist/lib/generated/Entities/AIAgentStepPath/sections/details.component.js.map +1 -0
  307. package/dist/lib/generated/Entities/AIAgentType/aiagenttype.form.component.d.ts.map +1 -1
  308. package/dist/lib/generated/Entities/AIAgentType/aiagenttype.form.component.js +11 -12
  309. package/dist/lib/generated/Entities/AIAgentType/aiagenttype.form.component.js.map +1 -1
  310. package/dist/lib/generated/Entities/AIAgentType/sections/details.component.d.ts +11 -0
  311. package/dist/lib/generated/Entities/AIAgentType/sections/details.component.d.ts.map +1 -0
  312. package/dist/lib/generated/Entities/AIAgentType/sections/details.component.js +163 -0
  313. package/dist/lib/generated/Entities/AIAgentType/sections/details.component.js.map +1 -0
  314. package/dist/lib/generated/Entities/AIArchitecture/aiarchitecture.form.component.d.ts.map +1 -1
  315. package/dist/lib/generated/Entities/AIArchitecture/aiarchitecture.form.component.js +17 -18
  316. package/dist/lib/generated/Entities/AIArchitecture/aiarchitecture.form.component.js.map +1 -1
  317. package/dist/lib/generated/Entities/AIConfiguration/aiconfiguration.form.component.d.ts.map +1 -1
  318. package/dist/lib/generated/Entities/AIConfiguration/aiconfiguration.form.component.js +53 -54
  319. package/dist/lib/generated/Entities/AIConfiguration/aiconfiguration.form.component.js.map +1 -1
  320. package/dist/lib/generated/Entities/AIConfiguration/sections/details.component.d.ts +11 -0
  321. package/dist/lib/generated/Entities/AIConfiguration/sections/details.component.d.ts.map +1 -0
  322. package/dist/lib/generated/Entities/AIConfiguration/sections/details.component.js +147 -0
  323. package/dist/lib/generated/Entities/AIConfiguration/sections/details.component.js.map +1 -0
  324. package/dist/lib/generated/Entities/AIConfigurationParam/aiconfigurationparam.form.component.d.ts.map +1 -1
  325. package/dist/lib/generated/Entities/AIConfigurationParam/aiconfigurationparam.form.component.js +3 -3
  326. package/dist/lib/generated/Entities/AIConfigurationParam/aiconfigurationparam.form.component.js.map +1 -1
  327. package/dist/lib/generated/Entities/AIConfigurationParam/sections/details.component.d.ts +11 -0
  328. package/dist/lib/generated/Entities/AIConfigurationParam/sections/details.component.d.ts.map +1 -0
  329. package/dist/lib/generated/Entities/AIConfigurationParam/sections/details.component.js +127 -0
  330. package/dist/lib/generated/Entities/AIConfigurationParam/sections/details.component.js.map +1 -0
  331. package/dist/lib/generated/Entities/AICredentialBinding/aicredentialbinding.form.component.d.ts.map +1 -1
  332. package/dist/lib/generated/Entities/AICredentialBinding/aicredentialbinding.form.component.js +3 -3
  333. package/dist/lib/generated/Entities/AICredentialBinding/aicredentialbinding.form.component.js.map +1 -1
  334. package/dist/lib/generated/Entities/AIModality/aimodality.form.component.d.ts.map +1 -1
  335. package/dist/lib/generated/Entities/AIModality/aimodality.form.component.js +47 -48
  336. package/dist/lib/generated/Entities/AIModality/aimodality.form.component.js.map +1 -1
  337. package/dist/lib/generated/Entities/AIModel/aimodel.form.component.d.ts.map +1 -1
  338. package/dist/lib/generated/Entities/AIModel/aimodel.form.component.js +125 -126
  339. package/dist/lib/generated/Entities/AIModel/aimodel.form.component.js.map +1 -1
  340. package/dist/lib/generated/Entities/AIModel/sections/details.component.d.ts +11 -0
  341. package/dist/lib/generated/Entities/AIModel/sections/details.component.d.ts.map +1 -0
  342. package/dist/lib/generated/Entities/AIModel/sections/details.component.js +217 -0
  343. package/dist/lib/generated/Entities/AIModel/sections/details.component.js.map +1 -0
  344. package/dist/lib/generated/Entities/AIModelAction/aimodelaction.form.component.d.ts.map +1 -1
  345. package/dist/lib/generated/Entities/AIModelAction/aimodelaction.form.component.js +3 -3
  346. package/dist/lib/generated/Entities/AIModelAction/aimodelaction.form.component.js.map +1 -1
  347. package/dist/lib/generated/Entities/AIModelAction/sections/details.component.d.ts +11 -0
  348. package/dist/lib/generated/Entities/AIModelAction/sections/details.component.d.ts.map +1 -0
  349. package/dist/lib/generated/Entities/AIModelAction/sections/details.component.js +120 -0
  350. package/dist/lib/generated/Entities/AIModelAction/sections/details.component.js.map +1 -0
  351. package/dist/lib/generated/Entities/AIModelArchitecture/aimodelarchitecture.form.component.d.ts.map +1 -1
  352. package/dist/lib/generated/Entities/AIModelArchitecture/aimodelarchitecture.form.component.js +3 -3
  353. package/dist/lib/generated/Entities/AIModelArchitecture/aimodelarchitecture.form.component.js.map +1 -1
  354. package/dist/lib/generated/Entities/AIModelCost/aimodelcost.form.component.d.ts.map +1 -1
  355. package/dist/lib/generated/Entities/AIModelCost/aimodelcost.form.component.js +3 -3
  356. package/dist/lib/generated/Entities/AIModelCost/aimodelcost.form.component.js.map +1 -1
  357. package/dist/lib/generated/Entities/AIModelCost/sections/details.component.d.ts +11 -0
  358. package/dist/lib/generated/Entities/AIModelCost/sections/details.component.d.ts.map +1 -0
  359. package/dist/lib/generated/Entities/AIModelCost/sections/details.component.js +223 -0
  360. package/dist/lib/generated/Entities/AIModelCost/sections/details.component.js.map +1 -0
  361. package/dist/lib/generated/Entities/AIModelModality/aimodelmodality.form.component.d.ts.map +1 -1
  362. package/dist/lib/generated/Entities/AIModelModality/aimodelmodality.form.component.js +3 -3
  363. package/dist/lib/generated/Entities/AIModelModality/aimodelmodality.form.component.js.map +1 -1
  364. package/dist/lib/generated/Entities/AIModelPriceType/aimodelpricetype.form.component.d.ts.map +1 -1
  365. package/dist/lib/generated/Entities/AIModelPriceType/aimodelpricetype.form.component.js +11 -12
  366. package/dist/lib/generated/Entities/AIModelPriceType/aimodelpricetype.form.component.js.map +1 -1
  367. package/dist/lib/generated/Entities/AIModelPriceType/sections/details.component.d.ts +11 -0
  368. package/dist/lib/generated/Entities/AIModelPriceType/sections/details.component.d.ts.map +1 -0
  369. package/dist/lib/generated/Entities/AIModelPriceType/sections/details.component.js +89 -0
  370. package/dist/lib/generated/Entities/AIModelPriceType/sections/details.component.js.map +1 -0
  371. package/dist/lib/generated/Entities/AIModelPriceUnitType/aimodelpriceunittype.form.component.d.ts.map +1 -1
  372. package/dist/lib/generated/Entities/AIModelPriceUnitType/aimodelpriceunittype.form.component.js +11 -12
  373. package/dist/lib/generated/Entities/AIModelPriceUnitType/aimodelpriceunittype.form.component.js.map +1 -1
  374. package/dist/lib/generated/Entities/AIModelPriceUnitType/sections/details.component.d.ts +11 -0
  375. package/dist/lib/generated/Entities/AIModelPriceUnitType/sections/details.component.d.ts.map +1 -0
  376. package/dist/lib/generated/Entities/AIModelPriceUnitType/sections/details.component.js +98 -0
  377. package/dist/lib/generated/Entities/AIModelPriceUnitType/sections/details.component.js.map +1 -0
  378. package/dist/lib/generated/Entities/AIModelType/aimodeltype.form.component.d.ts.map +1 -1
  379. package/dist/lib/generated/Entities/AIModelType/aimodeltype.form.component.js +17 -18
  380. package/dist/lib/generated/Entities/AIModelType/aimodeltype.form.component.js.map +1 -1
  381. package/dist/lib/generated/Entities/AIModelType/sections/details.component.d.ts +11 -0
  382. package/dist/lib/generated/Entities/AIModelType/sections/details.component.d.ts.map +1 -0
  383. package/dist/lib/generated/Entities/AIModelType/sections/details.component.js +89 -0
  384. package/dist/lib/generated/Entities/AIModelType/sections/details.component.js.map +1 -0
  385. package/dist/lib/generated/Entities/AIModelVendor/aimodelvendor.form.component.d.ts.map +1 -1
  386. package/dist/lib/generated/Entities/AIModelVendor/aimodelvendor.form.component.js +11 -12
  387. package/dist/lib/generated/Entities/AIModelVendor/aimodelvendor.form.component.js.map +1 -1
  388. package/dist/lib/generated/Entities/AIModelVendor/sections/details.component.d.ts +11 -0
  389. package/dist/lib/generated/Entities/AIModelVendor/sections/details.component.d.ts.map +1 -0
  390. package/dist/lib/generated/Entities/AIModelVendor/sections/details.component.js +221 -0
  391. package/dist/lib/generated/Entities/AIModelVendor/sections/details.component.js.map +1 -0
  392. package/dist/lib/generated/Entities/AIPrompt/aiprompt.form.component.d.ts.map +1 -1
  393. package/dist/lib/generated/Entities/AIPrompt/aiprompt.form.component.js +77 -78
  394. package/dist/lib/generated/Entities/AIPrompt/aiprompt.form.component.js.map +1 -1
  395. package/dist/lib/generated/Entities/AIPrompt/sections/details.component.d.ts +11 -0
  396. package/dist/lib/generated/Entities/AIPrompt/sections/details.component.d.ts.map +1 -0
  397. package/dist/lib/generated/Entities/AIPrompt/sections/details.component.js +567 -0
  398. package/dist/lib/generated/Entities/AIPrompt/sections/details.component.js.map +1 -0
  399. package/dist/lib/generated/Entities/AIPromptCategory/aipromptcategory.form.component.d.ts.map +1 -1
  400. package/dist/lib/generated/Entities/AIPromptCategory/aipromptcategory.form.component.js +17 -18
  401. package/dist/lib/generated/Entities/AIPromptCategory/aipromptcategory.form.component.js.map +1 -1
  402. package/dist/lib/generated/Entities/AIPromptCategory/sections/details.component.d.ts +11 -0
  403. package/dist/lib/generated/Entities/AIPromptCategory/sections/details.component.d.ts.map +1 -0
  404. package/dist/lib/generated/Entities/AIPromptCategory/sections/details.component.js +118 -0
  405. package/dist/lib/generated/Entities/AIPromptCategory/sections/details.component.js.map +1 -0
  406. package/dist/lib/generated/Entities/AIPromptModel/aipromptmodel.form.component.d.ts.map +1 -1
  407. package/dist/lib/generated/Entities/AIPromptModel/aipromptmodel.form.component.js +11 -12
  408. package/dist/lib/generated/Entities/AIPromptModel/aipromptmodel.form.component.js.map +1 -1
  409. package/dist/lib/generated/Entities/AIPromptModel/sections/details.component.d.ts +11 -0
  410. package/dist/lib/generated/Entities/AIPromptModel/sections/details.component.d.ts.map +1 -0
  411. package/dist/lib/generated/Entities/AIPromptModel/sections/details.component.js +214 -0
  412. package/dist/lib/generated/Entities/AIPromptModel/sections/details.component.js.map +1 -0
  413. package/dist/lib/generated/Entities/AIPromptRun/aipromptrun.form.component.d.ts.map +1 -1
  414. package/dist/lib/generated/Entities/AIPromptRun/aipromptrun.form.component.js +23 -24
  415. package/dist/lib/generated/Entities/AIPromptRun/aipromptrun.form.component.js.map +1 -1
  416. package/dist/lib/generated/Entities/AIPromptRun/sections/details.component.d.ts +11 -0
  417. package/dist/lib/generated/Entities/AIPromptRun/sections/details.component.d.ts.map +1 -0
  418. package/dist/lib/generated/Entities/AIPromptRun/sections/details.component.js +903 -0
  419. package/dist/lib/generated/Entities/AIPromptRun/sections/details.component.js.map +1 -0
  420. package/dist/lib/generated/Entities/AIPromptRunMedia/aipromptrunmedia.form.component.d.ts.map +1 -1
  421. package/dist/lib/generated/Entities/AIPromptRunMedia/aipromptrunmedia.form.component.js +11 -12
  422. package/dist/lib/generated/Entities/AIPromptRunMedia/aipromptrunmedia.form.component.js.map +1 -1
  423. package/dist/lib/generated/Entities/AIPromptType/aiprompttype.form.component.d.ts.map +1 -1
  424. package/dist/lib/generated/Entities/AIPromptType/aiprompttype.form.component.js +11 -12
  425. package/dist/lib/generated/Entities/AIPromptType/aiprompttype.form.component.js.map +1 -1
  426. package/dist/lib/generated/Entities/AIPromptType/sections/details.component.d.ts +11 -0
  427. package/dist/lib/generated/Entities/AIPromptType/sections/details.component.d.ts.map +1 -0
  428. package/dist/lib/generated/Entities/AIPromptType/sections/details.component.js +89 -0
  429. package/dist/lib/generated/Entities/AIPromptType/sections/details.component.js.map +1 -0
  430. package/dist/lib/generated/Entities/AIResultCache/airesultcache.form.component.d.ts.map +1 -1
  431. package/dist/lib/generated/Entities/AIResultCache/airesultcache.form.component.js +12 -18
  432. package/dist/lib/generated/Entities/AIResultCache/airesultcache.form.component.js.map +1 -1
  433. package/dist/lib/generated/Entities/AIResultCache/sections/details.component.d.ts +11 -0
  434. package/dist/lib/generated/Entities/AIResultCache/sections/details.component.d.ts.map +1 -0
  435. package/dist/lib/generated/Entities/AIResultCache/sections/details.component.js +236 -0
  436. package/dist/lib/generated/Entities/AIResultCache/sections/details.component.js.map +1 -0
  437. package/dist/lib/generated/Entities/AIVendor/aivendor.form.component.d.ts.map +1 -1
  438. package/dist/lib/generated/Entities/AIVendor/aivendor.form.component.js +53 -54
  439. package/dist/lib/generated/Entities/AIVendor/aivendor.form.component.js.map +1 -1
  440. package/dist/lib/generated/Entities/AIVendor/sections/details.component.d.ts +11 -0
  441. package/dist/lib/generated/Entities/AIVendor/sections/details.component.d.ts.map +1 -0
  442. package/dist/lib/generated/Entities/AIVendor/sections/details.component.js +89 -0
  443. package/dist/lib/generated/Entities/AIVendor/sections/details.component.js.map +1 -0
  444. package/dist/lib/generated/Entities/AIVendorType/aivendortype.form.component.d.ts.map +1 -1
  445. package/dist/lib/generated/Entities/AIVendorType/aivendortype.form.component.js +3 -3
  446. package/dist/lib/generated/Entities/AIVendorType/aivendortype.form.component.js.map +1 -1
  447. package/dist/lib/generated/Entities/AIVendorType/sections/details.component.d.ts +11 -0
  448. package/dist/lib/generated/Entities/AIVendorType/sections/details.component.d.ts.map +1 -0
  449. package/dist/lib/generated/Entities/AIVendorType/sections/details.component.js +129 -0
  450. package/dist/lib/generated/Entities/AIVendorType/sections/details.component.js.map +1 -0
  451. package/dist/lib/generated/Entities/AIVendorTypeDefinition/aivendortypedefinition.form.component.d.ts.map +1 -1
  452. package/dist/lib/generated/Entities/AIVendorTypeDefinition/aivendortypedefinition.form.component.js +17 -18
  453. package/dist/lib/generated/Entities/AIVendorTypeDefinition/aivendortypedefinition.form.component.js.map +1 -1
  454. package/dist/lib/generated/Entities/AIVendorTypeDefinition/sections/details.component.d.ts +11 -0
  455. package/dist/lib/generated/Entities/AIVendorTypeDefinition/sections/details.component.d.ts.map +1 -0
  456. package/dist/lib/generated/Entities/AIVendorTypeDefinition/sections/details.component.js +89 -0
  457. package/dist/lib/generated/Entities/AIVendorTypeDefinition/sections/details.component.js.map +1 -0
  458. package/dist/lib/generated/Entities/APIApplication/apiapplication.form.component.d.ts.map +1 -1
  459. package/dist/lib/generated/Entities/APIApplication/apiapplication.form.component.js +23 -24
  460. package/dist/lib/generated/Entities/APIApplication/apiapplication.form.component.js.map +1 -1
  461. package/dist/lib/generated/Entities/APIApplicationScope/apiapplicationscope.form.component.d.ts.map +1 -1
  462. package/dist/lib/generated/Entities/APIApplicationScope/apiapplicationscope.form.component.js +3 -3
  463. package/dist/lib/generated/Entities/APIApplicationScope/apiapplicationscope.form.component.js.map +1 -1
  464. package/dist/lib/generated/Entities/APIKey/apikey.form.component.d.ts.map +1 -1
  465. package/dist/lib/generated/Entities/APIKey/apikey.form.component.js +23 -24
  466. package/dist/lib/generated/Entities/APIKey/apikey.form.component.js.map +1 -1
  467. package/dist/lib/generated/Entities/APIKeyApplication/apikeyapplication.form.component.d.ts.map +1 -1
  468. package/dist/lib/generated/Entities/APIKeyApplication/apikeyapplication.form.component.js +3 -3
  469. package/dist/lib/generated/Entities/APIKeyApplication/apikeyapplication.form.component.js.map +1 -1
  470. package/dist/lib/generated/Entities/APIKeyScope/apikeyscope.form.component.d.ts.map +1 -1
  471. package/dist/lib/generated/Entities/APIKeyScope/apikeyscope.form.component.js +3 -3
  472. package/dist/lib/generated/Entities/APIKeyScope/apikeyscope.form.component.js.map +1 -1
  473. package/dist/lib/generated/Entities/APIKeyUsageLog/apikeyusagelog.form.component.d.ts.map +1 -1
  474. package/dist/lib/generated/Entities/APIKeyUsageLog/apikeyusagelog.form.component.js +3 -3
  475. package/dist/lib/generated/Entities/APIKeyUsageLog/apikeyusagelog.form.component.js.map +1 -1
  476. package/dist/lib/generated/Entities/APIScope/apiscope.form.component.d.ts.map +1 -1
  477. package/dist/lib/generated/Entities/APIScope/apiscope.form.component.js +28 -27
  478. package/dist/lib/generated/Entities/APIScope/apiscope.form.component.js.map +1 -1
  479. package/dist/lib/generated/Entities/AccessControlRule/accesscontrolrule.form.component.d.ts.map +1 -1
  480. package/dist/lib/generated/Entities/AccessControlRule/accesscontrolrule.form.component.js +3 -3
  481. package/dist/lib/generated/Entities/AccessControlRule/accesscontrolrule.form.component.js.map +1 -1
  482. package/dist/lib/generated/Entities/AccessControlRule/sections/details.component.d.ts +11 -0
  483. package/dist/lib/generated/Entities/AccessControlRule/sections/details.component.d.ts.map +1 -0
  484. package/dist/lib/generated/Entities/AccessControlRule/sections/details.component.js +192 -0
  485. package/dist/lib/generated/Entities/AccessControlRule/sections/details.component.js.map +1 -0
  486. package/dist/lib/generated/Entities/Action/action.form.component.d.ts.map +1 -1
  487. package/dist/lib/generated/Entities/Action/action.form.component.js +84 -67
  488. package/dist/lib/generated/Entities/Action/action.form.component.js.map +1 -1
  489. package/dist/lib/generated/Entities/Action/sections/code.component.d.ts +11 -0
  490. package/dist/lib/generated/Entities/Action/sections/code.component.d.ts.map +1 -0
  491. package/dist/lib/generated/Entities/Action/sections/code.component.js +62 -0
  492. package/dist/lib/generated/Entities/Action/sections/code.component.js.map +1 -0
  493. package/dist/lib/generated/Entities/Action/sections/details.component.d.ts +11 -0
  494. package/dist/lib/generated/Entities/Action/sections/details.component.d.ts.map +1 -0
  495. package/dist/lib/generated/Entities/Action/sections/details.component.js +277 -0
  496. package/dist/lib/generated/Entities/Action/sections/details.component.js.map +1 -0
  497. package/dist/lib/generated/Entities/Action/sections/top.component.d.ts +11 -0
  498. package/dist/lib/generated/Entities/Action/sections/top.component.d.ts.map +1 -0
  499. package/dist/lib/generated/Entities/Action/sections/top.component.js +71 -0
  500. package/dist/lib/generated/Entities/Action/sections/top.component.js.map +1 -0
  501. package/dist/lib/generated/Entities/ActionAuthorization/actionauthorization.form.component.d.ts.map +1 -1
  502. package/dist/lib/generated/Entities/ActionAuthorization/actionauthorization.form.component.js +3 -3
  503. package/dist/lib/generated/Entities/ActionAuthorization/actionauthorization.form.component.js.map +1 -1
  504. package/dist/lib/generated/Entities/ActionAuthorization/sections/details.component.d.ts +11 -0
  505. package/dist/lib/generated/Entities/ActionAuthorization/sections/details.component.d.ts.map +1 -0
  506. package/dist/lib/generated/Entities/ActionAuthorization/sections/details.component.js +120 -0
  507. package/dist/lib/generated/Entities/ActionAuthorization/sections/details.component.js.map +1 -0
  508. package/dist/lib/generated/Entities/ActionCategory/actioncategory.form.component.d.ts.map +1 -1
  509. package/dist/lib/generated/Entities/ActionCategory/actioncategory.form.component.js +34 -17
  510. package/dist/lib/generated/Entities/ActionCategory/actioncategory.form.component.js.map +1 -1
  511. package/dist/lib/generated/Entities/ActionCategory/sections/details.component.d.ts +11 -0
  512. package/dist/lib/generated/Entities/ActionCategory/sections/details.component.d.ts.map +1 -0
  513. package/dist/lib/generated/Entities/ActionCategory/sections/details.component.js +127 -0
  514. package/dist/lib/generated/Entities/ActionCategory/sections/details.component.js.map +1 -0
  515. package/dist/lib/generated/Entities/ActionContext/actioncontext.form.component.d.ts.map +1 -1
  516. package/dist/lib/generated/Entities/ActionContext/actioncontext.form.component.js +3 -3
  517. package/dist/lib/generated/Entities/ActionContext/actioncontext.form.component.js.map +1 -1
  518. package/dist/lib/generated/Entities/ActionContext/sections/details.component.d.ts +11 -0
  519. package/dist/lib/generated/Entities/ActionContext/sections/details.component.d.ts.map +1 -0
  520. package/dist/lib/generated/Entities/ActionContext/sections/details.component.js +120 -0
  521. package/dist/lib/generated/Entities/ActionContext/sections/details.component.js.map +1 -0
  522. package/dist/lib/generated/Entities/ActionContextType/actioncontexttype.form.component.d.ts.map +1 -1
  523. package/dist/lib/generated/Entities/ActionContextType/actioncontexttype.form.component.js +11 -12
  524. package/dist/lib/generated/Entities/ActionContextType/actioncontexttype.form.component.js.map +1 -1
  525. package/dist/lib/generated/Entities/ActionContextType/sections/details.component.d.ts +11 -0
  526. package/dist/lib/generated/Entities/ActionContextType/sections/details.component.d.ts.map +1 -0
  527. package/dist/lib/generated/Entities/ActionContextType/sections/details.component.js +89 -0
  528. package/dist/lib/generated/Entities/ActionContextType/sections/details.component.js.map +1 -0
  529. package/dist/lib/generated/Entities/ActionExecutionLog/actionexecutionlog.form.component.d.ts.map +1 -1
  530. package/dist/lib/generated/Entities/ActionExecutionLog/actionexecutionlog.form.component.js +3 -3
  531. package/dist/lib/generated/Entities/ActionExecutionLog/actionexecutionlog.form.component.js.map +1 -1
  532. package/dist/lib/generated/Entities/ActionExecutionLog/sections/details.component.d.ts +11 -0
  533. package/dist/lib/generated/Entities/ActionExecutionLog/sections/details.component.d.ts.map +1 -0
  534. package/dist/lib/generated/Entities/ActionExecutionLog/sections/details.component.js +165 -0
  535. package/dist/lib/generated/Entities/ActionExecutionLog/sections/details.component.js.map +1 -0
  536. package/dist/lib/generated/Entities/ActionFilter/actionfilter.form.component.d.ts.map +1 -1
  537. package/dist/lib/generated/Entities/ActionFilter/actionfilter.form.component.js +11 -12
  538. package/dist/lib/generated/Entities/ActionFilter/actionfilter.form.component.js.map +1 -1
  539. package/dist/lib/generated/Entities/ActionFilter/sections/details.component.d.ts +11 -0
  540. package/dist/lib/generated/Entities/ActionFilter/sections/details.component.d.ts.map +1 -0
  541. package/dist/lib/generated/Entities/ActionFilter/sections/details.component.js +107 -0
  542. package/dist/lib/generated/Entities/ActionFilter/sections/details.component.js.map +1 -0
  543. package/dist/lib/generated/Entities/ActionLibrary/actionlibrary.form.component.d.ts.map +1 -1
  544. package/dist/lib/generated/Entities/ActionLibrary/actionlibrary.form.component.js +3 -3
  545. package/dist/lib/generated/Entities/ActionLibrary/actionlibrary.form.component.js.map +1 -1
  546. package/dist/lib/generated/Entities/ActionLibrary/sections/details.component.d.ts +11 -0
  547. package/dist/lib/generated/Entities/ActionLibrary/sections/details.component.d.ts.map +1 -0
  548. package/dist/lib/generated/Entities/ActionLibrary/sections/details.component.js +120 -0
  549. package/dist/lib/generated/Entities/ActionLibrary/sections/details.component.js.map +1 -0
  550. package/dist/lib/generated/Entities/ActionParam/actionparam.form.component.d.ts.map +1 -1
  551. package/dist/lib/generated/Entities/ActionParam/actionparam.form.component.js +17 -18
  552. package/dist/lib/generated/Entities/ActionParam/actionparam.form.component.js.map +1 -1
  553. package/dist/lib/generated/Entities/ActionParam/sections/details.component.d.ts +11 -0
  554. package/dist/lib/generated/Entities/ActionParam/sections/details.component.d.ts.map +1 -0
  555. package/dist/lib/generated/Entities/ActionParam/sections/details.component.js +154 -0
  556. package/dist/lib/generated/Entities/ActionParam/sections/details.component.js.map +1 -0
  557. package/dist/lib/generated/Entities/ActionResultCode/actionresultcode.form.component.d.ts.map +1 -1
  558. package/dist/lib/generated/Entities/ActionResultCode/actionresultcode.form.component.js +3 -3
  559. package/dist/lib/generated/Entities/ActionResultCode/actionresultcode.form.component.js.map +1 -1
  560. package/dist/lib/generated/Entities/ActionResultCode/sections/details.component.d.ts +11 -0
  561. package/dist/lib/generated/Entities/ActionResultCode/sections/details.component.d.ts.map +1 -0
  562. package/dist/lib/generated/Entities/ActionResultCode/sections/details.component.js +118 -0
  563. package/dist/lib/generated/Entities/ActionResultCode/sections/details.component.js.map +1 -0
  564. package/dist/lib/generated/Entities/Application/application.form.component.d.ts.map +1 -1
  565. package/dist/lib/generated/Entities/Application/application.form.component.js +35 -36
  566. package/dist/lib/generated/Entities/Application/application.form.component.js.map +1 -1
  567. package/dist/lib/generated/Entities/Application/sections/details.component.d.ts +11 -0
  568. package/dist/lib/generated/Entities/Application/sections/details.component.d.ts.map +1 -0
  569. package/dist/lib/generated/Entities/Application/sections/details.component.js +116 -0
  570. package/dist/lib/generated/Entities/Application/sections/details.component.js.map +1 -0
  571. package/dist/lib/generated/Entities/ApplicationEntity/applicationentity.form.component.d.ts.map +1 -1
  572. package/dist/lib/generated/Entities/ApplicationEntity/applicationentity.form.component.js +3 -3
  573. package/dist/lib/generated/Entities/ApplicationEntity/applicationentity.form.component.js.map +1 -1
  574. package/dist/lib/generated/Entities/ApplicationEntity/sections/details.component.d.ts +11 -0
  575. package/dist/lib/generated/Entities/ApplicationEntity/sections/details.component.d.ts.map +1 -0
  576. package/dist/lib/generated/Entities/ApplicationEntity/sections/details.component.js +165 -0
  577. package/dist/lib/generated/Entities/ApplicationEntity/sections/details.component.js.map +1 -0
  578. package/dist/lib/generated/Entities/ApplicationSetting/applicationsetting.form.component.d.ts.map +1 -1
  579. package/dist/lib/generated/Entities/ApplicationSetting/applicationsetting.form.component.js +3 -3
  580. package/dist/lib/generated/Entities/ApplicationSetting/applicationsetting.form.component.js.map +1 -1
  581. package/dist/lib/generated/Entities/ApplicationSetting/sections/details.component.d.ts +11 -0
  582. package/dist/lib/generated/Entities/ApplicationSetting/sections/details.component.d.ts.map +1 -0
  583. package/dist/lib/generated/Entities/ApplicationSetting/sections/details.component.js +118 -0
  584. package/dist/lib/generated/Entities/ApplicationSetting/sections/details.component.js.map +1 -0
  585. package/dist/lib/generated/Entities/Artifact/artifact.form.component.d.ts.map +1 -1
  586. package/dist/lib/generated/Entities/Artifact/artifact.form.component.js +23 -24
  587. package/dist/lib/generated/Entities/Artifact/artifact.form.component.js.map +1 -1
  588. package/dist/lib/generated/Entities/Artifact/sections/details.component.d.ts +11 -0
  589. package/dist/lib/generated/Entities/Artifact/sections/details.component.d.ts.map +1 -0
  590. package/dist/lib/generated/Entities/Artifact/sections/details.component.js +167 -0
  591. package/dist/lib/generated/Entities/Artifact/sections/details.component.js.map +1 -0
  592. package/dist/lib/generated/Entities/ArtifactPermission/artifactpermission.form.component.d.ts.map +1 -1
  593. package/dist/lib/generated/Entities/ArtifactPermission/artifactpermission.form.component.js +3 -3
  594. package/dist/lib/generated/Entities/ArtifactPermission/artifactpermission.form.component.js.map +1 -1
  595. package/dist/lib/generated/Entities/ArtifactPermission/sections/details.component.d.ts +11 -0
  596. package/dist/lib/generated/Entities/ArtifactPermission/sections/details.component.d.ts.map +1 -0
  597. package/dist/lib/generated/Entities/ArtifactPermission/sections/details.component.js +167 -0
  598. package/dist/lib/generated/Entities/ArtifactPermission/sections/details.component.js.map +1 -0
  599. package/dist/lib/generated/Entities/ArtifactType/artifacttype.form.component.d.ts.map +1 -1
  600. package/dist/lib/generated/Entities/ArtifactType/artifacttype.form.component.js +35 -36
  601. package/dist/lib/generated/Entities/ArtifactType/artifacttype.form.component.js.map +1 -1
  602. package/dist/lib/generated/Entities/ArtifactType/sections/details.component.d.ts +11 -0
  603. package/dist/lib/generated/Entities/ArtifactType/sections/details.component.d.ts.map +1 -0
  604. package/dist/lib/generated/Entities/ArtifactType/sections/details.component.js +154 -0
  605. package/dist/lib/generated/Entities/ArtifactType/sections/details.component.js.map +1 -0
  606. package/dist/lib/generated/Entities/ArtifactUse/artifactuse.form.component.d.ts.map +1 -1
  607. package/dist/lib/generated/Entities/ArtifactUse/artifactuse.form.component.js +3 -3
  608. package/dist/lib/generated/Entities/ArtifactUse/artifactuse.form.component.js.map +1 -1
  609. package/dist/lib/generated/Entities/ArtifactUse/sections/details.component.d.ts +11 -0
  610. package/dist/lib/generated/Entities/ArtifactUse/sections/details.component.d.ts.map +1 -0
  611. package/dist/lib/generated/Entities/ArtifactUse/sections/details.component.js +129 -0
  612. package/dist/lib/generated/Entities/ArtifactUse/sections/details.component.js.map +1 -0
  613. package/dist/lib/generated/Entities/ArtifactVersion/artifactversion.form.component.d.ts.map +1 -1
  614. package/dist/lib/generated/Entities/ArtifactVersion/artifactversion.form.component.js +29 -30
  615. package/dist/lib/generated/Entities/ArtifactVersion/artifactversion.form.component.js.map +1 -1
  616. package/dist/lib/generated/Entities/ArtifactVersion/sections/details.component.d.ts +11 -0
  617. package/dist/lib/generated/Entities/ArtifactVersion/sections/details.component.d.ts.map +1 -0
  618. package/dist/lib/generated/Entities/ArtifactVersion/sections/details.component.js +174 -0
  619. package/dist/lib/generated/Entities/ArtifactVersion/sections/details.component.js.map +1 -0
  620. package/dist/lib/generated/Entities/ArtifactVersionAttribute/artifactversionattribute.form.component.d.ts.map +1 -1
  621. package/dist/lib/generated/Entities/ArtifactVersionAttribute/artifactversionattribute.form.component.js +3 -3
  622. package/dist/lib/generated/Entities/ArtifactVersionAttribute/artifactversionattribute.form.component.js.map +1 -1
  623. package/dist/lib/generated/Entities/ArtifactVersionAttribute/sections/details.component.d.ts +11 -0
  624. package/dist/lib/generated/Entities/ArtifactVersionAttribute/sections/details.component.d.ts.map +1 -0
  625. package/dist/lib/generated/Entities/ArtifactVersionAttribute/sections/details.component.js +127 -0
  626. package/dist/lib/generated/Entities/ArtifactVersionAttribute/sections/details.component.js.map +1 -0
  627. package/dist/lib/generated/Entities/AuditLog/auditlog.form.component.d.ts.map +1 -1
  628. package/dist/lib/generated/Entities/AuditLog/auditlog.form.component.js +3 -3
  629. package/dist/lib/generated/Entities/AuditLog/auditlog.form.component.js.map +1 -1
  630. package/dist/lib/generated/Entities/AuditLog/sections/details.component.d.ts +11 -0
  631. package/dist/lib/generated/Entities/AuditLog/sections/details.component.d.ts.map +1 -0
  632. package/dist/lib/generated/Entities/AuditLog/sections/details.component.js +187 -0
  633. package/dist/lib/generated/Entities/AuditLog/sections/details.component.js.map +1 -0
  634. package/dist/lib/generated/Entities/AuditLogType/auditlogtype.form.component.d.ts.map +1 -1
  635. package/dist/lib/generated/Entities/AuditLogType/auditlogtype.form.component.js +17 -18
  636. package/dist/lib/generated/Entities/AuditLogType/auditlogtype.form.component.js.map +1 -1
  637. package/dist/lib/generated/Entities/AuditLogType/sections/details.component.d.ts +11 -0
  638. package/dist/lib/generated/Entities/AuditLogType/sections/details.component.d.ts.map +1 -0
  639. package/dist/lib/generated/Entities/AuditLogType/sections/details.component.js +138 -0
  640. package/dist/lib/generated/Entities/AuditLogType/sections/details.component.js.map +1 -0
  641. package/dist/lib/generated/Entities/Authorization/authorization.form.component.d.ts.map +1 -1
  642. package/dist/lib/generated/Entities/Authorization/authorization.form.component.js +35 -36
  643. package/dist/lib/generated/Entities/Authorization/authorization.form.component.js.map +1 -1
  644. package/dist/lib/generated/Entities/Authorization/sections/details.component.d.ts +11 -0
  645. package/dist/lib/generated/Entities/Authorization/sections/details.component.d.ts.map +1 -0
  646. package/dist/lib/generated/Entities/Authorization/sections/details.component.js +136 -0
  647. package/dist/lib/generated/Entities/Authorization/sections/details.component.js.map +1 -0
  648. package/dist/lib/generated/Entities/AuthorizationRole/authorizationrole.form.component.d.ts.map +1 -1
  649. package/dist/lib/generated/Entities/AuthorizationRole/authorizationrole.form.component.js +3 -3
  650. package/dist/lib/generated/Entities/AuthorizationRole/authorizationrole.form.component.js.map +1 -1
  651. package/dist/lib/generated/Entities/AuthorizationRole/sections/details.component.d.ts +11 -0
  652. package/dist/lib/generated/Entities/AuthorizationRole/sections/details.component.d.ts.map +1 -0
  653. package/dist/lib/generated/Entities/AuthorizationRole/sections/details.component.js +120 -0
  654. package/dist/lib/generated/Entities/AuthorizationRole/sections/details.component.js.map +1 -0
  655. package/dist/lib/generated/Entities/Collection/collection.form.component.d.ts.map +1 -1
  656. package/dist/lib/generated/Entities/Collection/collection.form.component.js +23 -24
  657. package/dist/lib/generated/Entities/Collection/collection.form.component.js.map +1 -1
  658. package/dist/lib/generated/Entities/Collection/sections/details.component.d.ts +11 -0
  659. package/dist/lib/generated/Entities/Collection/sections/details.component.d.ts.map +1 -0
  660. package/dist/lib/generated/Entities/Collection/sections/details.component.js +185 -0
  661. package/dist/lib/generated/Entities/Collection/sections/details.component.js.map +1 -0
  662. package/dist/lib/generated/Entities/CollectionArtifact/collectionartifact.form.component.d.ts.map +1 -1
  663. package/dist/lib/generated/Entities/CollectionArtifact/collectionartifact.form.component.js +3 -3
  664. package/dist/lib/generated/Entities/CollectionArtifact/collectionartifact.form.component.js.map +1 -1
  665. package/dist/lib/generated/Entities/CollectionArtifact/sections/details.component.d.ts +11 -0
  666. package/dist/lib/generated/Entities/CollectionArtifact/sections/details.component.d.ts.map +1 -0
  667. package/dist/lib/generated/Entities/CollectionArtifact/sections/details.component.js +120 -0
  668. package/dist/lib/generated/Entities/CollectionArtifact/sections/details.component.js.map +1 -0
  669. package/dist/lib/generated/Entities/CollectionPermission/collectionpermission.form.component.d.ts.map +1 -1
  670. package/dist/lib/generated/Entities/CollectionPermission/collectionpermission.form.component.js +3 -3
  671. package/dist/lib/generated/Entities/CollectionPermission/collectionpermission.form.component.js.map +1 -1
  672. package/dist/lib/generated/Entities/CollectionPermission/sections/details.component.d.ts +11 -0
  673. package/dist/lib/generated/Entities/CollectionPermission/sections/details.component.d.ts.map +1 -0
  674. package/dist/lib/generated/Entities/CollectionPermission/sections/details.component.js +167 -0
  675. package/dist/lib/generated/Entities/CollectionPermission/sections/details.component.js.map +1 -0
  676. package/dist/lib/generated/Entities/CommunicationBaseMessageType/communicationbasemessagetype.form.component.d.ts.map +1 -1
  677. package/dist/lib/generated/Entities/CommunicationBaseMessageType/communicationbasemessagetype.form.component.js +17 -18
  678. package/dist/lib/generated/Entities/CommunicationBaseMessageType/communicationbasemessagetype.form.component.js.map +1 -1
  679. package/dist/lib/generated/Entities/CommunicationBaseMessageType/sections/details.component.d.ts +11 -0
  680. package/dist/lib/generated/Entities/CommunicationBaseMessageType/sections/details.component.d.ts.map +1 -0
  681. package/dist/lib/generated/Entities/CommunicationBaseMessageType/sections/details.component.js +116 -0
  682. package/dist/lib/generated/Entities/CommunicationBaseMessageType/sections/details.component.js.map +1 -0
  683. package/dist/lib/generated/Entities/CommunicationLog/communicationlog.form.component.d.ts.map +1 -1
  684. package/dist/lib/generated/Entities/CommunicationLog/communicationlog.form.component.js +3 -3
  685. package/dist/lib/generated/Entities/CommunicationLog/communicationlog.form.component.js.map +1 -1
  686. package/dist/lib/generated/Entities/CommunicationLog/sections/details.component.d.ts +11 -0
  687. package/dist/lib/generated/Entities/CommunicationLog/sections/details.component.d.ts.map +1 -0
  688. package/dist/lib/generated/Entities/CommunicationLog/sections/details.component.js +167 -0
  689. package/dist/lib/generated/Entities/CommunicationLog/sections/details.component.js.map +1 -0
  690. package/dist/lib/generated/Entities/CommunicationProvider/communicationprovider.form.component.d.ts.map +1 -1
  691. package/dist/lib/generated/Entities/CommunicationProvider/communicationprovider.form.component.js +17 -18
  692. package/dist/lib/generated/Entities/CommunicationProvider/communicationprovider.form.component.js.map +1 -1
  693. package/dist/lib/generated/Entities/CommunicationProvider/sections/details.component.d.ts +11 -0
  694. package/dist/lib/generated/Entities/CommunicationProvider/sections/details.component.d.ts.map +1 -0
  695. package/dist/lib/generated/Entities/CommunicationProvider/sections/details.component.js +152 -0
  696. package/dist/lib/generated/Entities/CommunicationProvider/sections/details.component.js.map +1 -0
  697. package/dist/lib/generated/Entities/CommunicationProviderMessageType/communicationprovidermessagetype.form.component.d.ts.map +1 -1
  698. package/dist/lib/generated/Entities/CommunicationProviderMessageType/communicationprovidermessagetype.form.component.js +11 -12
  699. package/dist/lib/generated/Entities/CommunicationProviderMessageType/communicationprovidermessagetype.form.component.js.map +1 -1
  700. package/dist/lib/generated/Entities/CommunicationProviderMessageType/sections/details.component.d.ts +11 -0
  701. package/dist/lib/generated/Entities/CommunicationProviderMessageType/sections/details.component.d.ts.map +1 -0
  702. package/dist/lib/generated/Entities/CommunicationProviderMessageType/sections/details.component.js +138 -0
  703. package/dist/lib/generated/Entities/CommunicationProviderMessageType/sections/details.component.js.map +1 -0
  704. package/dist/lib/generated/Entities/CommunicationRun/communicationrun.form.component.d.ts.map +1 -1
  705. package/dist/lib/generated/Entities/CommunicationRun/communicationrun.form.component.js +11 -12
  706. package/dist/lib/generated/Entities/CommunicationRun/communicationrun.form.component.js.map +1 -1
  707. package/dist/lib/generated/Entities/CommunicationRun/sections/details.component.d.ts +11 -0
  708. package/dist/lib/generated/Entities/CommunicationRun/sections/details.component.d.ts.map +1 -0
  709. package/dist/lib/generated/Entities/CommunicationRun/sections/details.component.js +145 -0
  710. package/dist/lib/generated/Entities/CommunicationRun/sections/details.component.js.map +1 -0
  711. package/dist/lib/generated/Entities/Company/company.form.component.d.ts.map +1 -1
  712. package/dist/lib/generated/Entities/Company/company.form.component.js +49 -32
  713. package/dist/lib/generated/Entities/Company/company.form.component.js.map +1 -1
  714. package/dist/lib/generated/Entities/Company/sections/details.component.d.ts +11 -0
  715. package/dist/lib/generated/Entities/Company/sections/details.component.d.ts.map +1 -0
  716. package/dist/lib/generated/Entities/Company/sections/details.component.js +118 -0
  717. package/dist/lib/generated/Entities/Company/sections/details.component.js.map +1 -0
  718. package/dist/lib/generated/Entities/CompanyIntegration/companyintegration.form.component.d.ts.map +1 -1
  719. package/dist/lib/generated/Entities/CompanyIntegration/companyintegration.form.component.js +29 -30
  720. package/dist/lib/generated/Entities/CompanyIntegration/companyintegration.form.component.js.map +1 -1
  721. package/dist/lib/generated/Entities/CompanyIntegration/sections/details.component.d.ts +11 -0
  722. package/dist/lib/generated/Entities/CompanyIntegration/sections/details.component.d.ts.map +1 -0
  723. package/dist/lib/generated/Entities/CompanyIntegration/sections/details.component.js +255 -0
  724. package/dist/lib/generated/Entities/CompanyIntegration/sections/details.component.js.map +1 -0
  725. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/companyintegrationrecordmap.form.component.d.ts.map +1 -1
  726. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/companyintegrationrecordmap.form.component.js +3 -3
  727. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/companyintegrationrecordmap.form.component.js.map +1 -1
  728. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/sections/details.component.d.ts +11 -0
  729. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/sections/details.component.d.ts.map +1 -0
  730. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/sections/details.component.js +129 -0
  731. package/dist/lib/generated/Entities/CompanyIntegrationRecordMap/sections/details.component.js.map +1 -0
  732. package/dist/lib/generated/Entities/CompanyIntegrationRun/companyintegrationrun.form.component.d.ts.map +1 -1
  733. package/dist/lib/generated/Entities/CompanyIntegrationRun/companyintegrationrun.form.component.js +23 -24
  734. package/dist/lib/generated/Entities/CompanyIntegrationRun/companyintegrationrun.form.component.js.map +1 -1
  735. package/dist/lib/generated/Entities/CompanyIntegrationRun/sections/details.component.d.ts +11 -0
  736. package/dist/lib/generated/Entities/CompanyIntegrationRun/sections/details.component.d.ts.map +1 -0
  737. package/dist/lib/generated/Entities/CompanyIntegrationRun/sections/details.component.js +183 -0
  738. package/dist/lib/generated/Entities/CompanyIntegrationRun/sections/details.component.js.map +1 -0
  739. package/dist/lib/generated/Entities/CompanyIntegrationRunAPILog/companyintegrationrunapilog.form.component.d.ts.map +1 -1
  740. package/dist/lib/generated/Entities/CompanyIntegrationRunAPILog/companyintegrationrunapilog.form.component.js +3 -3
  741. package/dist/lib/generated/Entities/CompanyIntegrationRunAPILog/companyintegrationrunapilog.form.component.js.map +1 -1
  742. package/dist/lib/generated/Entities/CompanyIntegrationRunAPILog/sections/details.component.d.ts +11 -0
  743. package/dist/lib/generated/Entities/CompanyIntegrationRunAPILog/sections/details.component.d.ts.map +1 -0
  744. package/dist/lib/generated/Entities/CompanyIntegrationRunAPILog/sections/details.component.js +127 -0
  745. package/dist/lib/generated/Entities/CompanyIntegrationRunAPILog/sections/details.component.js.map +1 -0
  746. package/dist/lib/generated/Entities/CompanyIntegrationRunDetail/companyintegrationrundetail.form.component.d.ts.map +1 -1
  747. package/dist/lib/generated/Entities/CompanyIntegrationRunDetail/companyintegrationrundetail.form.component.js +11 -12
  748. package/dist/lib/generated/Entities/CompanyIntegrationRunDetail/companyintegrationrundetail.form.component.js.map +1 -1
  749. package/dist/lib/generated/Entities/CompanyIntegrationRunDetail/sections/details.component.d.ts +11 -0
  750. package/dist/lib/generated/Entities/CompanyIntegrationRunDetail/sections/details.component.d.ts.map +1 -0
  751. package/dist/lib/generated/Entities/CompanyIntegrationRunDetail/sections/details.component.js +156 -0
  752. package/dist/lib/generated/Entities/CompanyIntegrationRunDetail/sections/details.component.js.map +1 -0
  753. package/dist/lib/generated/Entities/Component/component.form.component.d.ts.map +1 -1
  754. package/dist/lib/generated/Entities/Component/component.form.component.js +22 -23
  755. package/dist/lib/generated/Entities/Component/component.form.component.js.map +1 -1
  756. package/dist/lib/generated/Entities/Component/sections/details.component.d.ts +11 -0
  757. package/dist/lib/generated/Entities/Component/sections/details.component.d.ts.map +1 -0
  758. package/dist/lib/generated/Entities/Component/sections/details.component.js +316 -0
  759. package/dist/lib/generated/Entities/Component/sections/details.component.js.map +1 -0
  760. package/dist/lib/generated/Entities/ComponentDependency/componentdependency.form.component.d.ts.map +1 -1
  761. package/dist/lib/generated/Entities/ComponentDependency/componentdependency.form.component.js +3 -3
  762. package/dist/lib/generated/Entities/ComponentDependency/componentdependency.form.component.js.map +1 -1
  763. package/dist/lib/generated/Entities/ComponentDependency/sections/details.component.d.ts +11 -0
  764. package/dist/lib/generated/Entities/ComponentDependency/sections/details.component.d.ts.map +1 -0
  765. package/dist/lib/generated/Entities/ComponentDependency/sections/details.component.js +111 -0
  766. package/dist/lib/generated/Entities/ComponentDependency/sections/details.component.js.map +1 -0
  767. package/dist/lib/generated/Entities/ComponentLibrary/componentlibrary.form.component.d.ts.map +1 -1
  768. package/dist/lib/generated/Entities/ComponentLibrary/componentlibrary.form.component.js +11 -12
  769. package/dist/lib/generated/Entities/ComponentLibrary/componentlibrary.form.component.js.map +1 -1
  770. package/dist/lib/generated/Entities/ComponentLibrary/sections/details.component.d.ts +11 -0
  771. package/dist/lib/generated/Entities/ComponentLibrary/sections/details.component.d.ts.map +1 -0
  772. package/dist/lib/generated/Entities/ComponentLibrary/sections/details.component.js +179 -0
  773. package/dist/lib/generated/Entities/ComponentLibrary/sections/details.component.js.map +1 -0
  774. package/dist/lib/generated/Entities/ComponentLibraryLink/componentlibrarylink.form.component.d.ts.map +1 -1
  775. package/dist/lib/generated/Entities/ComponentLibraryLink/componentlibrarylink.form.component.js +3 -3
  776. package/dist/lib/generated/Entities/ComponentLibraryLink/componentlibrarylink.form.component.js.map +1 -1
  777. package/dist/lib/generated/Entities/ComponentLibraryLink/sections/details.component.d.ts +11 -0
  778. package/dist/lib/generated/Entities/ComponentLibraryLink/sections/details.component.d.ts.map +1 -0
  779. package/dist/lib/generated/Entities/ComponentLibraryLink/sections/details.component.js +120 -0
  780. package/dist/lib/generated/Entities/ComponentLibraryLink/sections/details.component.js.map +1 -0
  781. package/dist/lib/generated/Entities/ComponentRegistry/componentregistry.form.component.d.ts.map +1 -1
  782. package/dist/lib/generated/Entities/ComponentRegistry/componentregistry.form.component.js +11 -12
  783. package/dist/lib/generated/Entities/ComponentRegistry/componentregistry.form.component.js.map +1 -1
  784. package/dist/lib/generated/Entities/ComponentRegistry/sections/details.component.d.ts +11 -0
  785. package/dist/lib/generated/Entities/ComponentRegistry/sections/details.component.d.ts.map +1 -0
  786. package/dist/lib/generated/Entities/ComponentRegistry/sections/details.component.js +125 -0
  787. package/dist/lib/generated/Entities/ComponentRegistry/sections/details.component.js.map +1 -0
  788. package/dist/lib/generated/Entities/ContentFileType/contentfiletype.form.component.d.ts.map +1 -1
  789. package/dist/lib/generated/Entities/ContentFileType/contentfiletype.form.component.js +17 -18
  790. package/dist/lib/generated/Entities/ContentFileType/contentfiletype.form.component.js.map +1 -1
  791. package/dist/lib/generated/Entities/ContentFileType/sections/details.component.d.ts +11 -0
  792. package/dist/lib/generated/Entities/ContentFileType/sections/details.component.d.ts.map +1 -0
  793. package/dist/lib/generated/Entities/ContentFileType/sections/details.component.js +89 -0
  794. package/dist/lib/generated/Entities/ContentFileType/sections/details.component.js.map +1 -0
  795. package/dist/lib/generated/Entities/ContentItem/contentitem.form.component.d.ts.map +1 -1
  796. package/dist/lib/generated/Entities/ContentItem/contentitem.form.component.js +17 -18
  797. package/dist/lib/generated/Entities/ContentItem/contentitem.form.component.js.map +1 -1
  798. package/dist/lib/generated/Entities/ContentItem/sections/details.component.d.ts +11 -0
  799. package/dist/lib/generated/Entities/ContentItem/sections/details.component.d.ts.map +1 -0
  800. package/dist/lib/generated/Entities/ContentItem/sections/details.component.js +196 -0
  801. package/dist/lib/generated/Entities/ContentItem/sections/details.component.js.map +1 -0
  802. package/dist/lib/generated/Entities/ContentItemAttribute/contentitemattribute.form.component.d.ts.map +1 -1
  803. package/dist/lib/generated/Entities/ContentItemAttribute/contentitemattribute.form.component.js +3 -3
  804. package/dist/lib/generated/Entities/ContentItemAttribute/contentitemattribute.form.component.js.map +1 -1
  805. package/dist/lib/generated/Entities/ContentItemAttribute/sections/details.component.d.ts +11 -0
  806. package/dist/lib/generated/Entities/ContentItemAttribute/sections/details.component.d.ts.map +1 -0
  807. package/dist/lib/generated/Entities/ContentItemAttribute/sections/details.component.js +109 -0
  808. package/dist/lib/generated/Entities/ContentItemAttribute/sections/details.component.js.map +1 -0
  809. package/dist/lib/generated/Entities/ContentItemTag/contentitemtag.form.component.d.ts.map +1 -1
  810. package/dist/lib/generated/Entities/ContentItemTag/contentitemtag.form.component.js +3 -3
  811. package/dist/lib/generated/Entities/ContentItemTag/contentitemtag.form.component.js.map +1 -1
  812. package/dist/lib/generated/Entities/ContentItemTag/sections/details.component.d.ts +11 -0
  813. package/dist/lib/generated/Entities/ContentItemTag/sections/details.component.d.ts.map +1 -0
  814. package/dist/lib/generated/Entities/ContentItemTag/sections/details.component.js +100 -0
  815. package/dist/lib/generated/Entities/ContentItemTag/sections/details.component.js.map +1 -0
  816. package/dist/lib/generated/Entities/ContentProcessRun/contentprocessrun.form.component.d.ts.map +1 -1
  817. package/dist/lib/generated/Entities/ContentProcessRun/contentprocessrun.form.component.js +3 -3
  818. package/dist/lib/generated/Entities/ContentProcessRun/contentprocessrun.form.component.js.map +1 -1
  819. package/dist/lib/generated/Entities/ContentProcessRun/sections/details.component.d.ts +11 -0
  820. package/dist/lib/generated/Entities/ContentProcessRun/sections/details.component.d.ts.map +1 -0
  821. package/dist/lib/generated/Entities/ContentProcessRun/sections/details.component.js +127 -0
  822. package/dist/lib/generated/Entities/ContentProcessRun/sections/details.component.js.map +1 -0
  823. package/dist/lib/generated/Entities/ContentSource/contentsource.form.component.d.ts.map +1 -1
  824. package/dist/lib/generated/Entities/ContentSource/contentsource.form.component.js +23 -24
  825. package/dist/lib/generated/Entities/ContentSource/contentsource.form.component.js.map +1 -1
  826. package/dist/lib/generated/Entities/ContentSource/sections/details.component.d.ts +11 -0
  827. package/dist/lib/generated/Entities/ContentSource/sections/details.component.d.ts.map +1 -0
  828. package/dist/lib/generated/Entities/ContentSource/sections/details.component.js +149 -0
  829. package/dist/lib/generated/Entities/ContentSource/sections/details.component.js.map +1 -0
  830. package/dist/lib/generated/Entities/ContentSourceParam/contentsourceparam.form.component.d.ts.map +1 -1
  831. package/dist/lib/generated/Entities/ContentSourceParam/contentsourceparam.form.component.js +3 -3
  832. package/dist/lib/generated/Entities/ContentSourceParam/contentsourceparam.form.component.js.map +1 -1
  833. package/dist/lib/generated/Entities/ContentSourceParam/sections/details.component.d.ts +11 -0
  834. package/dist/lib/generated/Entities/ContentSourceParam/sections/details.component.d.ts.map +1 -0
  835. package/dist/lib/generated/Entities/ContentSourceParam/sections/details.component.js +109 -0
  836. package/dist/lib/generated/Entities/ContentSourceParam/sections/details.component.js.map +1 -0
  837. package/dist/lib/generated/Entities/ContentSourceType/contentsourcetype.form.component.d.ts.map +1 -1
  838. package/dist/lib/generated/Entities/ContentSourceType/contentsourcetype.form.component.js +17 -18
  839. package/dist/lib/generated/Entities/ContentSourceType/contentsourcetype.form.component.js.map +1 -1
  840. package/dist/lib/generated/Entities/ContentSourceType/sections/details.component.d.ts +11 -0
  841. package/dist/lib/generated/Entities/ContentSourceType/sections/details.component.d.ts.map +1 -0
  842. package/dist/lib/generated/Entities/ContentSourceType/sections/details.component.js +89 -0
  843. package/dist/lib/generated/Entities/ContentSourceType/sections/details.component.js.map +1 -0
  844. package/dist/lib/generated/Entities/ContentSourceTypeParam/contentsourcetypeparam.form.component.d.ts.map +1 -1
  845. package/dist/lib/generated/Entities/ContentSourceTypeParam/contentsourcetypeparam.form.component.js +3 -3
  846. package/dist/lib/generated/Entities/ContentSourceTypeParam/contentsourcetypeparam.form.component.js.map +1 -1
  847. package/dist/lib/generated/Entities/ContentSourceTypeParam/sections/details.component.d.ts +11 -0
  848. package/dist/lib/generated/Entities/ContentSourceTypeParam/sections/details.component.d.ts.map +1 -0
  849. package/dist/lib/generated/Entities/ContentSourceTypeParam/sections/details.component.js +116 -0
  850. package/dist/lib/generated/Entities/ContentSourceTypeParam/sections/details.component.js.map +1 -0
  851. package/dist/lib/generated/Entities/ContentType/contenttype.form.component.d.ts.map +1 -1
  852. package/dist/lib/generated/Entities/ContentType/contenttype.form.component.js +17 -18
  853. package/dist/lib/generated/Entities/ContentType/contenttype.form.component.js.map +1 -1
  854. package/dist/lib/generated/Entities/ContentType/sections/details.component.d.ts +11 -0
  855. package/dist/lib/generated/Entities/ContentType/sections/details.component.d.ts.map +1 -0
  856. package/dist/lib/generated/Entities/ContentType/sections/details.component.js +127 -0
  857. package/dist/lib/generated/Entities/ContentType/sections/details.component.js.map +1 -0
  858. package/dist/lib/generated/Entities/ContentTypeAttribute/contenttypeattribute.form.component.d.ts.map +1 -1
  859. package/dist/lib/generated/Entities/ContentTypeAttribute/contenttypeattribute.form.component.js +3 -3
  860. package/dist/lib/generated/Entities/ContentTypeAttribute/contenttypeattribute.form.component.js.map +1 -1
  861. package/dist/lib/generated/Entities/ContentTypeAttribute/sections/details.component.d.ts +11 -0
  862. package/dist/lib/generated/Entities/ContentTypeAttribute/sections/details.component.d.ts.map +1 -0
  863. package/dist/lib/generated/Entities/ContentTypeAttribute/sections/details.component.js +107 -0
  864. package/dist/lib/generated/Entities/ContentTypeAttribute/sections/details.component.js.map +1 -0
  865. package/dist/lib/generated/Entities/Conversation/conversation.form.component.d.ts.map +1 -1
  866. package/dist/lib/generated/Entities/Conversation/conversation.form.component.js +42 -43
  867. package/dist/lib/generated/Entities/Conversation/conversation.form.component.js.map +1 -1
  868. package/dist/lib/generated/Entities/Conversation/sections/details.component.d.ts +11 -0
  869. package/dist/lib/generated/Entities/Conversation/sections/details.component.d.ts.map +1 -0
  870. package/dist/lib/generated/Entities/Conversation/sections/details.component.js +243 -0
  871. package/dist/lib/generated/Entities/Conversation/sections/details.component.js.map +1 -0
  872. package/dist/lib/generated/Entities/ConversationArtifact/conversationartifact.form.component.d.ts.map +1 -1
  873. package/dist/lib/generated/Entities/ConversationArtifact/conversationartifact.form.component.js +23 -24
  874. package/dist/lib/generated/Entities/ConversationArtifact/conversationartifact.form.component.js.map +1 -1
  875. package/dist/lib/generated/Entities/ConversationArtifact/sections/details.component.d.ts +11 -0
  876. package/dist/lib/generated/Entities/ConversationArtifact/sections/details.component.d.ts.map +1 -0
  877. package/dist/lib/generated/Entities/ConversationArtifact/sections/details.component.js +147 -0
  878. package/dist/lib/generated/Entities/ConversationArtifact/sections/details.component.js.map +1 -0
  879. package/dist/lib/generated/Entities/ConversationArtifactPermission/conversationartifactpermission.form.component.d.ts.map +1 -1
  880. package/dist/lib/generated/Entities/ConversationArtifactPermission/conversationartifactpermission.form.component.js +3 -3
  881. package/dist/lib/generated/Entities/ConversationArtifactPermission/conversationartifactpermission.form.component.js.map +1 -1
  882. package/dist/lib/generated/Entities/ConversationArtifactPermission/sections/details.component.d.ts +11 -0
  883. package/dist/lib/generated/Entities/ConversationArtifactPermission/sections/details.component.d.ts.map +1 -0
  884. package/dist/lib/generated/Entities/ConversationArtifactPermission/sections/details.component.js +109 -0
  885. package/dist/lib/generated/Entities/ConversationArtifactPermission/sections/details.component.js.map +1 -0
  886. package/dist/lib/generated/Entities/ConversationArtifactVersion/conversationartifactversion.form.component.d.ts.map +1 -1
  887. package/dist/lib/generated/Entities/ConversationArtifactVersion/conversationartifactversion.form.component.js +11 -12
  888. package/dist/lib/generated/Entities/ConversationArtifactVersion/conversationartifactversion.form.component.js.map +1 -1
  889. package/dist/lib/generated/Entities/ConversationArtifactVersion/sections/details.component.d.ts +11 -0
  890. package/dist/lib/generated/Entities/ConversationArtifactVersion/sections/details.component.d.ts.map +1 -0
  891. package/dist/lib/generated/Entities/ConversationArtifactVersion/sections/details.component.js +127 -0
  892. package/dist/lib/generated/Entities/ConversationArtifactVersion/sections/details.component.js.map +1 -0
  893. package/dist/lib/generated/Entities/ConversationDetail/conversationdetail.form.component.d.ts.map +1 -1
  894. package/dist/lib/generated/Entities/ConversationDetail/conversationdetail.form.component.js +59 -60
  895. package/dist/lib/generated/Entities/ConversationDetail/conversationdetail.form.component.js.map +1 -1
  896. package/dist/lib/generated/Entities/ConversationDetail/sections/details.component.d.ts +11 -0
  897. package/dist/lib/generated/Entities/ConversationDetail/sections/details.component.d.ts.map +1 -0
  898. package/dist/lib/generated/Entities/ConversationDetail/sections/details.component.js +299 -0
  899. package/dist/lib/generated/Entities/ConversationDetail/sections/details.component.js.map +1 -0
  900. package/dist/lib/generated/Entities/ConversationDetailArtifact/conversationdetailartifact.form.component.d.ts.map +1 -1
  901. package/dist/lib/generated/Entities/ConversationDetailArtifact/conversationdetailartifact.form.component.js +4 -4
  902. package/dist/lib/generated/Entities/ConversationDetailArtifact/conversationdetailartifact.form.component.js.map +1 -1
  903. package/dist/lib/generated/Entities/ConversationDetailArtifact/sections/details.component.d.ts +11 -0
  904. package/dist/lib/generated/Entities/ConversationDetailArtifact/sections/details.component.d.ts.map +1 -0
  905. package/dist/lib/generated/Entities/ConversationDetailArtifact/sections/details.component.js +111 -0
  906. package/dist/lib/generated/Entities/ConversationDetailArtifact/sections/details.component.js.map +1 -0
  907. package/dist/lib/generated/Entities/ConversationDetailAttachment/conversationdetailattachment.form.component.d.ts.map +1 -1
  908. package/dist/lib/generated/Entities/ConversationDetailAttachment/conversationdetailattachment.form.component.js +3 -3
  909. package/dist/lib/generated/Entities/ConversationDetailAttachment/conversationdetailattachment.form.component.js.map +1 -1
  910. package/dist/lib/generated/Entities/ConversationDetailRating/conversationdetailrating.form.component.d.ts.map +1 -1
  911. package/dist/lib/generated/Entities/ConversationDetailRating/conversationdetailrating.form.component.js +7 -13
  912. package/dist/lib/generated/Entities/ConversationDetailRating/conversationdetailrating.form.component.js.map +1 -1
  913. package/dist/lib/generated/Entities/ConversationDetailRating/sections/details.component.d.ts +11 -0
  914. package/dist/lib/generated/Entities/ConversationDetailRating/sections/details.component.d.ts.map +1 -0
  915. package/dist/lib/generated/Entities/ConversationDetailRating/sections/details.component.js +120 -0
  916. package/dist/lib/generated/Entities/ConversationDetailRating/sections/details.component.js.map +1 -0
  917. package/dist/lib/generated/Entities/Credential/credential.form.component.d.ts.map +1 -1
  918. package/dist/lib/generated/Entities/Credential/credential.form.component.js +54 -19
  919. package/dist/lib/generated/Entities/Credential/credential.form.component.js.map +1 -1
  920. package/dist/lib/generated/Entities/CredentialCategory/credentialcategory.form.component.d.ts.map +1 -1
  921. package/dist/lib/generated/Entities/CredentialCategory/credentialcategory.form.component.js +17 -18
  922. package/dist/lib/generated/Entities/CredentialCategory/credentialcategory.form.component.js.map +1 -1
  923. package/dist/lib/generated/Entities/CredentialType/credentialtype.form.component.d.ts.map +1 -1
  924. package/dist/lib/generated/Entities/CredentialType/credentialtype.form.component.js +33 -16
  925. package/dist/lib/generated/Entities/CredentialType/credentialtype.form.component.js.map +1 -1
  926. package/dist/lib/generated/Entities/Dashboard/dashboard.form.component.d.ts.map +1 -1
  927. package/dist/lib/generated/Entities/Dashboard/dashboard.form.component.js +29 -30
  928. package/dist/lib/generated/Entities/Dashboard/dashboard.form.component.js.map +1 -1
  929. package/dist/lib/generated/Entities/Dashboard/sections/details.component.d.ts +11 -0
  930. package/dist/lib/generated/Entities/Dashboard/sections/details.component.d.ts.map +1 -0
  931. package/dist/lib/generated/Entities/Dashboard/sections/details.component.js +223 -0
  932. package/dist/lib/generated/Entities/Dashboard/sections/details.component.js.map +1 -0
  933. package/dist/lib/generated/Entities/DashboardCategory/dashboardcategory.form.component.d.ts.map +1 -1
  934. package/dist/lib/generated/Entities/DashboardCategory/dashboardcategory.form.component.js +29 -30
  935. package/dist/lib/generated/Entities/DashboardCategory/dashboardcategory.form.component.js.map +1 -1
  936. package/dist/lib/generated/Entities/DashboardCategory/sections/details.component.d.ts +11 -0
  937. package/dist/lib/generated/Entities/DashboardCategory/sections/details.component.d.ts.map +1 -0
  938. package/dist/lib/generated/Entities/DashboardCategory/sections/details.component.js +138 -0
  939. package/dist/lib/generated/Entities/DashboardCategory/sections/details.component.js.map +1 -0
  940. package/dist/lib/generated/Entities/DashboardCategoryLink/dashboardcategorylink.form.component.d.ts.map +1 -1
  941. package/dist/lib/generated/Entities/DashboardCategoryLink/dashboardcategorylink.form.component.js +3 -3
  942. package/dist/lib/generated/Entities/DashboardCategoryLink/dashboardcategorylink.form.component.js.map +1 -1
  943. package/dist/lib/generated/Entities/DashboardCategoryPermission/dashboardcategorypermission.form.component.d.ts.map +1 -1
  944. package/dist/lib/generated/Entities/DashboardCategoryPermission/dashboardcategorypermission.form.component.js +3 -3
  945. package/dist/lib/generated/Entities/DashboardCategoryPermission/dashboardcategorypermission.form.component.js.map +1 -1
  946. package/dist/lib/generated/Entities/DashboardPartType/dashboardparttype.form.component.d.ts.map +1 -1
  947. package/dist/lib/generated/Entities/DashboardPartType/dashboardparttype.form.component.js +3 -3
  948. package/dist/lib/generated/Entities/DashboardPartType/dashboardparttype.form.component.js.map +1 -1
  949. package/dist/lib/generated/Entities/DashboardPermission/dashboardpermission.form.component.d.ts.map +1 -1
  950. package/dist/lib/generated/Entities/DashboardPermission/dashboardpermission.form.component.js +3 -3
  951. package/dist/lib/generated/Entities/DashboardPermission/dashboardpermission.form.component.js.map +1 -1
  952. package/dist/lib/generated/Entities/DashboardUserPreference/dashboarduserpreference.form.component.d.ts.map +1 -1
  953. package/dist/lib/generated/Entities/DashboardUserPreference/dashboarduserpreference.form.component.js +3 -3
  954. package/dist/lib/generated/Entities/DashboardUserPreference/dashboarduserpreference.form.component.js.map +1 -1
  955. package/dist/lib/generated/Entities/DashboardUserPreference/sections/details.component.d.ts +11 -0
  956. package/dist/lib/generated/Entities/DashboardUserPreference/sections/details.component.d.ts.map +1 -0
  957. package/dist/lib/generated/Entities/DashboardUserPreference/sections/details.component.js +149 -0
  958. package/dist/lib/generated/Entities/DashboardUserPreference/sections/details.component.js.map +1 -0
  959. package/dist/lib/generated/Entities/DashboardUserState/dashboarduserstate.form.component.d.ts.map +1 -1
  960. package/dist/lib/generated/Entities/DashboardUserState/dashboarduserstate.form.component.js +3 -3
  961. package/dist/lib/generated/Entities/DashboardUserState/dashboarduserstate.form.component.js.map +1 -1
  962. package/dist/lib/generated/Entities/DashboardUserState/sections/details.component.d.ts +11 -0
  963. package/dist/lib/generated/Entities/DashboardUserState/sections/details.component.d.ts.map +1 -0
  964. package/dist/lib/generated/Entities/DashboardUserState/sections/details.component.js +120 -0
  965. package/dist/lib/generated/Entities/DashboardUserState/sections/details.component.js.map +1 -0
  966. package/dist/lib/generated/Entities/DataContext/datacontext.form.component.d.ts.map +1 -1
  967. package/dist/lib/generated/Entities/DataContext/datacontext.form.component.js +23 -24
  968. package/dist/lib/generated/Entities/DataContext/datacontext.form.component.js.map +1 -1
  969. package/dist/lib/generated/Entities/DataContext/sections/details.component.d.ts +11 -0
  970. package/dist/lib/generated/Entities/DataContext/sections/details.component.d.ts.map +1 -0
  971. package/dist/lib/generated/Entities/DataContext/sections/details.component.js +118 -0
  972. package/dist/lib/generated/Entities/DataContext/sections/details.component.js.map +1 -0
  973. package/dist/lib/generated/Entities/DataContextItem/datacontextitem.form.component.d.ts.map +1 -1
  974. package/dist/lib/generated/Entities/DataContextItem/datacontextitem.form.component.js +3 -3
  975. package/dist/lib/generated/Entities/DataContextItem/datacontextitem.form.component.js.map +1 -1
  976. package/dist/lib/generated/Entities/DataContextItem/sections/details.component.d.ts +11 -0
  977. package/dist/lib/generated/Entities/DataContextItem/sections/details.component.d.ts.map +1 -0
  978. package/dist/lib/generated/Entities/DataContextItem/sections/details.component.js +214 -0
  979. package/dist/lib/generated/Entities/DataContextItem/sections/details.component.js.map +1 -0
  980. package/dist/lib/generated/Entities/Dataset/dataset.form.component.d.ts.map +1 -1
  981. package/dist/lib/generated/Entities/Dataset/dataset.form.component.js +11 -12
  982. package/dist/lib/generated/Entities/Dataset/dataset.form.component.js.map +1 -1
  983. package/dist/lib/generated/Entities/Dataset/sections/details.component.d.ts +11 -0
  984. package/dist/lib/generated/Entities/Dataset/sections/details.component.d.ts.map +1 -0
  985. package/dist/lib/generated/Entities/Dataset/sections/details.component.js +89 -0
  986. package/dist/lib/generated/Entities/Dataset/sections/details.component.js.map +1 -0
  987. package/dist/lib/generated/Entities/DatasetItem/datasetitem.form.component.d.ts.map +1 -1
  988. package/dist/lib/generated/Entities/DatasetItem/datasetitem.form.component.js +3 -3
  989. package/dist/lib/generated/Entities/DatasetItem/datasetitem.form.component.js.map +1 -1
  990. package/dist/lib/generated/Entities/DatasetItem/sections/details.component.d.ts +11 -0
  991. package/dist/lib/generated/Entities/DatasetItem/sections/details.component.d.ts.map +1 -0
  992. package/dist/lib/generated/Entities/DatasetItem/sections/details.component.js +165 -0
  993. package/dist/lib/generated/Entities/DatasetItem/sections/details.component.js.map +1 -0
  994. package/dist/lib/generated/Entities/DuplicateRun/duplicaterun.form.component.d.ts.map +1 -1
  995. package/dist/lib/generated/Entities/DuplicateRun/duplicaterun.form.component.js +11 -12
  996. package/dist/lib/generated/Entities/DuplicateRun/duplicaterun.form.component.js.map +1 -1
  997. package/dist/lib/generated/Entities/DuplicateRun/sections/details.component.d.ts +11 -0
  998. package/dist/lib/generated/Entities/DuplicateRun/sections/details.component.d.ts.map +1 -0
  999. package/dist/lib/generated/Entities/DuplicateRun/sections/details.component.js +205 -0
  1000. package/dist/lib/generated/Entities/DuplicateRun/sections/details.component.js.map +1 -0
  1001. package/dist/lib/generated/Entities/DuplicateRunDetail/duplicaterundetail.form.component.d.ts.map +1 -1
  1002. package/dist/lib/generated/Entities/DuplicateRunDetail/duplicaterundetail.form.component.js +19 -26
  1003. package/dist/lib/generated/Entities/DuplicateRunDetail/duplicaterundetail.form.component.js.map +1 -1
  1004. package/dist/lib/generated/Entities/DuplicateRunDetail/sections/details.component.d.ts +11 -0
  1005. package/dist/lib/generated/Entities/DuplicateRunDetail/sections/details.component.d.ts.map +1 -0
  1006. package/dist/lib/generated/Entities/DuplicateRunDetail/sections/details.component.js +136 -0
  1007. package/dist/lib/generated/Entities/DuplicateRunDetail/sections/details.component.js.map +1 -0
  1008. package/dist/lib/generated/Entities/DuplicateRunDetailMatch/duplicaterundetailmatch.form.component.d.ts.map +1 -1
  1009. package/dist/lib/generated/Entities/DuplicateRunDetailMatch/duplicaterundetailmatch.form.component.js +3 -3
  1010. package/dist/lib/generated/Entities/DuplicateRunDetailMatch/duplicaterundetailmatch.form.component.js.map +1 -1
  1011. package/dist/lib/generated/Entities/DuplicateRunDetailMatch/sections/details.component.d.ts +11 -0
  1012. package/dist/lib/generated/Entities/DuplicateRunDetailMatch/sections/details.component.d.ts.map +1 -0
  1013. package/dist/lib/generated/Entities/DuplicateRunDetailMatch/sections/details.component.js +165 -0
  1014. package/dist/lib/generated/Entities/DuplicateRunDetailMatch/sections/details.component.js.map +1 -0
  1015. package/dist/lib/generated/Entities/Employee/employee.form.component.d.ts.map +1 -1
  1016. package/dist/lib/generated/Entities/Employee/employee.form.component.js +35 -36
  1017. package/dist/lib/generated/Entities/Employee/employee.form.component.js.map +1 -1
  1018. package/dist/lib/generated/Entities/Employee/sections/details.component.d.ts +11 -0
  1019. package/dist/lib/generated/Entities/Employee/sections/details.component.d.ts.map +1 -0
  1020. package/dist/lib/generated/Entities/Employee/sections/details.component.js +202 -0
  1021. package/dist/lib/generated/Entities/Employee/sections/details.component.js.map +1 -0
  1022. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/employeecompanyintegration.form.component.d.ts.map +1 -1
  1023. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/employeecompanyintegration.form.component.js +10 -16
  1024. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/employeecompanyintegration.form.component.js.map +1 -1
  1025. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/sections/details.component.d.ts +11 -0
  1026. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/sections/details.component.d.ts.map +1 -0
  1027. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/sections/details.component.js +120 -0
  1028. package/dist/lib/generated/Entities/EmployeeCompanyIntegration/sections/details.component.js.map +1 -0
  1029. package/dist/lib/generated/Entities/EmployeeRole/employeerole.form.component.d.ts.map +1 -1
  1030. package/dist/lib/generated/Entities/EmployeeRole/employeerole.form.component.js +4 -4
  1031. package/dist/lib/generated/Entities/EmployeeRole/employeerole.form.component.js.map +1 -1
  1032. package/dist/lib/generated/Entities/EmployeeRole/sections/details.component.d.ts +11 -0
  1033. package/dist/lib/generated/Entities/EmployeeRole/sections/details.component.d.ts.map +1 -0
  1034. package/dist/lib/generated/Entities/EmployeeRole/sections/details.component.js +102 -0
  1035. package/dist/lib/generated/Entities/EmployeeRole/sections/details.component.js.map +1 -0
  1036. package/dist/lib/generated/Entities/EmployeeSkill/employeeskill.form.component.d.ts.map +1 -1
  1037. package/dist/lib/generated/Entities/EmployeeSkill/employeeskill.form.component.js +7 -13
  1038. package/dist/lib/generated/Entities/EmployeeSkill/employeeskill.form.component.js.map +1 -1
  1039. package/dist/lib/generated/Entities/EmployeeSkill/sections/details.component.d.ts +11 -0
  1040. package/dist/lib/generated/Entities/EmployeeSkill/sections/details.component.d.ts.map +1 -0
  1041. package/dist/lib/generated/Entities/EmployeeSkill/sections/details.component.js +102 -0
  1042. package/dist/lib/generated/Entities/EmployeeSkill/sections/details.component.js.map +1 -0
  1043. package/dist/lib/generated/Entities/EncryptionAlgorithm/encryptionalgorithm.form.component.d.ts.map +1 -1
  1044. package/dist/lib/generated/Entities/EncryptionAlgorithm/encryptionalgorithm.form.component.js +11 -12
  1045. package/dist/lib/generated/Entities/EncryptionAlgorithm/encryptionalgorithm.form.component.js.map +1 -1
  1046. package/dist/lib/generated/Entities/EncryptionKey/encryptionkey.form.component.d.ts.map +1 -1
  1047. package/dist/lib/generated/Entities/EncryptionKey/encryptionkey.form.component.js +11 -12
  1048. package/dist/lib/generated/Entities/EncryptionKey/encryptionkey.form.component.js.map +1 -1
  1049. package/dist/lib/generated/Entities/EncryptionKeySource/encryptionkeysource.form.component.d.ts.map +1 -1
  1050. package/dist/lib/generated/Entities/EncryptionKeySource/encryptionkeysource.form.component.js +11 -12
  1051. package/dist/lib/generated/Entities/EncryptionKeySource/encryptionkeysource.form.component.js.map +1 -1
  1052. package/dist/lib/generated/Entities/Entity/entity.form.component.d.ts.map +1 -1
  1053. package/dist/lib/generated/Entities/Entity/entity.form.component.js +308 -273
  1054. package/dist/lib/generated/Entities/Entity/entity.form.component.js.map +1 -1
  1055. package/dist/lib/generated/Entities/Entity/sections/api.component.d.ts +11 -0
  1056. package/dist/lib/generated/Entities/Entity/sections/api.component.d.ts.map +1 -0
  1057. package/dist/lib/generated/Entities/Entity/sections/api.component.js +116 -0
  1058. package/dist/lib/generated/Entities/Entity/sections/api.component.js.map +1 -0
  1059. package/dist/lib/generated/Entities/Entity/sections/audit.component.d.ts +11 -0
  1060. package/dist/lib/generated/Entities/Entity/sections/audit.component.d.ts.map +1 -0
  1061. package/dist/lib/generated/Entities/Entity/sections/audit.component.js +71 -0
  1062. package/dist/lib/generated/Entities/Entity/sections/audit.component.js.map +1 -0
  1063. package/dist/lib/generated/Entities/Entity/sections/db.component.d.ts +11 -0
  1064. package/dist/lib/generated/Entities/Entity/sections/db.component.d.ts.map +1 -0
  1065. package/dist/lib/generated/Entities/Entity/sections/db.component.js +107 -0
  1066. package/dist/lib/generated/Entities/Entity/sections/db.component.js.map +1 -0
  1067. package/dist/lib/generated/Entities/Entity/sections/details.component.d.ts +11 -0
  1068. package/dist/lib/generated/Entities/Entity/sections/details.component.d.ts.map +1 -0
  1069. package/dist/lib/generated/Entities/Entity/sections/details.component.js +415 -0
  1070. package/dist/lib/generated/Entities/Entity/sections/details.component.js.map +1 -0
  1071. package/dist/lib/generated/Entities/Entity/sections/top.component.d.ts +11 -0
  1072. package/dist/lib/generated/Entities/Entity/sections/top.component.d.ts.map +1 -0
  1073. package/dist/lib/generated/Entities/Entity/sections/top.component.js +107 -0
  1074. package/dist/lib/generated/Entities/Entity/sections/top.component.js.map +1 -0
  1075. package/dist/lib/generated/Entities/Entity/sections/ui.component.d.ts +11 -0
  1076. package/dist/lib/generated/Entities/Entity/sections/ui.component.d.ts.map +1 -0
  1077. package/dist/lib/generated/Entities/Entity/sections/ui.component.js +62 -0
  1078. package/dist/lib/generated/Entities/Entity/sections/ui.component.js.map +1 -0
  1079. package/dist/lib/generated/Entities/EntityAIAction/entityaiaction.form.component.d.ts.map +1 -1
  1080. package/dist/lib/generated/Entities/EntityAIAction/entityaiaction.form.component.js +3 -3
  1081. package/dist/lib/generated/Entities/EntityAIAction/entityaiaction.form.component.js.map +1 -1
  1082. package/dist/lib/generated/Entities/EntityAIAction/sections/details.component.d.ts +11 -0
  1083. package/dist/lib/generated/Entities/EntityAIAction/sections/details.component.d.ts.map +1 -0
  1084. package/dist/lib/generated/Entities/EntityAIAction/sections/details.component.js +223 -0
  1085. package/dist/lib/generated/Entities/EntityAIAction/sections/details.component.js.map +1 -0
  1086. package/dist/lib/generated/Entities/EntityAction/entityaction.form.component.d.ts.map +1 -1
  1087. package/dist/lib/generated/Entities/EntityAction/entityaction.form.component.js +23 -24
  1088. package/dist/lib/generated/Entities/EntityAction/entityaction.form.component.js.map +1 -1
  1089. package/dist/lib/generated/Entities/EntityAction/sections/details.component.d.ts +11 -0
  1090. package/dist/lib/generated/Entities/EntityAction/sections/details.component.d.ts.map +1 -0
  1091. package/dist/lib/generated/Entities/EntityAction/sections/details.component.js +120 -0
  1092. package/dist/lib/generated/Entities/EntityAction/sections/details.component.js.map +1 -0
  1093. package/dist/lib/generated/Entities/EntityActionFilter/entityactionfilter.form.component.d.ts.map +1 -1
  1094. package/dist/lib/generated/Entities/EntityActionFilter/entityactionfilter.form.component.js +4 -4
  1095. package/dist/lib/generated/Entities/EntityActionFilter/entityactionfilter.form.component.js.map +1 -1
  1096. package/dist/lib/generated/Entities/EntityActionFilter/sections/details.component.d.ts +11 -0
  1097. package/dist/lib/generated/Entities/EntityActionFilter/sections/details.component.d.ts.map +1 -0
  1098. package/dist/lib/generated/Entities/EntityActionFilter/sections/details.component.js +111 -0
  1099. package/dist/lib/generated/Entities/EntityActionFilter/sections/details.component.js.map +1 -0
  1100. package/dist/lib/generated/Entities/EntityActionInvocation/entityactioninvocation.form.component.d.ts.map +1 -1
  1101. package/dist/lib/generated/Entities/EntityActionInvocation/entityactioninvocation.form.component.js +9 -15
  1102. package/dist/lib/generated/Entities/EntityActionInvocation/entityactioninvocation.form.component.js.map +1 -1
  1103. package/dist/lib/generated/Entities/EntityActionInvocation/sections/details.component.d.ts +11 -0
  1104. package/dist/lib/generated/Entities/EntityActionInvocation/sections/details.component.d.ts.map +1 -0
  1105. package/dist/lib/generated/Entities/EntityActionInvocation/sections/details.component.js +111 -0
  1106. package/dist/lib/generated/Entities/EntityActionInvocation/sections/details.component.js.map +1 -0
  1107. package/dist/lib/generated/Entities/EntityActionInvocationType/entityactioninvocationtype.form.component.d.ts.map +1 -1
  1108. package/dist/lib/generated/Entities/EntityActionInvocationType/entityactioninvocationtype.form.component.js +11 -12
  1109. package/dist/lib/generated/Entities/EntityActionInvocationType/entityactioninvocationtype.form.component.js.map +1 -1
  1110. package/dist/lib/generated/Entities/EntityActionInvocationType/sections/details.component.d.ts +11 -0
  1111. package/dist/lib/generated/Entities/EntityActionInvocationType/sections/details.component.d.ts.map +1 -0
  1112. package/dist/lib/generated/Entities/EntityActionInvocationType/sections/details.component.js +98 -0
  1113. package/dist/lib/generated/Entities/EntityActionInvocationType/sections/details.component.js.map +1 -0
  1114. package/dist/lib/generated/Entities/EntityActionParam/entityactionparam.form.component.d.ts.map +1 -1
  1115. package/dist/lib/generated/Entities/EntityActionParam/entityactionparam.form.component.js +4 -4
  1116. package/dist/lib/generated/Entities/EntityActionParam/entityactionparam.form.component.js.map +1 -1
  1117. package/dist/lib/generated/Entities/EntityActionParam/sections/details.component.d.ts +11 -0
  1118. package/dist/lib/generated/Entities/EntityActionParam/sections/details.component.d.ts.map +1 -0
  1119. package/dist/lib/generated/Entities/EntityActionParam/sections/details.component.js +129 -0
  1120. package/dist/lib/generated/Entities/EntityActionParam/sections/details.component.js.map +1 -0
  1121. package/dist/lib/generated/Entities/EntityCommunicationField/entitycommunicationfield.form.component.d.ts.map +1 -1
  1122. package/dist/lib/generated/Entities/EntityCommunicationField/entitycommunicationfield.form.component.js +7 -13
  1123. package/dist/lib/generated/Entities/EntityCommunicationField/entitycommunicationfield.form.component.js.map +1 -1
  1124. package/dist/lib/generated/Entities/EntityCommunicationField/sections/details.component.d.ts +11 -0
  1125. package/dist/lib/generated/Entities/EntityCommunicationField/sections/details.component.d.ts.map +1 -0
  1126. package/dist/lib/generated/Entities/EntityCommunicationField/sections/details.component.js +100 -0
  1127. package/dist/lib/generated/Entities/EntityCommunicationField/sections/details.component.js.map +1 -0
  1128. package/dist/lib/generated/Entities/EntityCommunicationMessageType/entitycommunicationmessagetype.form.component.d.ts.map +1 -1
  1129. package/dist/lib/generated/Entities/EntityCommunicationMessageType/entitycommunicationmessagetype.form.component.js +11 -12
  1130. package/dist/lib/generated/Entities/EntityCommunicationMessageType/entitycommunicationmessagetype.form.component.js.map +1 -1
  1131. package/dist/lib/generated/Entities/EntityCommunicationMessageType/sections/details.component.d.ts +11 -0
  1132. package/dist/lib/generated/Entities/EntityCommunicationMessageType/sections/details.component.d.ts.map +1 -0
  1133. package/dist/lib/generated/Entities/EntityCommunicationMessageType/sections/details.component.js +120 -0
  1134. package/dist/lib/generated/Entities/EntityCommunicationMessageType/sections/details.component.js.map +1 -0
  1135. package/dist/lib/generated/Entities/EntityDocument/entitydocument.form.component.d.ts.map +1 -1
  1136. package/dist/lib/generated/Entities/EntityDocument/entitydocument.form.component.js +23 -24
  1137. package/dist/lib/generated/Entities/EntityDocument/entitydocument.form.component.js.map +1 -1
  1138. package/dist/lib/generated/Entities/EntityDocument/sections/details.component.d.ts +11 -0
  1139. package/dist/lib/generated/Entities/EntityDocument/sections/details.component.d.ts.map +1 -0
  1140. package/dist/lib/generated/Entities/EntityDocument/sections/details.component.js +207 -0
  1141. package/dist/lib/generated/Entities/EntityDocument/sections/details.component.js.map +1 -0
  1142. package/dist/lib/generated/Entities/EntityDocumentRun/entitydocumentrun.form.component.d.ts.map +1 -1
  1143. package/dist/lib/generated/Entities/EntityDocumentRun/entitydocumentrun.form.component.js +3 -3
  1144. package/dist/lib/generated/Entities/EntityDocumentRun/entitydocumentrun.form.component.js.map +1 -1
  1145. package/dist/lib/generated/Entities/EntityDocumentRun/sections/details.component.d.ts +11 -0
  1146. package/dist/lib/generated/Entities/EntityDocumentRun/sections/details.component.d.ts.map +1 -0
  1147. package/dist/lib/generated/Entities/EntityDocumentRun/sections/details.component.js +118 -0
  1148. package/dist/lib/generated/Entities/EntityDocumentRun/sections/details.component.js.map +1 -0
  1149. package/dist/lib/generated/Entities/EntityDocumentSetting/entitydocumentsetting.form.component.d.ts.map +1 -1
  1150. package/dist/lib/generated/Entities/EntityDocumentSetting/entitydocumentsetting.form.component.js +3 -3
  1151. package/dist/lib/generated/Entities/EntityDocumentSetting/entitydocumentsetting.form.component.js.map +1 -1
  1152. package/dist/lib/generated/Entities/EntityDocumentSetting/sections/details.component.d.ts +11 -0
  1153. package/dist/lib/generated/Entities/EntityDocumentSetting/sections/details.component.d.ts.map +1 -0
  1154. package/dist/lib/generated/Entities/EntityDocumentSetting/sections/details.component.js +118 -0
  1155. package/dist/lib/generated/Entities/EntityDocumentSetting/sections/details.component.js.map +1 -0
  1156. package/dist/lib/generated/Entities/EntityDocumentType/entitydocumenttype.form.component.d.ts.map +1 -1
  1157. package/dist/lib/generated/Entities/EntityDocumentType/entitydocumenttype.form.component.js +11 -12
  1158. package/dist/lib/generated/Entities/EntityDocumentType/entitydocumenttype.form.component.js.map +1 -1
  1159. package/dist/lib/generated/Entities/EntityDocumentType/sections/details.component.d.ts +11 -0
  1160. package/dist/lib/generated/Entities/EntityDocumentType/sections/details.component.d.ts.map +1 -0
  1161. package/dist/lib/generated/Entities/EntityDocumentType/sections/details.component.js +89 -0
  1162. package/dist/lib/generated/Entities/EntityDocumentType/sections/details.component.js.map +1 -0
  1163. package/dist/lib/generated/Entities/EntityField/entityfield.form.component.d.ts.map +1 -1
  1164. package/dist/lib/generated/Entities/EntityField/entityfield.form.component.js +31 -26
  1165. package/dist/lib/generated/Entities/EntityField/entityfield.form.component.js.map +1 -1
  1166. package/dist/lib/generated/Entities/EntityField/sections/details.component.d.ts +11 -0
  1167. package/dist/lib/generated/Entities/EntityField/sections/details.component.d.ts.map +1 -0
  1168. package/dist/lib/generated/Entities/EntityField/sections/details.component.js +561 -0
  1169. package/dist/lib/generated/Entities/EntityField/sections/details.component.js.map +1 -0
  1170. package/dist/lib/generated/Entities/EntityFieldValue/entityfieldvalue.form.component.d.ts.map +1 -1
  1171. package/dist/lib/generated/Entities/EntityFieldValue/entityfieldvalue.form.component.js +3 -3
  1172. package/dist/lib/generated/Entities/EntityFieldValue/entityfieldvalue.form.component.js.map +1 -1
  1173. package/dist/lib/generated/Entities/EntityFieldValue/sections/details.component.d.ts +11 -0
  1174. package/dist/lib/generated/Entities/EntityFieldValue/sections/details.component.d.ts.map +1 -0
  1175. package/dist/lib/generated/Entities/EntityFieldValue/sections/details.component.js +145 -0
  1176. package/dist/lib/generated/Entities/EntityFieldValue/sections/details.component.js.map +1 -0
  1177. package/dist/lib/generated/Entities/EntityPermission/entitypermission.form.component.d.ts.map +1 -1
  1178. package/dist/lib/generated/Entities/EntityPermission/entitypermission.form.component.js +3 -3
  1179. package/dist/lib/generated/Entities/EntityPermission/entitypermission.form.component.js.map +1 -1
  1180. package/dist/lib/generated/Entities/EntityPermission/sections/details.component.d.ts +11 -0
  1181. package/dist/lib/generated/Entities/EntityPermission/sections/details.component.d.ts.map +1 -0
  1182. package/dist/lib/generated/Entities/EntityPermission/sections/details.component.js +236 -0
  1183. package/dist/lib/generated/Entities/EntityPermission/sections/details.component.js.map +1 -0
  1184. package/dist/lib/generated/Entities/EntityRecordDocument/entityrecorddocument.form.component.d.ts.map +1 -1
  1185. package/dist/lib/generated/Entities/EntityRecordDocument/entityrecorddocument.form.component.js +3 -3
  1186. package/dist/lib/generated/Entities/EntityRecordDocument/entityrecorddocument.form.component.js.map +1 -1
  1187. package/dist/lib/generated/Entities/EntityRecordDocument/sections/details.component.d.ts +11 -0
  1188. package/dist/lib/generated/Entities/EntityRecordDocument/sections/details.component.d.ts.map +1 -0
  1189. package/dist/lib/generated/Entities/EntityRecordDocument/sections/details.component.js +176 -0
  1190. package/dist/lib/generated/Entities/EntityRecordDocument/sections/details.component.js.map +1 -0
  1191. package/dist/lib/generated/Entities/EntityRelationship/entityrelationship.form.component.d.ts.map +1 -1
  1192. package/dist/lib/generated/Entities/EntityRelationship/entityrelationship.form.component.js +3 -3
  1193. package/dist/lib/generated/Entities/EntityRelationship/entityrelationship.form.component.js.map +1 -1
  1194. package/dist/lib/generated/Entities/EntityRelationship/sections/details.component.d.ts +11 -0
  1195. package/dist/lib/generated/Entities/EntityRelationship/sections/details.component.d.ts.map +1 -0
  1196. package/dist/lib/generated/Entities/EntityRelationship/sections/details.component.js +349 -0
  1197. package/dist/lib/generated/Entities/EntityRelationship/sections/details.component.js.map +1 -0
  1198. package/dist/lib/generated/Entities/EntityRelationshipDisplayComponent/entityrelationshipdisplaycomponent.form.component.d.ts.map +1 -1
  1199. package/dist/lib/generated/Entities/EntityRelationshipDisplayComponent/entityrelationshipdisplaycomponent.form.component.js +11 -12
  1200. package/dist/lib/generated/Entities/EntityRelationshipDisplayComponent/entityrelationshipdisplaycomponent.form.component.js.map +1 -1
  1201. package/dist/lib/generated/Entities/EntityRelationshipDisplayComponent/sections/details.component.d.ts +11 -0
  1202. package/dist/lib/generated/Entities/EntityRelationshipDisplayComponent/sections/details.component.d.ts.map +1 -0
  1203. package/dist/lib/generated/Entities/EntityRelationshipDisplayComponent/sections/details.component.js +98 -0
  1204. package/dist/lib/generated/Entities/EntityRelationshipDisplayComponent/sections/details.component.js.map +1 -0
  1205. package/dist/lib/generated/Entities/EntitySetting/entitysetting.form.component.d.ts.map +1 -1
  1206. package/dist/lib/generated/Entities/EntitySetting/entitysetting.form.component.js +3 -3
  1207. package/dist/lib/generated/Entities/EntitySetting/entitysetting.form.component.js.map +1 -1
  1208. package/dist/lib/generated/Entities/EntitySetting/sections/details.component.d.ts +11 -0
  1209. package/dist/lib/generated/Entities/EntitySetting/sections/details.component.d.ts.map +1 -0
  1210. package/dist/lib/generated/Entities/EntitySetting/sections/details.component.js +118 -0
  1211. package/dist/lib/generated/Entities/EntitySetting/sections/details.component.js.map +1 -0
  1212. package/dist/lib/generated/Entities/Environment/environment.form.component.d.ts.map +1 -1
  1213. package/dist/lib/generated/Entities/Environment/environment.form.component.js +47 -48
  1214. package/dist/lib/generated/Entities/Environment/environment.form.component.js.map +1 -1
  1215. package/dist/lib/generated/Entities/Environment/sections/details.component.d.ts +11 -0
  1216. package/dist/lib/generated/Entities/Environment/sections/details.component.d.ts.map +1 -0
  1217. package/dist/lib/generated/Entities/Environment/sections/details.component.js +107 -0
  1218. package/dist/lib/generated/Entities/Environment/sections/details.component.js.map +1 -0
  1219. package/dist/lib/generated/Entities/ErrorLog/errorlog.form.component.d.ts.map +1 -1
  1220. package/dist/lib/generated/Entities/ErrorLog/errorlog.form.component.js +4 -4
  1221. package/dist/lib/generated/Entities/ErrorLog/errorlog.form.component.js.map +1 -1
  1222. package/dist/lib/generated/Entities/ErrorLog/sections/details.component.d.ts +11 -0
  1223. package/dist/lib/generated/Entities/ErrorLog/sections/details.component.d.ts.map +1 -0
  1224. package/dist/lib/generated/Entities/ErrorLog/sections/details.component.js +147 -0
  1225. package/dist/lib/generated/Entities/ErrorLog/sections/details.component.js.map +1 -0
  1226. package/dist/lib/generated/Entities/ExplorerNavigationItem/explorernavigationitem.form.component.d.ts.map +1 -1
  1227. package/dist/lib/generated/Entities/ExplorerNavigationItem/explorernavigationitem.form.component.js +3 -3
  1228. package/dist/lib/generated/Entities/ExplorerNavigationItem/explorernavigationitem.form.component.js.map +1 -1
  1229. package/dist/lib/generated/Entities/ExplorerNavigationItem/sections/details.component.d.ts +11 -0
  1230. package/dist/lib/generated/Entities/ExplorerNavigationItem/sections/details.component.d.ts.map +1 -0
  1231. package/dist/lib/generated/Entities/ExplorerNavigationItem/sections/details.component.js +152 -0
  1232. package/dist/lib/generated/Entities/ExplorerNavigationItem/sections/details.component.js.map +1 -0
  1233. package/dist/lib/generated/Entities/File/file.form.component.d.ts.map +1 -1
  1234. package/dist/lib/generated/Entities/File/file.form.component.js +29 -30
  1235. package/dist/lib/generated/Entities/File/file.form.component.js.map +1 -1
  1236. package/dist/lib/generated/Entities/File/sections/details.component.d.ts +11 -0
  1237. package/dist/lib/generated/Entities/File/sections/details.component.d.ts.map +1 -0
  1238. package/dist/lib/generated/Entities/File/sections/details.component.js +156 -0
  1239. package/dist/lib/generated/Entities/File/sections/details.component.js.map +1 -0
  1240. package/dist/lib/generated/Entities/FileCategory/filecategory.form.component.d.ts.map +1 -1
  1241. package/dist/lib/generated/Entities/FileCategory/filecategory.form.component.js +17 -18
  1242. package/dist/lib/generated/Entities/FileCategory/filecategory.form.component.js.map +1 -1
  1243. package/dist/lib/generated/Entities/FileCategory/sections/details.component.d.ts +11 -0
  1244. package/dist/lib/generated/Entities/FileCategory/sections/details.component.d.ts.map +1 -0
  1245. package/dist/lib/generated/Entities/FileCategory/sections/details.component.js +118 -0
  1246. package/dist/lib/generated/Entities/FileCategory/sections/details.component.js.map +1 -0
  1247. package/dist/lib/generated/Entities/FileEntityRecordLink/fileentityrecordlink.form.component.d.ts.map +1 -1
  1248. package/dist/lib/generated/Entities/FileEntityRecordLink/fileentityrecordlink.form.component.js +3 -3
  1249. package/dist/lib/generated/Entities/FileEntityRecordLink/fileentityrecordlink.form.component.js.map +1 -1
  1250. package/dist/lib/generated/Entities/FileEntityRecordLink/sections/details.component.d.ts +11 -0
  1251. package/dist/lib/generated/Entities/FileEntityRecordLink/sections/details.component.d.ts.map +1 -0
  1252. package/dist/lib/generated/Entities/FileEntityRecordLink/sections/details.component.js +120 -0
  1253. package/dist/lib/generated/Entities/FileEntityRecordLink/sections/details.component.js.map +1 -0
  1254. package/dist/lib/generated/Entities/FileStorageAccount/filestorageaccount.form.component.d.ts.map +1 -1
  1255. package/dist/lib/generated/Entities/FileStorageAccount/filestorageaccount.form.component.js +3 -3
  1256. package/dist/lib/generated/Entities/FileStorageAccount/filestorageaccount.form.component.js.map +1 -1
  1257. package/dist/lib/generated/Entities/FileStorageProvider/filestorageprovider.form.component.d.ts.map +1 -1
  1258. package/dist/lib/generated/Entities/FileStorageProvider/filestorageprovider.form.component.js +29 -30
  1259. package/dist/lib/generated/Entities/FileStorageProvider/filestorageprovider.form.component.js.map +1 -1
  1260. package/dist/lib/generated/Entities/FileStorageProvider/sections/details.component.d.ts +11 -0
  1261. package/dist/lib/generated/Entities/FileStorageProvider/sections/details.component.d.ts.map +1 -0
  1262. package/dist/lib/generated/Entities/FileStorageProvider/sections/details.component.js +134 -0
  1263. package/dist/lib/generated/Entities/FileStorageProvider/sections/details.component.js.map +1 -0
  1264. package/dist/lib/generated/Entities/GeneratedCode/generatedcode.form.component.d.ts.map +1 -1
  1265. package/dist/lib/generated/Entities/GeneratedCode/generatedcode.form.component.js +3 -3
  1266. package/dist/lib/generated/Entities/GeneratedCode/generatedcode.form.component.js.map +1 -1
  1267. package/dist/lib/generated/Entities/GeneratedCode/sections/details.component.d.ts +11 -0
  1268. package/dist/lib/generated/Entities/GeneratedCode/sections/details.component.d.ts.map +1 -0
  1269. package/dist/lib/generated/Entities/GeneratedCode/sections/details.component.js +203 -0
  1270. package/dist/lib/generated/Entities/GeneratedCode/sections/details.component.js.map +1 -0
  1271. package/dist/lib/generated/Entities/GeneratedCodeCategory/generatedcodecategory.form.component.d.ts.map +1 -1
  1272. package/dist/lib/generated/Entities/GeneratedCodeCategory/generatedcodecategory.form.component.js +17 -18
  1273. package/dist/lib/generated/Entities/GeneratedCodeCategory/generatedcodecategory.form.component.js.map +1 -1
  1274. package/dist/lib/generated/Entities/GeneratedCodeCategory/sections/details.component.d.ts +11 -0
  1275. package/dist/lib/generated/Entities/GeneratedCodeCategory/sections/details.component.d.ts.map +1 -0
  1276. package/dist/lib/generated/Entities/GeneratedCodeCategory/sections/details.component.js +118 -0
  1277. package/dist/lib/generated/Entities/GeneratedCodeCategory/sections/details.component.js.map +1 -0
  1278. package/dist/lib/generated/Entities/Integration/integration.form.component.d.ts.map +1 -1
  1279. package/dist/lib/generated/Entities/Integration/integration.form.component.js +23 -24
  1280. package/dist/lib/generated/Entities/Integration/integration.form.component.js.map +1 -1
  1281. package/dist/lib/generated/Entities/Integration/sections/details.component.d.ts +11 -0
  1282. package/dist/lib/generated/Entities/Integration/sections/details.component.d.ts.map +1 -0
  1283. package/dist/lib/generated/Entities/Integration/sections/details.component.js +135 -0
  1284. package/dist/lib/generated/Entities/Integration/sections/details.component.js.map +1 -0
  1285. package/dist/lib/generated/Entities/IntegrationURLFormat/integrationurlformat.form.component.d.ts.map +1 -1
  1286. package/dist/lib/generated/Entities/IntegrationURLFormat/integrationurlformat.form.component.js +3 -3
  1287. package/dist/lib/generated/Entities/IntegrationURLFormat/integrationurlformat.form.component.js.map +1 -1
  1288. package/dist/lib/generated/Entities/IntegrationURLFormat/sections/details.component.d.ts +11 -0
  1289. package/dist/lib/generated/Entities/IntegrationURLFormat/sections/details.component.d.ts.map +1 -0
  1290. package/dist/lib/generated/Entities/IntegrationURLFormat/sections/details.component.js +139 -0
  1291. package/dist/lib/generated/Entities/IntegrationURLFormat/sections/details.component.js.map +1 -0
  1292. package/dist/lib/generated/Entities/Library/library.form.component.d.ts.map +1 -1
  1293. package/dist/lib/generated/Entities/Library/library.form.component.js +17 -18
  1294. package/dist/lib/generated/Entities/Library/library.form.component.js.map +1 -1
  1295. package/dist/lib/generated/Entities/Library/sections/details.component.d.ts +11 -0
  1296. package/dist/lib/generated/Entities/Library/sections/details.component.d.ts.map +1 -0
  1297. package/dist/lib/generated/Entities/Library/sections/details.component.js +116 -0
  1298. package/dist/lib/generated/Entities/Library/sections/details.component.js.map +1 -0
  1299. package/dist/lib/generated/Entities/LibraryItem/libraryitem.form.component.d.ts.map +1 -1
  1300. package/dist/lib/generated/Entities/LibraryItem/libraryitem.form.component.js +3 -3
  1301. package/dist/lib/generated/Entities/LibraryItem/libraryitem.form.component.js.map +1 -1
  1302. package/dist/lib/generated/Entities/LibraryItem/sections/details.component.d.ts +11 -0
  1303. package/dist/lib/generated/Entities/LibraryItem/sections/details.component.d.ts.map +1 -0
  1304. package/dist/lib/generated/Entities/LibraryItem/sections/details.component.js +109 -0
  1305. package/dist/lib/generated/Entities/LibraryItem/sections/details.component.js.map +1 -0
  1306. package/dist/lib/generated/Entities/List/list.form.component.d.ts.map +1 -1
  1307. package/dist/lib/generated/Entities/List/list.form.component.js +29 -30
  1308. package/dist/lib/generated/Entities/List/list.form.component.js.map +1 -1
  1309. package/dist/lib/generated/Entities/List/sections/details.component.d.ts +11 -0
  1310. package/dist/lib/generated/Entities/List/sections/details.component.d.ts.map +1 -0
  1311. package/dist/lib/generated/Entities/List/sections/details.component.js +178 -0
  1312. package/dist/lib/generated/Entities/List/sections/details.component.js.map +1 -0
  1313. package/dist/lib/generated/Entities/ListCategory/listcategory.form.component.d.ts.map +1 -1
  1314. package/dist/lib/generated/Entities/ListCategory/listcategory.form.component.js +17 -18
  1315. package/dist/lib/generated/Entities/ListCategory/listcategory.form.component.js.map +1 -1
  1316. package/dist/lib/generated/Entities/ListCategory/sections/details.component.d.ts +11 -0
  1317. package/dist/lib/generated/Entities/ListCategory/sections/details.component.d.ts.map +1 -0
  1318. package/dist/lib/generated/Entities/ListCategory/sections/details.component.js +138 -0
  1319. package/dist/lib/generated/Entities/ListCategory/sections/details.component.js.map +1 -0
  1320. package/dist/lib/generated/Entities/ListDetail/listdetail.form.component.d.ts.map +1 -1
  1321. package/dist/lib/generated/Entities/ListDetail/listdetail.form.component.js +3 -3
  1322. package/dist/lib/generated/Entities/ListDetail/listdetail.form.component.js.map +1 -1
  1323. package/dist/lib/generated/Entities/ListDetail/sections/details.component.d.ts +11 -0
  1324. package/dist/lib/generated/Entities/ListDetail/sections/details.component.d.ts.map +1 -0
  1325. package/dist/lib/generated/Entities/ListDetail/sections/details.component.js +127 -0
  1326. package/dist/lib/generated/Entities/ListDetail/sections/details.component.js.map +1 -0
  1327. package/dist/lib/generated/Entities/ListInvitation/listinvitation.form.component.d.ts.map +1 -1
  1328. package/dist/lib/generated/Entities/ListInvitation/listinvitation.form.component.js +3 -3
  1329. package/dist/lib/generated/Entities/ListInvitation/listinvitation.form.component.js.map +1 -1
  1330. package/dist/lib/generated/Entities/ListShare/listshare.form.component.d.ts.map +1 -1
  1331. package/dist/lib/generated/Entities/ListShare/listshare.form.component.js +3 -3
  1332. package/dist/lib/generated/Entities/ListShare/listshare.form.component.js.map +1 -1
  1333. package/dist/lib/generated/Entities/MCPServer/mcpserver.form.component.d.ts +11 -0
  1334. package/dist/lib/generated/Entities/MCPServer/mcpserver.form.component.d.ts.map +1 -0
  1335. package/dist/lib/generated/Entities/MCPServer/mcpserver.form.component.js +177 -0
  1336. package/dist/lib/generated/Entities/MCPServer/mcpserver.form.component.js.map +1 -0
  1337. package/dist/lib/generated/Entities/MCPServerConnection/mcpserverconnection.form.component.d.ts +11 -0
  1338. package/dist/lib/generated/Entities/MCPServerConnection/mcpserverconnection.form.component.d.ts.map +1 -0
  1339. package/dist/lib/generated/Entities/MCPServerConnection/mcpserverconnection.form.component.js +211 -0
  1340. package/dist/lib/generated/Entities/MCPServerConnection/mcpserverconnection.form.component.js.map +1 -0
  1341. package/dist/lib/generated/Entities/MCPServerConnectionPermission/mcpserverconnectionpermission.form.component.d.ts +11 -0
  1342. package/dist/lib/generated/Entities/MCPServerConnectionPermission/mcpserverconnectionpermission.form.component.d.ts.map +1 -0
  1343. package/dist/lib/generated/Entities/MCPServerConnectionPermission/mcpserverconnectionpermission.form.component.js +77 -0
  1344. package/dist/lib/generated/Entities/MCPServerConnectionPermission/mcpserverconnectionpermission.form.component.js.map +1 -0
  1345. package/dist/lib/generated/Entities/MCPServerConnectionTool/mcpserverconnectiontool.form.component.d.ts +11 -0
  1346. package/dist/lib/generated/Entities/MCPServerConnectionTool/mcpserverconnectiontool.form.component.d.ts.map +1 -0
  1347. package/dist/lib/generated/Entities/MCPServerConnectionTool/mcpserverconnectiontool.form.component.js +73 -0
  1348. package/dist/lib/generated/Entities/MCPServerConnectionTool/mcpserverconnectiontool.form.component.js.map +1 -0
  1349. package/dist/lib/generated/Entities/MCPServerTool/mcpservertool.form.component.d.ts +11 -0
  1350. package/dist/lib/generated/Entities/MCPServerTool/mcpservertool.form.component.d.ts.map +1 -0
  1351. package/dist/lib/generated/Entities/MCPServerTool/mcpservertool.form.component.js +131 -0
  1352. package/dist/lib/generated/Entities/MCPServerTool/mcpservertool.form.component.js.map +1 -0
  1353. package/dist/lib/generated/Entities/MCPToolExecutionLog/mcptoolexecutionlog.form.component.d.ts +11 -0
  1354. package/dist/lib/generated/Entities/MCPToolExecutionLog/mcptoolexecutionlog.form.component.d.ts.map +1 -0
  1355. package/dist/lib/generated/Entities/MCPToolExecutionLog/mcptoolexecutionlog.form.component.js +101 -0
  1356. package/dist/lib/generated/Entities/MCPToolExecutionLog/mcptoolexecutionlog.form.component.js.map +1 -0
  1357. package/dist/lib/generated/Entities/OAuthAuthServerMetadataCache/oauthauthservermetadatacache.form.component.d.ts +11 -0
  1358. package/dist/lib/generated/Entities/OAuthAuthServerMetadataCache/oauthauthservermetadatacache.form.component.d.ts.map +1 -0
  1359. package/dist/lib/generated/Entities/OAuthAuthServerMetadataCache/oauthauthservermetadatacache.form.component.js +75 -0
  1360. package/dist/lib/generated/Entities/OAuthAuthServerMetadataCache/oauthauthservermetadatacache.form.component.js.map +1 -0
  1361. package/dist/lib/generated/Entities/OAuthAuthorizationState/oauthauthorizationstate.form.component.d.ts +11 -0
  1362. package/dist/lib/generated/Entities/OAuthAuthorizationState/oauthauthorizationstate.form.component.d.ts.map +1 -0
  1363. package/dist/lib/generated/Entities/OAuthAuthorizationState/oauthauthorizationstate.form.component.js +81 -0
  1364. package/dist/lib/generated/Entities/OAuthAuthorizationState/oauthauthorizationstate.form.component.js.map +1 -0
  1365. package/dist/lib/generated/Entities/OAuthClientRegistration/oauthclientregistration.form.component.d.ts +11 -0
  1366. package/dist/lib/generated/Entities/OAuthClientRegistration/oauthclientregistration.form.component.d.ts.map +1 -0
  1367. package/dist/lib/generated/Entities/OAuthClientRegistration/oauthclientregistration.form.component.js +81 -0
  1368. package/dist/lib/generated/Entities/OAuthClientRegistration/oauthclientregistration.form.component.js.map +1 -0
  1369. package/dist/lib/generated/Entities/OAuthToken/oauthtoken.form.component.d.ts +11 -0
  1370. package/dist/lib/generated/Entities/OAuthToken/oauthtoken.form.component.d.ts.map +1 -0
  1371. package/dist/lib/generated/Entities/OAuthToken/oauthtoken.form.component.js +67 -0
  1372. package/dist/lib/generated/Entities/OAuthToken/oauthtoken.form.component.js.map +1 -0
  1373. package/dist/lib/generated/Entities/OutputDeliveryType/outputdeliverytype.form.component.d.ts.map +1 -1
  1374. package/dist/lib/generated/Entities/OutputDeliveryType/outputdeliverytype.form.component.js +11 -12
  1375. package/dist/lib/generated/Entities/OutputDeliveryType/outputdeliverytype.form.component.js.map +1 -1
  1376. package/dist/lib/generated/Entities/OutputDeliveryType/sections/details.component.d.ts +11 -0
  1377. package/dist/lib/generated/Entities/OutputDeliveryType/sections/details.component.d.ts.map +1 -0
  1378. package/dist/lib/generated/Entities/OutputDeliveryType/sections/details.component.js +89 -0
  1379. package/dist/lib/generated/Entities/OutputDeliveryType/sections/details.component.js.map +1 -0
  1380. package/dist/lib/generated/Entities/OutputFormatType/outputformattype.form.component.d.ts.map +1 -1
  1381. package/dist/lib/generated/Entities/OutputFormatType/outputformattype.form.component.js +11 -12
  1382. package/dist/lib/generated/Entities/OutputFormatType/outputformattype.form.component.js.map +1 -1
  1383. package/dist/lib/generated/Entities/OutputFormatType/sections/details.component.d.ts +11 -0
  1384. package/dist/lib/generated/Entities/OutputFormatType/sections/details.component.d.ts.map +1 -0
  1385. package/dist/lib/generated/Entities/OutputFormatType/sections/details.component.js +98 -0
  1386. package/dist/lib/generated/Entities/OutputFormatType/sections/details.component.js.map +1 -0
  1387. package/dist/lib/generated/Entities/OutputTriggerType/outputtriggertype.form.component.d.ts.map +1 -1
  1388. package/dist/lib/generated/Entities/OutputTriggerType/outputtriggertype.form.component.js +11 -12
  1389. package/dist/lib/generated/Entities/OutputTriggerType/outputtriggertype.form.component.js.map +1 -1
  1390. package/dist/lib/generated/Entities/OutputTriggerType/sections/details.component.d.ts +11 -0
  1391. package/dist/lib/generated/Entities/OutputTriggerType/sections/details.component.d.ts.map +1 -0
  1392. package/dist/lib/generated/Entities/OutputTriggerType/sections/details.component.js +89 -0
  1393. package/dist/lib/generated/Entities/OutputTriggerType/sections/details.component.js.map +1 -0
  1394. package/dist/lib/generated/Entities/Project/project.form.component.d.ts.map +1 -1
  1395. package/dist/lib/generated/Entities/Project/project.form.component.js +23 -24
  1396. package/dist/lib/generated/Entities/Project/project.form.component.js.map +1 -1
  1397. package/dist/lib/generated/Entities/Project/sections/details.component.d.ts +11 -0
  1398. package/dist/lib/generated/Entities/Project/sections/details.component.d.ts.map +1 -0
  1399. package/dist/lib/generated/Entities/Project/sections/details.component.js +165 -0
  1400. package/dist/lib/generated/Entities/Project/sections/details.component.js.map +1 -0
  1401. package/dist/lib/generated/Entities/PublicLink/publiclink.form.component.d.ts.map +1 -1
  1402. package/dist/lib/generated/Entities/PublicLink/publiclink.form.component.js +3 -3
  1403. package/dist/lib/generated/Entities/PublicLink/publiclink.form.component.js.map +1 -1
  1404. package/dist/lib/generated/Entities/PublicLink/sections/details.component.d.ts +11 -0
  1405. package/dist/lib/generated/Entities/PublicLink/sections/details.component.d.ts.map +1 -0
  1406. package/dist/lib/generated/Entities/PublicLink/sections/details.component.js +163 -0
  1407. package/dist/lib/generated/Entities/PublicLink/sections/details.component.js.map +1 -0
  1408. package/dist/lib/generated/Entities/Query/query.form.component.d.ts.map +1 -1
  1409. package/dist/lib/generated/Entities/Query/query.form.component.js +35 -36
  1410. package/dist/lib/generated/Entities/Query/query.form.component.js.map +1 -1
  1411. package/dist/lib/generated/Entities/Query/sections/details.component.d.ts +11 -0
  1412. package/dist/lib/generated/Entities/Query/sections/details.component.d.ts.map +1 -0
  1413. package/dist/lib/generated/Entities/Query/sections/details.component.js +255 -0
  1414. package/dist/lib/generated/Entities/Query/sections/details.component.js.map +1 -0
  1415. package/dist/lib/generated/Entities/QueryCategory/querycategory.form.component.d.ts.map +1 -1
  1416. package/dist/lib/generated/Entities/QueryCategory/querycategory.form.component.js +17 -18
  1417. package/dist/lib/generated/Entities/QueryCategory/querycategory.form.component.js.map +1 -1
  1418. package/dist/lib/generated/Entities/QueryCategory/sections/details.component.d.ts +11 -0
  1419. package/dist/lib/generated/Entities/QueryCategory/sections/details.component.d.ts.map +1 -0
  1420. package/dist/lib/generated/Entities/QueryCategory/sections/details.component.js +174 -0
  1421. package/dist/lib/generated/Entities/QueryCategory/sections/details.component.js.map +1 -0
  1422. package/dist/lib/generated/Entities/QueryEntity/queryentity.form.component.d.ts.map +1 -1
  1423. package/dist/lib/generated/Entities/QueryEntity/queryentity.form.component.js +3 -3
  1424. package/dist/lib/generated/Entities/QueryEntity/queryentity.form.component.js.map +1 -1
  1425. package/dist/lib/generated/Entities/QueryEntity/sections/details.component.d.ts +11 -0
  1426. package/dist/lib/generated/Entities/QueryEntity/sections/details.component.d.ts.map +1 -0
  1427. package/dist/lib/generated/Entities/QueryEntity/sections/details.component.js +129 -0
  1428. package/dist/lib/generated/Entities/QueryEntity/sections/details.component.js.map +1 -0
  1429. package/dist/lib/generated/Entities/QueryField/queryfield.form.component.d.ts.map +1 -1
  1430. package/dist/lib/generated/Entities/QueryField/queryfield.form.component.js +3 -3
  1431. package/dist/lib/generated/Entities/QueryField/queryfield.form.component.js.map +1 -1
  1432. package/dist/lib/generated/Entities/QueryField/sections/details.component.d.ts +11 -0
  1433. package/dist/lib/generated/Entities/QueryField/sections/details.component.d.ts.map +1 -0
  1434. package/dist/lib/generated/Entities/QueryField/sections/details.component.js +219 -0
  1435. package/dist/lib/generated/Entities/QueryField/sections/details.component.js.map +1 -0
  1436. package/dist/lib/generated/Entities/QueryParameter/queryparameter.form.component.d.ts.map +1 -1
  1437. package/dist/lib/generated/Entities/QueryParameter/queryparameter.form.component.js +3 -3
  1438. package/dist/lib/generated/Entities/QueryParameter/queryparameter.form.component.js.map +1 -1
  1439. package/dist/lib/generated/Entities/QueryParameter/sections/details.component.d.ts +11 -0
  1440. package/dist/lib/generated/Entities/QueryParameter/sections/details.component.d.ts.map +1 -0
  1441. package/dist/lib/generated/Entities/QueryParameter/sections/details.component.js +172 -0
  1442. package/dist/lib/generated/Entities/QueryParameter/sections/details.component.js.map +1 -0
  1443. package/dist/lib/generated/Entities/QueryPermission/querypermission.form.component.d.ts.map +1 -1
  1444. package/dist/lib/generated/Entities/QueryPermission/querypermission.form.component.js +3 -3
  1445. package/dist/lib/generated/Entities/QueryPermission/querypermission.form.component.js.map +1 -1
  1446. package/dist/lib/generated/Entities/QueryPermission/sections/details.component.d.ts +11 -0
  1447. package/dist/lib/generated/Entities/QueryPermission/sections/details.component.d.ts.map +1 -0
  1448. package/dist/lib/generated/Entities/QueryPermission/sections/details.component.js +111 -0
  1449. package/dist/lib/generated/Entities/QueryPermission/sections/details.component.js.map +1 -0
  1450. package/dist/lib/generated/Entities/Queue/queue.form.component.d.ts.map +1 -1
  1451. package/dist/lib/generated/Entities/Queue/queue.form.component.js +11 -12
  1452. package/dist/lib/generated/Entities/Queue/queue.form.component.js.map +1 -1
  1453. package/dist/lib/generated/Entities/Queue/sections/details.component.d.ts +11 -0
  1454. package/dist/lib/generated/Entities/Queue/sections/details.component.d.ts.map +1 -0
  1455. package/dist/lib/generated/Entities/Queue/sections/details.component.js +226 -0
  1456. package/dist/lib/generated/Entities/Queue/sections/details.component.js.map +1 -0
  1457. package/dist/lib/generated/Entities/QueueTask/queuetask.form.component.d.ts.map +1 -1
  1458. package/dist/lib/generated/Entities/QueueTask/queuetask.form.component.js +3 -3
  1459. package/dist/lib/generated/Entities/QueueTask/queuetask.form.component.js.map +1 -1
  1460. package/dist/lib/generated/Entities/QueueTask/sections/details.component.d.ts +11 -0
  1461. package/dist/lib/generated/Entities/QueueTask/sections/details.component.d.ts.map +1 -0
  1462. package/dist/lib/generated/Entities/QueueTask/sections/details.component.js +163 -0
  1463. package/dist/lib/generated/Entities/QueueTask/sections/details.component.js.map +1 -0
  1464. package/dist/lib/generated/Entities/QueueType/queuetype.form.component.d.ts.map +1 -1
  1465. package/dist/lib/generated/Entities/QueueType/queuetype.form.component.js +11 -12
  1466. package/dist/lib/generated/Entities/QueueType/queuetype.form.component.js.map +1 -1
  1467. package/dist/lib/generated/Entities/QueueType/sections/details.component.d.ts +11 -0
  1468. package/dist/lib/generated/Entities/QueueType/sections/details.component.d.ts.map +1 -0
  1469. package/dist/lib/generated/Entities/QueueType/sections/details.component.js +116 -0
  1470. package/dist/lib/generated/Entities/QueueType/sections/details.component.js.map +1 -0
  1471. package/dist/lib/generated/Entities/Recommendation/recommendation.form.component.d.ts.map +1 -1
  1472. package/dist/lib/generated/Entities/Recommendation/recommendation.form.component.js +16 -23
  1473. package/dist/lib/generated/Entities/Recommendation/recommendation.form.component.js.map +1 -1
  1474. package/dist/lib/generated/Entities/Recommendation/sections/details.component.d.ts +11 -0
  1475. package/dist/lib/generated/Entities/Recommendation/sections/details.component.d.ts.map +1 -0
  1476. package/dist/lib/generated/Entities/Recommendation/sections/details.component.js +111 -0
  1477. package/dist/lib/generated/Entities/Recommendation/sections/details.component.js.map +1 -0
  1478. package/dist/lib/generated/Entities/RecommendationItem/recommendationitem.form.component.d.ts.map +1 -1
  1479. package/dist/lib/generated/Entities/RecommendationItem/recommendationitem.form.component.js +7 -13
  1480. package/dist/lib/generated/Entities/RecommendationItem/recommendationitem.form.component.js.map +1 -1
  1481. package/dist/lib/generated/Entities/RecommendationItem/sections/details.component.d.ts +11 -0
  1482. package/dist/lib/generated/Entities/RecommendationItem/sections/details.component.d.ts.map +1 -0
  1483. package/dist/lib/generated/Entities/RecommendationItem/sections/details.component.js +120 -0
  1484. package/dist/lib/generated/Entities/RecommendationItem/sections/details.component.js.map +1 -0
  1485. package/dist/lib/generated/Entities/RecommendationProvider/recommendationprovider.form.component.d.ts.map +1 -1
  1486. package/dist/lib/generated/Entities/RecommendationProvider/recommendationprovider.form.component.js +11 -12
  1487. package/dist/lib/generated/Entities/RecommendationProvider/recommendationprovider.form.component.js.map +1 -1
  1488. package/dist/lib/generated/Entities/RecommendationProvider/sections/details.component.d.ts +11 -0
  1489. package/dist/lib/generated/Entities/RecommendationProvider/sections/details.component.d.ts.map +1 -0
  1490. package/dist/lib/generated/Entities/RecommendationProvider/sections/details.component.js +89 -0
  1491. package/dist/lib/generated/Entities/RecommendationProvider/sections/details.component.js.map +1 -0
  1492. package/dist/lib/generated/Entities/RecommendationRun/recommendationrun.form.component.d.ts.map +1 -1
  1493. package/dist/lib/generated/Entities/RecommendationRun/recommendationrun.form.component.js +11 -12
  1494. package/dist/lib/generated/Entities/RecommendationRun/recommendationrun.form.component.js.map +1 -1
  1495. package/dist/lib/generated/Entities/RecommendationRun/sections/details.component.d.ts +11 -0
  1496. package/dist/lib/generated/Entities/RecommendationRun/sections/details.component.d.ts.map +1 -0
  1497. package/dist/lib/generated/Entities/RecommendationRun/sections/details.component.js +147 -0
  1498. package/dist/lib/generated/Entities/RecommendationRun/sections/details.component.js.map +1 -0
  1499. package/dist/lib/generated/Entities/RecordChange/recordchange.form.component.d.ts.map +1 -1
  1500. package/dist/lib/generated/Entities/RecordChange/recordchange.form.component.js +31 -19
  1501. package/dist/lib/generated/Entities/RecordChange/recordchange.form.component.js.map +1 -1
  1502. package/dist/lib/generated/Entities/RecordChange/sections/details.component.d.ts +11 -0
  1503. package/dist/lib/generated/Entities/RecordChange/sections/details.component.d.ts.map +1 -0
  1504. package/dist/lib/generated/Entities/RecordChange/sections/details.component.js +232 -0
  1505. package/dist/lib/generated/Entities/RecordChange/sections/details.component.js.map +1 -0
  1506. package/dist/lib/generated/Entities/RecordChangeReplayRun/recordchangereplayrun.form.component.d.ts.map +1 -1
  1507. package/dist/lib/generated/Entities/RecordChangeReplayRun/recordchangereplayrun.form.component.js +11 -12
  1508. package/dist/lib/generated/Entities/RecordChangeReplayRun/recordchangereplayrun.form.component.js.map +1 -1
  1509. package/dist/lib/generated/Entities/RecordChangeReplayRun/sections/details.component.d.ts +11 -0
  1510. package/dist/lib/generated/Entities/RecordChangeReplayRun/sections/details.component.d.ts.map +1 -0
  1511. package/dist/lib/generated/Entities/RecordChangeReplayRun/sections/details.component.js +118 -0
  1512. package/dist/lib/generated/Entities/RecordChangeReplayRun/sections/details.component.js.map +1 -0
  1513. package/dist/lib/generated/Entities/RecordLink/recordlink.form.component.d.ts.map +1 -1
  1514. package/dist/lib/generated/Entities/RecordLink/recordlink.form.component.js +3 -3
  1515. package/dist/lib/generated/Entities/RecordLink/recordlink.form.component.js.map +1 -1
  1516. package/dist/lib/generated/Entities/RecordLink/sections/details.component.d.ts +11 -0
  1517. package/dist/lib/generated/Entities/RecordLink/sections/details.component.d.ts.map +1 -0
  1518. package/dist/lib/generated/Entities/RecordLink/sections/details.component.js +156 -0
  1519. package/dist/lib/generated/Entities/RecordLink/sections/details.component.js.map +1 -0
  1520. package/dist/lib/generated/Entities/RecordMergeDeletionLog/recordmergedeletionlog.form.component.d.ts.map +1 -1
  1521. package/dist/lib/generated/Entities/RecordMergeDeletionLog/recordmergedeletionlog.form.component.js +7 -13
  1522. package/dist/lib/generated/Entities/RecordMergeDeletionLog/recordmergedeletionlog.form.component.js.map +1 -1
  1523. package/dist/lib/generated/Entities/RecordMergeDeletionLog/sections/details.component.d.ts +11 -0
  1524. package/dist/lib/generated/Entities/RecordMergeDeletionLog/sections/details.component.d.ts.map +1 -0
  1525. package/dist/lib/generated/Entities/RecordMergeDeletionLog/sections/details.component.js +109 -0
  1526. package/dist/lib/generated/Entities/RecordMergeDeletionLog/sections/details.component.js.map +1 -0
  1527. package/dist/lib/generated/Entities/RecordMergeLog/recordmergelog.form.component.d.ts.map +1 -1
  1528. package/dist/lib/generated/Entities/RecordMergeLog/recordmergelog.form.component.js +17 -18
  1529. package/dist/lib/generated/Entities/RecordMergeLog/recordmergelog.form.component.js.map +1 -1
  1530. package/dist/lib/generated/Entities/RecordMergeLog/sections/details.component.d.ts +11 -0
  1531. package/dist/lib/generated/Entities/RecordMergeLog/sections/details.component.d.ts.map +1 -0
  1532. package/dist/lib/generated/Entities/RecordMergeLog/sections/details.component.js +194 -0
  1533. package/dist/lib/generated/Entities/RecordMergeLog/sections/details.component.js.map +1 -0
  1534. package/dist/lib/generated/Entities/Report/report.form.component.d.ts.map +1 -1
  1535. package/dist/lib/generated/Entities/Report/report.form.component.js +28 -35
  1536. package/dist/lib/generated/Entities/Report/report.form.component.js.map +1 -1
  1537. package/dist/lib/generated/Entities/Report/sections/details.component.d.ts +11 -0
  1538. package/dist/lib/generated/Entities/Report/sections/details.component.d.ts.map +1 -0
  1539. package/dist/lib/generated/Entities/Report/sections/details.component.js +325 -0
  1540. package/dist/lib/generated/Entities/Report/sections/details.component.js.map +1 -0
  1541. package/dist/lib/generated/Entities/ReportCategory/reportcategory.form.component.d.ts.map +1 -1
  1542. package/dist/lib/generated/Entities/ReportCategory/reportcategory.form.component.js +17 -18
  1543. package/dist/lib/generated/Entities/ReportCategory/reportcategory.form.component.js.map +1 -1
  1544. package/dist/lib/generated/Entities/ReportCategory/sections/details.component.d.ts +11 -0
  1545. package/dist/lib/generated/Entities/ReportCategory/sections/details.component.d.ts.map +1 -0
  1546. package/dist/lib/generated/Entities/ReportCategory/sections/details.component.js +138 -0
  1547. package/dist/lib/generated/Entities/ReportCategory/sections/details.component.js.map +1 -0
  1548. package/dist/lib/generated/Entities/ReportSnapshot/reportsnapshot.form.component.d.ts.map +1 -1
  1549. package/dist/lib/generated/Entities/ReportSnapshot/reportsnapshot.form.component.js +3 -3
  1550. package/dist/lib/generated/Entities/ReportSnapshot/reportsnapshot.form.component.js.map +1 -1
  1551. package/dist/lib/generated/Entities/ReportSnapshot/sections/details.component.d.ts +11 -0
  1552. package/dist/lib/generated/Entities/ReportSnapshot/sections/details.component.d.ts.map +1 -0
  1553. package/dist/lib/generated/Entities/ReportSnapshot/sections/details.component.js +120 -0
  1554. package/dist/lib/generated/Entities/ReportSnapshot/sections/details.component.js.map +1 -0
  1555. package/dist/lib/generated/Entities/ReportUserState/reportuserstate.form.component.d.ts.map +1 -1
  1556. package/dist/lib/generated/Entities/ReportUserState/reportuserstate.form.component.js +3 -3
  1557. package/dist/lib/generated/Entities/ReportUserState/reportuserstate.form.component.js.map +1 -1
  1558. package/dist/lib/generated/Entities/ReportUserState/sections/details.component.d.ts +11 -0
  1559. package/dist/lib/generated/Entities/ReportUserState/sections/details.component.d.ts.map +1 -0
  1560. package/dist/lib/generated/Entities/ReportUserState/sections/details.component.js +120 -0
  1561. package/dist/lib/generated/Entities/ReportUserState/sections/details.component.js.map +1 -0
  1562. package/dist/lib/generated/Entities/ReportVersion/reportversion.form.component.d.ts.map +1 -1
  1563. package/dist/lib/generated/Entities/ReportVersion/reportversion.form.component.js +3 -3
  1564. package/dist/lib/generated/Entities/ReportVersion/reportversion.form.component.js.map +1 -1
  1565. package/dist/lib/generated/Entities/ReportVersion/sections/details.component.d.ts +11 -0
  1566. package/dist/lib/generated/Entities/ReportVersion/sections/details.component.d.ts.map +1 -0
  1567. package/dist/lib/generated/Entities/ReportVersion/sections/details.component.js +136 -0
  1568. package/dist/lib/generated/Entities/ReportVersion/sections/details.component.js.map +1 -0
  1569. package/dist/lib/generated/Entities/ResourceLink/resourcelink.form.component.d.ts.map +1 -1
  1570. package/dist/lib/generated/Entities/ResourceLink/resourcelink.form.component.js +3 -3
  1571. package/dist/lib/generated/Entities/ResourceLink/resourcelink.form.component.js.map +1 -1
  1572. package/dist/lib/generated/Entities/ResourceLink/sections/details.component.d.ts +11 -0
  1573. package/dist/lib/generated/Entities/ResourceLink/sections/details.component.d.ts.map +1 -0
  1574. package/dist/lib/generated/Entities/ResourceLink/sections/details.component.js +129 -0
  1575. package/dist/lib/generated/Entities/ResourceLink/sections/details.component.js.map +1 -0
  1576. package/dist/lib/generated/Entities/ResourcePermission/resourcepermission.form.component.d.ts.map +1 -1
  1577. package/dist/lib/generated/Entities/ResourcePermission/resourcepermission.form.component.js +3 -3
  1578. package/dist/lib/generated/Entities/ResourcePermission/resourcepermission.form.component.js.map +1 -1
  1579. package/dist/lib/generated/Entities/ResourcePermission/sections/details.component.d.ts +11 -0
  1580. package/dist/lib/generated/Entities/ResourcePermission/sections/details.component.d.ts.map +1 -0
  1581. package/dist/lib/generated/Entities/ResourcePermission/sections/details.component.js +185 -0
  1582. package/dist/lib/generated/Entities/ResourcePermission/sections/details.component.js.map +1 -0
  1583. package/dist/lib/generated/Entities/ResourceType/resourcetype.form.component.d.ts.map +1 -1
  1584. package/dist/lib/generated/Entities/ResourceType/resourcetype.form.component.js +29 -30
  1585. package/dist/lib/generated/Entities/ResourceType/resourcetype.form.component.js.map +1 -1
  1586. package/dist/lib/generated/Entities/ResourceType/sections/details.component.d.ts +11 -0
  1587. package/dist/lib/generated/Entities/ResourceType/sections/details.component.d.ts.map +1 -0
  1588. package/dist/lib/generated/Entities/ResourceType/sections/details.component.js +147 -0
  1589. package/dist/lib/generated/Entities/ResourceType/sections/details.component.js.map +1 -0
  1590. package/dist/lib/generated/Entities/Role/role.form.component.d.ts.map +1 -1
  1591. package/dist/lib/generated/Entities/Role/role.form.component.js +59 -42
  1592. package/dist/lib/generated/Entities/Role/role.form.component.js.map +1 -1
  1593. package/dist/lib/generated/Entities/Role/sections/details.component.d.ts +11 -0
  1594. package/dist/lib/generated/Entities/Role/sections/details.component.d.ts.map +1 -0
  1595. package/dist/lib/generated/Entities/Role/sections/details.component.js +107 -0
  1596. package/dist/lib/generated/Entities/Role/sections/details.component.js.map +1 -0
  1597. package/dist/lib/generated/Entities/RowLevelSecurityFilter/rowlevelsecurityfilter.form.component.d.ts.map +1 -1
  1598. package/dist/lib/generated/Entities/RowLevelSecurityFilter/rowlevelsecurityfilter.form.component.js +11 -12
  1599. package/dist/lib/generated/Entities/RowLevelSecurityFilter/rowlevelsecurityfilter.form.component.js.map +1 -1
  1600. package/dist/lib/generated/Entities/RowLevelSecurityFilter/sections/details.component.d.ts +11 -0
  1601. package/dist/lib/generated/Entities/RowLevelSecurityFilter/sections/details.component.d.ts.map +1 -0
  1602. package/dist/lib/generated/Entities/RowLevelSecurityFilter/sections/details.component.js +98 -0
  1603. package/dist/lib/generated/Entities/RowLevelSecurityFilter/sections/details.component.js.map +1 -0
  1604. package/dist/lib/generated/Entities/ScheduledAction/scheduledaction.form.component.d.ts.map +1 -1
  1605. package/dist/lib/generated/Entities/ScheduledAction/scheduledaction.form.component.js +11 -12
  1606. package/dist/lib/generated/Entities/ScheduledAction/scheduledaction.form.component.js.map +1 -1
  1607. package/dist/lib/generated/Entities/ScheduledAction/sections/details.component.d.ts +11 -0
  1608. package/dist/lib/generated/Entities/ScheduledAction/sections/details.component.d.ts.map +1 -0
  1609. package/dist/lib/generated/Entities/ScheduledAction/sections/details.component.js +210 -0
  1610. package/dist/lib/generated/Entities/ScheduledAction/sections/details.component.js.map +1 -0
  1611. package/dist/lib/generated/Entities/ScheduledActionParam/scheduledactionparam.form.component.d.ts.map +1 -1
  1612. package/dist/lib/generated/Entities/ScheduledActionParam/scheduledactionparam.form.component.js +3 -3
  1613. package/dist/lib/generated/Entities/ScheduledActionParam/scheduledactionparam.form.component.js.map +1 -1
  1614. package/dist/lib/generated/Entities/ScheduledActionParam/sections/details.component.d.ts +11 -0
  1615. package/dist/lib/generated/Entities/ScheduledActionParam/sections/details.component.d.ts.map +1 -0
  1616. package/dist/lib/generated/Entities/ScheduledActionParam/sections/details.component.js +138 -0
  1617. package/dist/lib/generated/Entities/ScheduledActionParam/sections/details.component.js.map +1 -0
  1618. package/dist/lib/generated/Entities/ScheduledJob/scheduledjob.form.component.d.ts.map +1 -1
  1619. package/dist/lib/generated/Entities/ScheduledJob/scheduledjob.form.component.js +11 -12
  1620. package/dist/lib/generated/Entities/ScheduledJob/scheduledjob.form.component.js.map +1 -1
  1621. package/dist/lib/generated/Entities/ScheduledJob/sections/details.component.d.ts +11 -0
  1622. package/dist/lib/generated/Entities/ScheduledJob/sections/details.component.d.ts.map +1 -0
  1623. package/dist/lib/generated/Entities/ScheduledJob/sections/details.component.js +329 -0
  1624. package/dist/lib/generated/Entities/ScheduledJob/sections/details.component.js.map +1 -0
  1625. package/dist/lib/generated/Entities/ScheduledJobRun/scheduledjobrun.form.component.d.ts.map +1 -1
  1626. package/dist/lib/generated/Entities/ScheduledJobRun/scheduledjobrun.form.component.js +11 -12
  1627. package/dist/lib/generated/Entities/ScheduledJobRun/scheduledjobrun.form.component.js.map +1 -1
  1628. package/dist/lib/generated/Entities/ScheduledJobRun/sections/details.component.d.ts +11 -0
  1629. package/dist/lib/generated/Entities/ScheduledJobRun/sections/details.component.d.ts.map +1 -0
  1630. package/dist/lib/generated/Entities/ScheduledJobRun/sections/details.component.js +174 -0
  1631. package/dist/lib/generated/Entities/ScheduledJobRun/sections/details.component.js.map +1 -0
  1632. package/dist/lib/generated/Entities/ScheduledJobType/scheduledjobtype.form.component.d.ts.map +1 -1
  1633. package/dist/lib/generated/Entities/ScheduledJobType/scheduledjobtype.form.component.js +11 -12
  1634. package/dist/lib/generated/Entities/ScheduledJobType/scheduledjobtype.form.component.js.map +1 -1
  1635. package/dist/lib/generated/Entities/ScheduledJobType/sections/details.component.d.ts +11 -0
  1636. package/dist/lib/generated/Entities/ScheduledJobType/sections/details.component.d.ts.map +1 -0
  1637. package/dist/lib/generated/Entities/ScheduledJobType/sections/details.component.js +125 -0
  1638. package/dist/lib/generated/Entities/ScheduledJobType/sections/details.component.js.map +1 -0
  1639. package/dist/lib/generated/Entities/SchemaInfo/schemainfo.form.component.d.ts.map +1 -1
  1640. package/dist/lib/generated/Entities/SchemaInfo/schemainfo.form.component.js +3 -3
  1641. package/dist/lib/generated/Entities/SchemaInfo/schemainfo.form.component.js.map +1 -1
  1642. package/dist/lib/generated/Entities/SchemaInfo/sections/details.component.d.ts +11 -0
  1643. package/dist/lib/generated/Entities/SchemaInfo/sections/details.component.d.ts.map +1 -0
  1644. package/dist/lib/generated/Entities/SchemaInfo/sections/details.component.js +107 -0
  1645. package/dist/lib/generated/Entities/SchemaInfo/sections/details.component.js.map +1 -0
  1646. package/dist/lib/generated/Entities/Skill/sections/details.component.d.ts +11 -0
  1647. package/dist/lib/generated/Entities/Skill/sections/details.component.d.ts.map +1 -0
  1648. package/dist/lib/generated/Entities/Skill/sections/details.component.js +109 -0
  1649. package/dist/lib/generated/Entities/Skill/sections/details.component.js.map +1 -0
  1650. package/dist/lib/generated/Entities/Skill/skill.form.component.d.ts.map +1 -1
  1651. package/dist/lib/generated/Entities/Skill/skill.form.component.js +17 -18
  1652. package/dist/lib/generated/Entities/Skill/skill.form.component.js.map +1 -1
  1653. package/dist/lib/generated/Entities/Tag/sections/details.component.d.ts +11 -0
  1654. package/dist/lib/generated/Entities/Tag/sections/details.component.d.ts.map +1 -0
  1655. package/dist/lib/generated/Entities/Tag/sections/details.component.js +127 -0
  1656. package/dist/lib/generated/Entities/Tag/sections/details.component.js.map +1 -0
  1657. package/dist/lib/generated/Entities/Tag/tag.form.component.d.ts.map +1 -1
  1658. package/dist/lib/generated/Entities/Tag/tag.form.component.js +17 -18
  1659. package/dist/lib/generated/Entities/Tag/tag.form.component.js.map +1 -1
  1660. package/dist/lib/generated/Entities/TaggedItem/sections/details.component.d.ts +11 -0
  1661. package/dist/lib/generated/Entities/TaggedItem/sections/details.component.d.ts.map +1 -0
  1662. package/dist/lib/generated/Entities/TaggedItem/sections/details.component.js +120 -0
  1663. package/dist/lib/generated/Entities/TaggedItem/sections/details.component.js.map +1 -0
  1664. package/dist/lib/generated/Entities/TaggedItem/taggeditem.form.component.d.ts.map +1 -1
  1665. package/dist/lib/generated/Entities/TaggedItem/taggeditem.form.component.js +3 -3
  1666. package/dist/lib/generated/Entities/TaggedItem/taggeditem.form.component.js.map +1 -1
  1667. package/dist/lib/generated/Entities/Task/sections/details.component.d.ts +11 -0
  1668. package/dist/lib/generated/Entities/Task/sections/details.component.d.ts.map +1 -0
  1669. package/dist/lib/generated/Entities/Task/sections/details.component.js +274 -0
  1670. package/dist/lib/generated/Entities/Task/sections/details.component.js.map +1 -0
  1671. package/dist/lib/generated/Entities/Task/task.form.component.d.ts.map +1 -1
  1672. package/dist/lib/generated/Entities/Task/task.form.component.js +33 -40
  1673. package/dist/lib/generated/Entities/Task/task.form.component.js.map +1 -1
  1674. package/dist/lib/generated/Entities/TaskDependency/sections/details.component.d.ts +11 -0
  1675. package/dist/lib/generated/Entities/TaskDependency/sections/details.component.d.ts.map +1 -0
  1676. package/dist/lib/generated/Entities/TaskDependency/sections/details.component.js +120 -0
  1677. package/dist/lib/generated/Entities/TaskDependency/sections/details.component.js.map +1 -0
  1678. package/dist/lib/generated/Entities/TaskDependency/taskdependency.form.component.d.ts.map +1 -1
  1679. package/dist/lib/generated/Entities/TaskDependency/taskdependency.form.component.js +3 -3
  1680. package/dist/lib/generated/Entities/TaskDependency/taskdependency.form.component.js.map +1 -1
  1681. package/dist/lib/generated/Entities/TaskType/sections/details.component.d.ts +11 -0
  1682. package/dist/lib/generated/Entities/TaskType/sections/details.component.d.ts.map +1 -0
  1683. package/dist/lib/generated/Entities/TaskType/sections/details.component.js +89 -0
  1684. package/dist/lib/generated/Entities/TaskType/sections/details.component.js.map +1 -0
  1685. package/dist/lib/generated/Entities/TaskType/tasktype.form.component.d.ts.map +1 -1
  1686. package/dist/lib/generated/Entities/TaskType/tasktype.form.component.js +11 -12
  1687. package/dist/lib/generated/Entities/TaskType/tasktype.form.component.js.map +1 -1
  1688. package/dist/lib/generated/Entities/Template/sections/details.component.d.ts +11 -0
  1689. package/dist/lib/generated/Entities/Template/sections/details.component.d.ts.map +1 -0
  1690. package/dist/lib/generated/Entities/Template/sections/details.component.js +165 -0
  1691. package/dist/lib/generated/Entities/Template/sections/details.component.js.map +1 -0
  1692. package/dist/lib/generated/Entities/Template/template.form.component.d.ts.map +1 -1
  1693. package/dist/lib/generated/Entities/Template/template.form.component.js +41 -42
  1694. package/dist/lib/generated/Entities/Template/template.form.component.js.map +1 -1
  1695. package/dist/lib/generated/Entities/TemplateCategory/sections/details.component.d.ts +11 -0
  1696. package/dist/lib/generated/Entities/TemplateCategory/sections/details.component.d.ts.map +1 -0
  1697. package/dist/lib/generated/Entities/TemplateCategory/sections/details.component.js +138 -0
  1698. package/dist/lib/generated/Entities/TemplateCategory/sections/details.component.js.map +1 -0
  1699. package/dist/lib/generated/Entities/TemplateCategory/templatecategory.form.component.d.ts.map +1 -1
  1700. package/dist/lib/generated/Entities/TemplateCategory/templatecategory.form.component.js +17 -18
  1701. package/dist/lib/generated/Entities/TemplateCategory/templatecategory.form.component.js.map +1 -1
  1702. package/dist/lib/generated/Entities/TemplateContent/sections/details.component.d.ts +11 -0
  1703. package/dist/lib/generated/Entities/TemplateContent/sections/details.component.d.ts.map +1 -0
  1704. package/dist/lib/generated/Entities/TemplateContent/sections/details.component.js +138 -0
  1705. package/dist/lib/generated/Entities/TemplateContent/sections/details.component.js.map +1 -0
  1706. package/dist/lib/generated/Entities/TemplateContent/templatecontent.form.component.d.ts.map +1 -1
  1707. package/dist/lib/generated/Entities/TemplateContent/templatecontent.form.component.js +11 -12
  1708. package/dist/lib/generated/Entities/TemplateContent/templatecontent.form.component.js.map +1 -1
  1709. package/dist/lib/generated/Entities/TemplateContentType/sections/details.component.d.ts +11 -0
  1710. package/dist/lib/generated/Entities/TemplateContentType/sections/details.component.d.ts.map +1 -0
  1711. package/dist/lib/generated/Entities/TemplateContentType/sections/details.component.js +98 -0
  1712. package/dist/lib/generated/Entities/TemplateContentType/sections/details.component.js.map +1 -0
  1713. package/dist/lib/generated/Entities/TemplateContentType/templatecontenttype.form.component.d.ts.map +1 -1
  1714. package/dist/lib/generated/Entities/TemplateContentType/templatecontenttype.form.component.js +11 -12
  1715. package/dist/lib/generated/Entities/TemplateContentType/templatecontenttype.form.component.js.map +1 -1
  1716. package/dist/lib/generated/Entities/TemplateParam/sections/details.component.d.ts +11 -0
  1717. package/dist/lib/generated/Entities/TemplateParam/sections/details.component.d.ts.map +1 -0
  1718. package/dist/lib/generated/Entities/TemplateParam/sections/details.component.js +212 -0
  1719. package/dist/lib/generated/Entities/TemplateParam/sections/details.component.js.map +1 -0
  1720. package/dist/lib/generated/Entities/TemplateParam/templateparam.form.component.d.ts.map +1 -1
  1721. package/dist/lib/generated/Entities/TemplateParam/templateparam.form.component.js +12 -18
  1722. package/dist/lib/generated/Entities/TemplateParam/templateparam.form.component.js.map +1 -1
  1723. package/dist/lib/generated/Entities/Test/test.form.component.d.ts.map +1 -1
  1724. package/dist/lib/generated/Entities/Test/test.form.component.js +17 -18
  1725. package/dist/lib/generated/Entities/Test/test.form.component.js.map +1 -1
  1726. package/dist/lib/generated/Entities/TestRubric/testrubric.form.component.d.ts.map +1 -1
  1727. package/dist/lib/generated/Entities/TestRubric/testrubric.form.component.js +3 -3
  1728. package/dist/lib/generated/Entities/TestRubric/testrubric.form.component.js.map +1 -1
  1729. package/dist/lib/generated/Entities/TestRun/testrun.form.component.d.ts.map +1 -1
  1730. package/dist/lib/generated/Entities/TestRun/testrun.form.component.js +35 -36
  1731. package/dist/lib/generated/Entities/TestRun/testrun.form.component.js.map +1 -1
  1732. package/dist/lib/generated/Entities/TestRunFeedback/testrunfeedback.form.component.d.ts.map +1 -1
  1733. package/dist/lib/generated/Entities/TestRunFeedback/testrunfeedback.form.component.js +3 -3
  1734. package/dist/lib/generated/Entities/TestRunFeedback/testrunfeedback.form.component.js.map +1 -1
  1735. package/dist/lib/generated/Entities/TestSuite/testsuite.form.component.d.ts.map +1 -1
  1736. package/dist/lib/generated/Entities/TestSuite/testsuite.form.component.js +23 -24
  1737. package/dist/lib/generated/Entities/TestSuite/testsuite.form.component.js.map +1 -1
  1738. package/dist/lib/generated/Entities/TestSuiteRun/testsuiterun.form.component.d.ts.map +1 -1
  1739. package/dist/lib/generated/Entities/TestSuiteRun/testsuiterun.form.component.js +11 -12
  1740. package/dist/lib/generated/Entities/TestSuiteRun/testsuiterun.form.component.js.map +1 -1
  1741. package/dist/lib/generated/Entities/TestSuiteTest/testsuitetest.form.component.d.ts.map +1 -1
  1742. package/dist/lib/generated/Entities/TestSuiteTest/testsuitetest.form.component.js +3 -3
  1743. package/dist/lib/generated/Entities/TestSuiteTest/testsuitetest.form.component.js.map +1 -1
  1744. package/dist/lib/generated/Entities/TestType/testtype.form.component.d.ts.map +1 -1
  1745. package/dist/lib/generated/Entities/TestType/testtype.form.component.js +17 -18
  1746. package/dist/lib/generated/Entities/TestType/testtype.form.component.js.map +1 -1
  1747. package/dist/lib/generated/Entities/User/sections/details.component.d.ts +11 -0
  1748. package/dist/lib/generated/Entities/User/sections/details.component.d.ts.map +1 -0
  1749. package/dist/lib/generated/Entities/User/sections/details.component.js +247 -0
  1750. package/dist/lib/generated/Entities/User/sections/details.component.js.map +1 -0
  1751. package/dist/lib/generated/Entities/User/user.form.component.d.ts.map +1 -1
  1752. package/dist/lib/generated/Entities/User/user.form.component.js +560 -471
  1753. package/dist/lib/generated/Entities/User/user.form.component.js.map +1 -1
  1754. package/dist/lib/generated/Entities/UserApplication/sections/details.component.d.ts +11 -0
  1755. package/dist/lib/generated/Entities/UserApplication/sections/details.component.d.ts.map +1 -0
  1756. package/dist/lib/generated/Entities/UserApplication/sections/details.component.js +129 -0
  1757. package/dist/lib/generated/Entities/UserApplication/sections/details.component.js.map +1 -0
  1758. package/dist/lib/generated/Entities/UserApplication/userapplication.form.component.d.ts.map +1 -1
  1759. package/dist/lib/generated/Entities/UserApplication/userapplication.form.component.js +11 -12
  1760. package/dist/lib/generated/Entities/UserApplication/userapplication.form.component.js.map +1 -1
  1761. package/dist/lib/generated/Entities/UserApplicationEntity/sections/details.component.d.ts +11 -0
  1762. package/dist/lib/generated/Entities/UserApplicationEntity/sections/details.component.d.ts.map +1 -0
  1763. package/dist/lib/generated/Entities/UserApplicationEntity/sections/details.component.js +129 -0
  1764. package/dist/lib/generated/Entities/UserApplicationEntity/sections/details.component.js.map +1 -0
  1765. package/dist/lib/generated/Entities/UserApplicationEntity/userapplicationentity.form.component.d.ts.map +1 -1
  1766. package/dist/lib/generated/Entities/UserApplicationEntity/userapplicationentity.form.component.js +3 -3
  1767. package/dist/lib/generated/Entities/UserApplicationEntity/userapplicationentity.form.component.js.map +1 -1
  1768. package/dist/lib/generated/Entities/UserFavorite/sections/details.component.d.ts +11 -0
  1769. package/dist/lib/generated/Entities/UserFavorite/sections/details.component.d.ts.map +1 -0
  1770. package/dist/lib/generated/Entities/UserFavorite/sections/details.component.js +129 -0
  1771. package/dist/lib/generated/Entities/UserFavorite/sections/details.component.js.map +1 -0
  1772. package/dist/lib/generated/Entities/UserFavorite/userfavorite.form.component.d.ts.map +1 -1
  1773. package/dist/lib/generated/Entities/UserFavorite/userfavorite.form.component.js +3 -3
  1774. package/dist/lib/generated/Entities/UserFavorite/userfavorite.form.component.js.map +1 -1
  1775. package/dist/lib/generated/Entities/UserNotification/sections/details.component.d.ts +11 -0
  1776. package/dist/lib/generated/Entities/UserNotification/sections/details.component.d.ts.map +1 -0
  1777. package/dist/lib/generated/Entities/UserNotification/sections/details.component.js +165 -0
  1778. package/dist/lib/generated/Entities/UserNotification/sections/details.component.js.map +1 -0
  1779. package/dist/lib/generated/Entities/UserNotification/usernotification.form.component.d.ts.map +1 -1
  1780. package/dist/lib/generated/Entities/UserNotification/usernotification.form.component.js +3 -3
  1781. package/dist/lib/generated/Entities/UserNotification/usernotification.form.component.js.map +1 -1
  1782. package/dist/lib/generated/Entities/UserNotificationPreference/usernotificationpreference.form.component.d.ts.map +1 -1
  1783. package/dist/lib/generated/Entities/UserNotificationPreference/usernotificationpreference.form.component.js +3 -3
  1784. package/dist/lib/generated/Entities/UserNotificationPreference/usernotificationpreference.form.component.js.map +1 -1
  1785. package/dist/lib/generated/Entities/UserNotificationType/usernotificationtype.form.component.d.ts.map +1 -1
  1786. package/dist/lib/generated/Entities/UserNotificationType/usernotificationtype.form.component.js +17 -18
  1787. package/dist/lib/generated/Entities/UserNotificationType/usernotificationtype.form.component.js.map +1 -1
  1788. package/dist/lib/generated/Entities/UserRecordLog/sections/details.component.d.ts +11 -0
  1789. package/dist/lib/generated/Entities/UserRecordLog/sections/details.component.d.ts.map +1 -0
  1790. package/dist/lib/generated/Entities/UserRecordLog/sections/details.component.js +183 -0
  1791. package/dist/lib/generated/Entities/UserRecordLog/sections/details.component.js.map +1 -0
  1792. package/dist/lib/generated/Entities/UserRecordLog/userrecordlog.form.component.d.ts.map +1 -1
  1793. package/dist/lib/generated/Entities/UserRecordLog/userrecordlog.form.component.js +3 -3
  1794. package/dist/lib/generated/Entities/UserRecordLog/userrecordlog.form.component.js.map +1 -1
  1795. package/dist/lib/generated/Entities/UserRole/sections/details.component.d.ts +11 -0
  1796. package/dist/lib/generated/Entities/UserRole/sections/details.component.d.ts.map +1 -0
  1797. package/dist/lib/generated/Entities/UserRole/sections/details.component.js +111 -0
  1798. package/dist/lib/generated/Entities/UserRole/sections/details.component.js.map +1 -0
  1799. package/dist/lib/generated/Entities/UserRole/userrole.form.component.d.ts.map +1 -1
  1800. package/dist/lib/generated/Entities/UserRole/userrole.form.component.js +3 -3
  1801. package/dist/lib/generated/Entities/UserRole/userrole.form.component.js.map +1 -1
  1802. package/dist/lib/generated/Entities/UserSetting/usersetting.form.component.d.ts.map +1 -1
  1803. package/dist/lib/generated/Entities/UserSetting/usersetting.form.component.js +3 -3
  1804. package/dist/lib/generated/Entities/UserSetting/usersetting.form.component.js.map +1 -1
  1805. package/dist/lib/generated/Entities/UserView/sections/details.component.d.ts +11 -0
  1806. package/dist/lib/generated/Entities/UserView/sections/details.component.d.ts.map +1 -0
  1807. package/dist/lib/generated/Entities/UserView/sections/details.component.js +293 -0
  1808. package/dist/lib/generated/Entities/UserView/sections/details.component.js.map +1 -0
  1809. package/dist/lib/generated/Entities/UserView/userview.form.component.d.ts.map +1 -1
  1810. package/dist/lib/generated/Entities/UserView/userview.form.component.js +23 -24
  1811. package/dist/lib/generated/Entities/UserView/userview.form.component.js.map +1 -1
  1812. package/dist/lib/generated/Entities/UserViewCategory/sections/details.component.d.ts +11 -0
  1813. package/dist/lib/generated/Entities/UserViewCategory/sections/details.component.d.ts.map +1 -0
  1814. package/dist/lib/generated/Entities/UserViewCategory/sections/details.component.js +158 -0
  1815. package/dist/lib/generated/Entities/UserViewCategory/sections/details.component.js.map +1 -0
  1816. package/dist/lib/generated/Entities/UserViewCategory/userviewcategory.form.component.d.ts.map +1 -1
  1817. package/dist/lib/generated/Entities/UserViewCategory/userviewcategory.form.component.js +17 -18
  1818. package/dist/lib/generated/Entities/UserViewCategory/userviewcategory.form.component.js.map +1 -1
  1819. package/dist/lib/generated/Entities/UserViewRun/sections/details.component.d.ts +11 -0
  1820. package/dist/lib/generated/Entities/UserViewRun/sections/details.component.d.ts.map +1 -0
  1821. package/dist/lib/generated/Entities/UserViewRun/sections/details.component.js +120 -0
  1822. package/dist/lib/generated/Entities/UserViewRun/sections/details.component.js.map +1 -0
  1823. package/dist/lib/generated/Entities/UserViewRun/userviewrun.form.component.d.ts.map +1 -1
  1824. package/dist/lib/generated/Entities/UserViewRun/userviewrun.form.component.js +11 -12
  1825. package/dist/lib/generated/Entities/UserViewRun/userviewrun.form.component.js.map +1 -1
  1826. package/dist/lib/generated/Entities/UserViewRunDetail/sections/details.component.d.ts +11 -0
  1827. package/dist/lib/generated/Entities/UserViewRunDetail/sections/details.component.d.ts.map +1 -0
  1828. package/dist/lib/generated/Entities/UserViewRunDetail/sections/details.component.js +109 -0
  1829. package/dist/lib/generated/Entities/UserViewRunDetail/sections/details.component.js.map +1 -0
  1830. package/dist/lib/generated/Entities/UserViewRunDetail/userviewrundetail.form.component.d.ts.map +1 -1
  1831. package/dist/lib/generated/Entities/UserViewRunDetail/userviewrundetail.form.component.js +3 -3
  1832. package/dist/lib/generated/Entities/UserViewRunDetail/userviewrundetail.form.component.js.map +1 -1
  1833. package/dist/lib/generated/Entities/VectorDatabase/sections/details.component.d.ts +11 -0
  1834. package/dist/lib/generated/Entities/VectorDatabase/sections/details.component.d.ts.map +1 -0
  1835. package/dist/lib/generated/Entities/VectorDatabase/sections/details.component.js +107 -0
  1836. package/dist/lib/generated/Entities/VectorDatabase/sections/details.component.js.map +1 -0
  1837. package/dist/lib/generated/Entities/VectorDatabase/vectordatabase.form.component.d.ts.map +1 -1
  1838. package/dist/lib/generated/Entities/VectorDatabase/vectordatabase.form.component.js +17 -18
  1839. package/dist/lib/generated/Entities/VectorDatabase/vectordatabase.form.component.js.map +1 -1
  1840. package/dist/lib/generated/Entities/VectorIndex/sections/details.component.d.ts +11 -0
  1841. package/dist/lib/generated/Entities/VectorIndex/sections/details.component.d.ts.map +1 -0
  1842. package/dist/lib/generated/Entities/VectorIndex/sections/details.component.js +129 -0
  1843. package/dist/lib/generated/Entities/VectorIndex/sections/details.component.js.map +1 -0
  1844. package/dist/lib/generated/Entities/VectorIndex/vectorindex.form.component.d.ts.map +1 -1
  1845. package/dist/lib/generated/Entities/VectorIndex/vectorindex.form.component.js +11 -12
  1846. package/dist/lib/generated/Entities/VectorIndex/vectorindex.form.component.js.map +1 -1
  1847. package/dist/lib/generated/Entities/VersionInstallation/sections/details.component.d.ts +11 -0
  1848. package/dist/lib/generated/Entities/VersionInstallation/sections/details.component.d.ts.map +1 -0
  1849. package/dist/lib/generated/Entities/VersionInstallation/sections/details.component.js +152 -0
  1850. package/dist/lib/generated/Entities/VersionInstallation/sections/details.component.js.map +1 -0
  1851. package/dist/lib/generated/Entities/VersionInstallation/versioninstallation.form.component.d.ts.map +1 -1
  1852. package/dist/lib/generated/Entities/VersionInstallation/versioninstallation.form.component.js +3 -3
  1853. package/dist/lib/generated/Entities/VersionInstallation/versioninstallation.form.component.js.map +1 -1
  1854. package/dist/lib/generated/Entities/VersionLabel/versionlabel.form.component.d.ts +11 -0
  1855. package/dist/lib/generated/Entities/VersionLabel/versionlabel.form.component.d.ts.map +1 -0
  1856. package/dist/lib/generated/Entities/VersionLabel/versionlabel.form.component.js +167 -0
  1857. package/dist/lib/generated/Entities/VersionLabel/versionlabel.form.component.js.map +1 -0
  1858. package/dist/lib/generated/Entities/VersionLabelItem/versionlabelitem.form.component.d.ts +11 -0
  1859. package/dist/lib/generated/Entities/VersionLabelItem/versionlabelitem.form.component.d.ts.map +1 -0
  1860. package/dist/lib/generated/Entities/VersionLabelItem/versionlabelitem.form.component.js +73 -0
  1861. package/dist/lib/generated/Entities/VersionLabelItem/versionlabelitem.form.component.js.map +1 -0
  1862. package/dist/lib/generated/Entities/VersionLabelRestore/versionlabelrestore.form.component.d.ts +11 -0
  1863. package/dist/lib/generated/Entities/VersionLabelRestore/versionlabelrestore.form.component.d.ts.map +1 -0
  1864. package/dist/lib/generated/Entities/VersionLabelRestore/versionlabelrestore.form.component.js +85 -0
  1865. package/dist/lib/generated/Entities/VersionLabelRestore/versionlabelrestore.form.component.js.map +1 -0
  1866. package/dist/lib/generated/Entities/Workflow/sections/details.component.d.ts +11 -0
  1867. package/dist/lib/generated/Entities/Workflow/sections/details.component.d.ts.map +1 -0
  1868. package/dist/lib/generated/Entities/Workflow/sections/details.component.js +154 -0
  1869. package/dist/lib/generated/Entities/Workflow/sections/details.component.js.map +1 -0
  1870. package/dist/lib/generated/Entities/Workflow/workflow.form.component.d.ts.map +1 -1
  1871. package/dist/lib/generated/Entities/Workflow/workflow.form.component.js +17 -18
  1872. package/dist/lib/generated/Entities/Workflow/workflow.form.component.js.map +1 -1
  1873. package/dist/lib/generated/Entities/WorkflowEngine/sections/details.component.d.ts +11 -0
  1874. package/dist/lib/generated/Entities/WorkflowEngine/sections/details.component.d.ts.map +1 -0
  1875. package/dist/lib/generated/Entities/WorkflowEngine/sections/details.component.js +107 -0
  1876. package/dist/lib/generated/Entities/WorkflowEngine/sections/details.component.js.map +1 -0
  1877. package/dist/lib/generated/Entities/WorkflowEngine/workflowengine.form.component.d.ts.map +1 -1
  1878. package/dist/lib/generated/Entities/WorkflowEngine/workflowengine.form.component.js +11 -12
  1879. package/dist/lib/generated/Entities/WorkflowEngine/workflowengine.form.component.js.map +1 -1
  1880. package/dist/lib/generated/Entities/WorkflowRun/sections/details.component.d.ts +11 -0
  1881. package/dist/lib/generated/Entities/WorkflowRun/sections/details.component.d.ts.map +1 -0
  1882. package/dist/lib/generated/Entities/WorkflowRun/sections/details.component.js +145 -0
  1883. package/dist/lib/generated/Entities/WorkflowRun/sections/details.component.js.map +1 -0
  1884. package/dist/lib/generated/Entities/WorkflowRun/workflowrun.form.component.d.ts.map +1 -1
  1885. package/dist/lib/generated/Entities/WorkflowRun/workflowrun.form.component.js +3 -3
  1886. package/dist/lib/generated/Entities/WorkflowRun/workflowrun.form.component.js.map +1 -1
  1887. package/dist/lib/generated/Entities/Workspace/sections/details.component.d.ts +11 -0
  1888. package/dist/lib/generated/Entities/Workspace/sections/details.component.d.ts.map +1 -0
  1889. package/dist/lib/generated/Entities/Workspace/sections/details.component.js +109 -0
  1890. package/dist/lib/generated/Entities/Workspace/sections/details.component.js.map +1 -0
  1891. package/dist/lib/generated/Entities/Workspace/workspace.form.component.d.ts.map +1 -1
  1892. package/dist/lib/generated/Entities/Workspace/workspace.form.component.js +11 -12
  1893. package/dist/lib/generated/Entities/Workspace/workspace.form.component.js.map +1 -1
  1894. package/dist/lib/generated/Entities/WorkspaceItem/sections/details.component.d.ts +11 -0
  1895. package/dist/lib/generated/Entities/WorkspaceItem/sections/details.component.d.ts.map +1 -0
  1896. package/dist/lib/generated/Entities/WorkspaceItem/sections/details.component.js +156 -0
  1897. package/dist/lib/generated/Entities/WorkspaceItem/sections/details.component.js.map +1 -0
  1898. package/dist/lib/generated/Entities/WorkspaceItem/workspaceitem.form.component.d.ts.map +1 -1
  1899. package/dist/lib/generated/Entities/WorkspaceItem/workspaceitem.form.component.js +3 -3
  1900. package/dist/lib/generated/Entities/WorkspaceItem/workspaceitem.form.component.js.map +1 -1
  1901. package/dist/lib/generated/Entities/flyway_schema_history/flyway_schema_history.form.component.d.ts +11 -0
  1902. package/dist/lib/generated/Entities/flyway_schema_history/flyway_schema_history.form.component.d.ts.map +1 -0
  1903. package/dist/lib/generated/Entities/flyway_schema_history/flyway_schema_history.form.component.js +67 -0
  1904. package/dist/lib/generated/Entities/flyway_schema_history/flyway_schema_history.form.component.js.map +1 -0
  1905. package/dist/lib/generated/generated-forms.module.d.ts +104 -86
  1906. package/dist/lib/generated/generated-forms.module.d.ts.map +1 -1
  1907. package/dist/lib/generated/generated-forms.module.js +188 -79
  1908. package/dist/lib/generated/generated-forms.module.js.map +1 -1
  1909. package/dist/lib/shared/components/template-editor.component.d.ts.map +1 -1
  1910. package/dist/lib/shared/components/template-editor.component.js +167 -164
  1911. package/dist/lib/shared/components/template-editor.component.js.map +1 -1
  1912. package/dist/public-api.d.ts +0 -1
  1913. package/dist/public-api.d.ts.map +1 -1
  1914. package/dist/public-api.js +2 -1
  1915. package/dist/public-api.js.map +1 -1
  1916. package/package.json +54 -52
@@ -19,18 +19,19 @@ import * as i0 from "@angular/core";
19
19
  import * as i1 from "@memberjunction/ng-shared";
20
20
  import * as i2 from "@angular/router";
21
21
  import * as i3 from "@memberjunction/ng-testing";
22
- import * as i4 from "@angular/common";
23
- import * as i5 from "@angular/forms";
24
- import * as i6 from "@progress/kendo-angular-dialog";
25
- import * as i7 from "@progress/kendo-angular-buttons";
26
- import * as i8 from "@memberjunction/ng-code-editor";
27
- import * as i9 from "@memberjunction/ng-shared-generic";
28
- import * as i10 from "./entity-link-pill.component";
22
+ import * as i4 from "@memberjunction/ng-base-application";
23
+ import * as i5 from "@angular/common";
24
+ import * as i6 from "@angular/forms";
25
+ import * as i7 from "@progress/kendo-angular-dialog";
26
+ import * as i8 from "@progress/kendo-angular-buttons";
27
+ import * as i9 from "@memberjunction/ng-code-editor";
28
+ import * as i10 from "@memberjunction/ng-shared-generic";
29
+ import * as i11 from "./entity-link-pill.component";
29
30
  const _c0 = () => [1, 2, 3, 4, 5];
30
31
  const _c1 = () => [1, 2, 3];
31
- function TestFormComponentExtended_span_13_Template(rf, ctx) { if (rf & 1) {
32
- i0.ɵɵelementStart(0, "span", 35);
33
- i0.ɵɵelement(1, "i", 36);
32
+ function TestFormComponentExtended_Conditional_25_Template(rf, ctx) { if (rf & 1) {
33
+ i0.ɵɵelementStart(0, "span", 16);
34
+ i0.ɵɵelement(1, "i", 41);
34
35
  i0.ɵɵtext(2);
35
36
  i0.ɵɵelementEnd();
36
37
  } if (rf & 2) {
@@ -38,8 +39,8 @@ function TestFormComponentExtended_span_13_Template(rf, ctx) { if (rf & 1) {
38
39
  i0.ɵɵadvance(2);
39
40
  i0.ɵɵtextInterpolate1(" ", ctx_r0.record.Type, " ");
40
41
  } }
41
- function TestFormComponentExtended_div_22_Template(rf, ctx) { if (rf & 1) {
42
- i0.ɵɵelementStart(0, "div", 37)(1, "p");
42
+ function TestFormComponentExtended_Conditional_34_Template(rf, ctx) { if (rf & 1) {
43
+ i0.ɵɵelementStart(0, "div", 21)(1, "p");
43
44
  i0.ɵɵtext(2);
44
45
  i0.ɵɵelementEnd()();
45
46
  } if (rf & 2) {
@@ -47,32 +48,32 @@ function TestFormComponentExtended_div_22_Template(rf, ctx) { if (rf & 1) {
47
48
  i0.ɵɵadvance(2);
48
49
  i0.ɵɵtextInterpolate(ctx_r0.record.Description);
49
50
  } }
50
- function TestFormComponentExtended_div_23_Template(rf, ctx) { if (rf & 1) {
51
- i0.ɵɵelementStart(0, "div", 38)(1, "div", 39)(2, "div", 40);
51
+ function TestFormComponentExtended_Conditional_35_Template(rf, ctx) { if (rf & 1) {
52
+ i0.ɵɵelementStart(0, "div", 22)(1, "div", 42)(2, "div", 43);
52
53
  i0.ɵɵtext(3, "Total Runs");
53
54
  i0.ɵɵelementEnd();
54
- i0.ɵɵelementStart(4, "div", 41);
55
+ i0.ɵɵelementStart(4, "div", 44);
55
56
  i0.ɵɵtext(5);
56
57
  i0.ɵɵelementEnd()();
57
- i0.ɵɵelementStart(6, "div", 39)(7, "div", 40);
58
+ i0.ɵɵelementStart(6, "div", 42)(7, "div", 43);
58
59
  i0.ɵɵtext(8, "Pass Rate");
59
60
  i0.ɵɵelementEnd();
60
- i0.ɵɵelementStart(9, "div", 41);
61
+ i0.ɵɵelementStart(9, "div", 44);
61
62
  i0.ɵɵtext(10);
62
63
  i0.ɵɵelementEnd();
63
- i0.ɵɵelementStart(11, "div", 42);
64
- i0.ɵɵelement(12, "div", 43);
64
+ i0.ɵɵelementStart(11, "div", 45);
65
+ i0.ɵɵelement(12, "div", 46);
65
66
  i0.ɵɵelementEnd()();
66
- i0.ɵɵelementStart(13, "div", 39)(14, "div", 40);
67
+ i0.ɵɵelementStart(13, "div", 42)(14, "div", 43);
67
68
  i0.ɵɵtext(15, "Avg Cost");
68
69
  i0.ɵɵelementEnd();
69
- i0.ɵɵelementStart(16, "div", 41);
70
+ i0.ɵɵelementStart(16, "div", 44);
70
71
  i0.ɵɵtext(17);
71
72
  i0.ɵɵelementEnd()();
72
- i0.ɵɵelementStart(18, "div", 39)(19, "div", 40);
73
+ i0.ɵɵelementStart(18, "div", 42)(19, "div", 43);
73
74
  i0.ɵɵtext(20, "Avg Duration");
74
75
  i0.ɵɵelementEnd();
75
- i0.ɵɵelementStart(21, "div", 41);
76
+ i0.ɵɵelementStart(21, "div", 44);
76
77
  i0.ɵɵtext(22);
77
78
  i0.ɵɵelementEnd()()();
78
79
  } if (rf & 2) {
@@ -88,8 +89,8 @@ function TestFormComponentExtended_div_23_Template(rf, ctx) { if (rf & 1) {
88
89
  i0.ɵɵadvance(5);
89
90
  i0.ɵɵtextInterpolate(ctx_r0.formatDuration(ctx_r0.getAverageDuration()));
90
91
  } }
91
- function TestFormComponentExtended_span_38_Template(rf, ctx) { if (rf & 1) {
92
- i0.ɵɵelementStart(0, "span", 44);
92
+ function TestFormComponentExtended_Conditional_50_Template(rf, ctx) { if (rf & 1) {
93
+ i0.ɵɵelementStart(0, "span", 29);
93
94
  i0.ɵɵtext(1);
94
95
  i0.ɵɵelementEnd();
95
96
  } if (rf & 2) {
@@ -97,8 +98,8 @@ function TestFormComponentExtended_span_38_Template(rf, ctx) { if (rf & 1) {
97
98
  i0.ɵɵadvance();
98
99
  i0.ɵɵtextInterpolate(ctx_r0.testRuns.length);
99
100
  } }
100
- function TestFormComponentExtended_span_43_Template(rf, ctx) { if (rf & 1) {
101
- i0.ɵɵelementStart(0, "span", 44);
101
+ function TestFormComponentExtended_Conditional_55_Template(rf, ctx) { if (rf & 1) {
102
+ i0.ɵɵelementStart(0, "span", 29);
102
103
  i0.ɵɵtext(1);
103
104
  i0.ɵɵelementEnd();
104
105
  } if (rf & 2) {
@@ -106,100 +107,100 @@ function TestFormComponentExtended_span_43_Template(rf, ctx) { if (rf & 1) {
106
107
  i0.ɵɵadvance();
107
108
  i0.ɵɵtextInterpolate(ctx_r0.suiteTests.length);
108
109
  } }
109
- function TestFormComponentExtended_div_49_Template(rf, ctx) { if (rf & 1) {
110
+ function TestFormComponentExtended_Conditional_61_Template(rf, ctx) { if (rf & 1) {
110
111
  const _r2 = i0.ɵɵgetCurrentView();
111
- i0.ɵɵelementStart(0, "div", 45)(1, "div", 46)(2, "h3");
112
- i0.ɵɵelement(3, "i", 47);
112
+ i0.ɵɵelementStart(0, "div", 33)(1, "div", 47)(2, "h3");
113
+ i0.ɵɵelement(3, "i", 48);
113
114
  i0.ɵɵtext(4, " Test Information");
114
115
  i0.ɵɵelementEnd();
115
- i0.ɵɵelementStart(5, "div", 48)(6, "div", 49)(7, "div", 50);
116
+ i0.ɵɵelementStart(5, "div", 49)(6, "div", 50)(7, "div", 51);
116
117
  i0.ɵɵtext(8, "Name");
117
118
  i0.ɵɵelementEnd();
118
- i0.ɵɵelementStart(9, "div", 51);
119
+ i0.ɵɵelementStart(9, "div", 52);
119
120
  i0.ɵɵtext(10);
120
121
  i0.ɵɵelementEnd()();
121
- i0.ɵɵelementStart(11, "div", 49)(12, "div", 50);
122
+ i0.ɵɵelementStart(11, "div", 50)(12, "div", 51);
122
123
  i0.ɵɵtext(13, "Type");
123
124
  i0.ɵɵelementEnd();
124
- i0.ɵɵelementStart(14, "div", 51);
125
+ i0.ɵɵelementStart(14, "div", 52);
125
126
  i0.ɵɵtext(15);
126
127
  i0.ɵɵelementEnd()();
127
- i0.ɵɵelementStart(16, "div", 49)(17, "div", 50);
128
+ i0.ɵɵelementStart(16, "div", 50)(17, "div", 51);
128
129
  i0.ɵɵtext(18, "Status");
129
130
  i0.ɵɵelementEnd();
130
- i0.ɵɵelementStart(19, "div", 51)(20, "span", 52);
131
+ i0.ɵɵelementStart(19, "div", 52)(20, "span", 53);
131
132
  i0.ɵɵtext(21);
132
133
  i0.ɵɵelementEnd()()();
133
- i0.ɵɵelementStart(22, "div", 49)(23, "div", 50);
134
+ i0.ɵɵelementStart(22, "div", 50)(23, "div", 51);
134
135
  i0.ɵɵtext(24, "Priority");
135
136
  i0.ɵɵelementEnd();
136
- i0.ɵɵelementStart(25, "div", 51);
137
+ i0.ɵɵelementStart(25, "div", 52);
137
138
  i0.ɵɵtext(26);
138
139
  i0.ɵɵelementEnd()();
139
- i0.ɵɵelementStart(27, "div", 49)(28, "div", 50);
140
+ i0.ɵɵelementStart(27, "div", 50)(28, "div", 51);
140
141
  i0.ɵɵtext(29, "Estimated Duration");
141
142
  i0.ɵɵelementEnd();
142
- i0.ɵɵelementStart(30, "div", 51);
143
+ i0.ɵɵelementStart(30, "div", 52);
143
144
  i0.ɵɵtext(31);
144
145
  i0.ɵɵelementEnd()();
145
- i0.ɵɵelementStart(32, "div", 49)(33, "div", 50);
146
+ i0.ɵɵelementStart(32, "div", 50)(33, "div", 51);
146
147
  i0.ɵɵtext(34, "Estimated Cost");
147
148
  i0.ɵɵelementEnd();
148
- i0.ɵɵelementStart(35, "div", 51);
149
+ i0.ɵɵelementStart(35, "div", 52);
149
150
  i0.ɵɵtext(36);
150
151
  i0.ɵɵelementEnd()();
151
- i0.ɵɵelementStart(37, "div", 49)(38, "div", 50);
152
+ i0.ɵɵelementStart(37, "div", 50)(38, "div", 51);
152
153
  i0.ɵɵtext(39, "Repeat Count");
153
154
  i0.ɵɵelementEnd();
154
- i0.ɵɵelementStart(40, "div", 51);
155
+ i0.ɵɵelementStart(40, "div", 52);
155
156
  i0.ɵɵtext(41);
156
157
  i0.ɵɵelementEnd()();
157
- i0.ɵɵelementStart(42, "div", 49)(43, "div", 50);
158
+ i0.ɵɵelementStart(42, "div", 50)(43, "div", 51);
158
159
  i0.ɵɵtext(44, "Max Execution Time");
159
160
  i0.ɵɵelementEnd();
160
- i0.ɵɵelementStart(45, "div", 51);
161
+ i0.ɵɵelementStart(45, "div", 52);
161
162
  i0.ɵɵtext(46);
162
163
  i0.ɵɵelementEnd()();
163
- i0.ɵɵelementStart(47, "div", 49)(48, "div", 50);
164
+ i0.ɵɵelementStart(47, "div", 50)(48, "div", 51);
164
165
  i0.ɵɵtext(49, "Created");
165
166
  i0.ɵɵelementEnd();
166
- i0.ɵɵelementStart(50, "div", 51);
167
+ i0.ɵɵelementStart(50, "div", 52);
167
168
  i0.ɵɵtext(51);
168
169
  i0.ɵɵpipe(52, "date");
169
170
  i0.ɵɵelementEnd()();
170
- i0.ɵɵelementStart(53, "div", 49)(54, "div", 50);
171
+ i0.ɵɵelementStart(53, "div", 50)(54, "div", 51);
171
172
  i0.ɵɵtext(55, "Updated");
172
173
  i0.ɵɵelementEnd();
173
- i0.ɵɵelementStart(56, "div", 51);
174
+ i0.ɵɵelementStart(56, "div", 52);
174
175
  i0.ɵɵtext(57);
175
176
  i0.ɵɵpipe(58, "date");
176
177
  i0.ɵɵelementEnd()()()();
177
- i0.ɵɵelementStart(59, "div", 53)(60, "h3");
178
- i0.ɵɵelement(61, "i", 54);
178
+ i0.ɵɵelementStart(59, "div", 54)(60, "h3");
179
+ i0.ɵɵelement(61, "i", 55);
179
180
  i0.ɵɵtext(62, " Test Definition");
180
181
  i0.ɵɵelementEnd();
181
- i0.ɵɵelementStart(63, "div", 55)(64, "button", 56);
182
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_49_Template_button_click_64_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.setJsonView("input")); });
183
- i0.ɵɵelement(65, "i", 57);
182
+ i0.ɵɵelementStart(63, "div", 56)(64, "button", 57);
183
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_61_Template_button_click_64_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.setJsonView("input")); });
184
+ i0.ɵɵelement(65, "i", 58);
184
185
  i0.ɵɵtext(66, " Input Definition ");
185
186
  i0.ɵɵelementEnd();
186
- i0.ɵɵelementStart(67, "button", 56);
187
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_49_Template_button_click_67_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.setJsonView("expected")); });
188
- i0.ɵɵelement(68, "i", 58);
187
+ i0.ɵɵelementStart(67, "button", 57);
188
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_61_Template_button_click_67_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.setJsonView("expected")); });
189
+ i0.ɵɵelement(68, "i", 59);
189
190
  i0.ɵɵtext(69, " Expected Outcomes ");
190
191
  i0.ɵɵelementEnd();
191
- i0.ɵɵelementStart(70, "button", 56);
192
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_49_Template_button_click_70_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.setJsonView("config")); });
193
- i0.ɵɵelement(71, "i", 59);
192
+ i0.ɵɵelementStart(70, "button", 57);
193
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_61_Template_button_click_70_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.setJsonView("config")); });
194
+ i0.ɵɵelement(71, "i", 60);
194
195
  i0.ɵɵtext(72, " Configuration ");
195
196
  i0.ɵɵelementEnd();
196
- i0.ɵɵelementStart(73, "button", 56);
197
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_49_Template_button_click_73_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.setJsonView("tags")); });
198
- i0.ɵɵelement(74, "i", 60);
197
+ i0.ɵɵelementStart(73, "button", 57);
198
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_61_Template_button_click_73_listener() { i0.ɵɵrestoreView(_r2); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.setJsonView("tags")); });
199
+ i0.ɵɵelement(74, "i", 61);
199
200
  i0.ɵɵtext(75, " Tags ");
200
201
  i0.ɵɵelementEnd()();
201
- i0.ɵɵelementStart(76, "div", 61);
202
- i0.ɵɵelement(77, "mj-code-editor", 62);
202
+ i0.ɵɵelementStart(76, "div", 62);
203
+ i0.ɵɵelement(77, "mj-code-editor", 63);
203
204
  i0.ɵɵelementEnd()()();
204
205
  } if (rf & 2) {
205
206
  const ctx_r0 = i0.ɵɵnextContext();
@@ -236,9 +237,9 @@ function TestFormComponentExtended_div_49_Template(rf, ctx) { if (rf & 1) {
236
237
  i0.ɵɵadvance(4);
237
238
  i0.ɵɵproperty("value", ctx_r0.getJsonData())("readonly", true)("toolbar", ctx_r0.jsonToolbar)("lineWrapping", true);
238
239
  } }
239
- function TestFormComponentExtended_div_50_Template(rf, ctx) { if (rf & 1) {
240
+ function TestFormComponentExtended_Conditional_62_Template(rf, ctx) { if (rf & 1) {
240
241
  const _r3 = i0.ɵɵgetCurrentView();
241
- i0.ɵɵelementStart(0, "div", 63)(1, "div", 64)(2, "h3");
242
+ i0.ɵɵelementStart(0, "div", 34)(1, "div", 64)(2, "h3");
242
243
  i0.ɵɵelement(3, "i", 65);
243
244
  i0.ɵɵtext(4, " Execution Settings");
244
245
  i0.ɵɵelementEnd();
@@ -246,62 +247,62 @@ function TestFormComponentExtended_div_50_Template(rf, ctx) { if (rf & 1) {
246
247
  i0.ɵɵtext(8, "Priority");
247
248
  i0.ɵɵelementEnd();
248
249
  i0.ɵɵelementStart(9, "input", 68);
249
- i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_div_50_Template_input_ngModelChange_9_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.Priority, $event) || (ctx_r0.record.Priority = $event); return i0.ɵɵresetView($event); });
250
+ i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_Conditional_62_Template_input_ngModelChange_9_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.Priority, $event) || (ctx_r0.record.Priority = $event); return i0.ɵɵresetView($event); });
250
251
  i0.ɵɵelementEnd()();
251
252
  i0.ɵɵelementStart(10, "div", 67)(11, "label");
252
253
  i0.ɵɵtext(12, "Repeat Count");
253
254
  i0.ɵɵelementEnd();
254
255
  i0.ɵɵelementStart(13, "input", 69);
255
- i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_div_50_Template_input_ngModelChange_13_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.RepeatCount, $event) || (ctx_r0.record.RepeatCount = $event); return i0.ɵɵresetView($event); });
256
+ i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_Conditional_62_Template_input_ngModelChange_13_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.RepeatCount, $event) || (ctx_r0.record.RepeatCount = $event); return i0.ɵɵresetView($event); });
256
257
  i0.ɵɵelementEnd()();
257
258
  i0.ɵɵelementStart(14, "div", 67)(15, "label");
258
259
  i0.ɵɵtext(16, "Estimated Duration (seconds)");
259
260
  i0.ɵɵelementEnd();
260
261
  i0.ɵɵelementStart(17, "input", 70);
261
- i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_div_50_Template_input_ngModelChange_17_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.EstimatedDurationSeconds, $event) || (ctx_r0.record.EstimatedDurationSeconds = $event); return i0.ɵɵresetView($event); });
262
+ i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_Conditional_62_Template_input_ngModelChange_17_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.EstimatedDurationSeconds, $event) || (ctx_r0.record.EstimatedDurationSeconds = $event); return i0.ɵɵresetView($event); });
262
263
  i0.ɵɵelementEnd()();
263
264
  i0.ɵɵelementStart(18, "div", 67)(19, "label");
264
265
  i0.ɵɵtext(20, "Estimated Cost (USD)");
265
266
  i0.ɵɵelementEnd();
266
267
  i0.ɵɵelementStart(21, "input", 71);
267
- i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_div_50_Template_input_ngModelChange_21_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.EstimatedCostUSD, $event) || (ctx_r0.record.EstimatedCostUSD = $event); return i0.ɵɵresetView($event); });
268
+ i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_Conditional_62_Template_input_ngModelChange_21_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.EstimatedCostUSD, $event) || (ctx_r0.record.EstimatedCostUSD = $event); return i0.ɵɵresetView($event); });
268
269
  i0.ɵɵelementEnd()();
269
270
  i0.ɵɵelementStart(22, "div", 72)(23, "label");
270
271
  i0.ɵɵtext(24, "Max Execution Time (ms)");
271
272
  i0.ɵɵelementEnd();
272
273
  i0.ɵɵelementStart(25, "input", 73);
273
- i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_div_50_Template_input_ngModelChange_25_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.MaxExecutionTimeMS, $event) || (ctx_r0.record.MaxExecutionTimeMS = $event); return i0.ɵɵresetView($event); });
274
+ i0.ɵɵtwoWayListener("ngModelChange", function TestFormComponentExtended_Conditional_62_Template_input_ngModelChange_25_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r0.record.MaxExecutionTimeMS, $event) || (ctx_r0.record.MaxExecutionTimeMS = $event); return i0.ɵɵresetView($event); });
274
275
  i0.ɵɵelementEnd();
275
276
  i0.ɵɵelementStart(26, "span", 74);
276
277
  i0.ɵɵtext(27, "Leave empty for default 5 minute timeout");
277
278
  i0.ɵɵelementEnd()()()();
278
279
  i0.ɵɵelementStart(28, "div", 64)(29, "h3");
279
- i0.ɵɵelement(30, "i", 57);
280
+ i0.ɵɵelement(30, "i", 58);
280
281
  i0.ɵɵtext(31, " Input Definition (JSON)");
281
282
  i0.ɵɵelementEnd();
282
283
  i0.ɵɵelementStart(32, "div", 75)(33, "mj-code-editor", 76);
283
- i0.ɵɵlistener("change", function TestFormComponentExtended_div_50_Template_mj_code_editor_change_33_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.record.InputDefinition = $event); });
284
+ i0.ɵɵlistener("change", function TestFormComponentExtended_Conditional_62_Template_mj_code_editor_change_33_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.record.InputDefinition = $event); });
284
285
  i0.ɵɵelementEnd()()();
285
286
  i0.ɵɵelementStart(34, "div", 64)(35, "h3");
286
- i0.ɵɵelement(36, "i", 58);
287
+ i0.ɵɵelement(36, "i", 59);
287
288
  i0.ɵɵtext(37, " Expected Outcomes (JSON)");
288
289
  i0.ɵɵelementEnd();
289
290
  i0.ɵɵelementStart(38, "div", 75)(39, "mj-code-editor", 76);
290
- i0.ɵɵlistener("change", function TestFormComponentExtended_div_50_Template_mj_code_editor_change_39_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.record.ExpectedOutcomes = $event); });
291
+ i0.ɵɵlistener("change", function TestFormComponentExtended_Conditional_62_Template_mj_code_editor_change_39_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.record.ExpectedOutcomes = $event); });
291
292
  i0.ɵɵelementEnd()()();
292
293
  i0.ɵɵelementStart(40, "div", 64)(41, "h3");
293
- i0.ɵɵelement(42, "i", 59);
294
+ i0.ɵɵelement(42, "i", 60);
294
295
  i0.ɵɵtext(43, " Configuration (JSON)");
295
296
  i0.ɵɵelementEnd();
296
297
  i0.ɵɵelementStart(44, "div", 75)(45, "mj-code-editor", 76);
297
- i0.ɵɵlistener("change", function TestFormComponentExtended_div_50_Template_mj_code_editor_change_45_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.record.Configuration = $event); });
298
+ i0.ɵɵlistener("change", function TestFormComponentExtended_Conditional_62_Template_mj_code_editor_change_45_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.record.Configuration = $event); });
298
299
  i0.ɵɵelementEnd()()();
299
300
  i0.ɵɵelementStart(46, "div", 64)(47, "h3");
300
- i0.ɵɵelement(48, "i", 60);
301
+ i0.ɵɵelement(48, "i", 61);
301
302
  i0.ɵɵtext(49, " Tags (JSON Array)");
302
303
  i0.ɵɵelementEnd();
303
304
  i0.ɵɵelementStart(50, "div", 77)(51, "mj-code-editor", 76);
304
- i0.ɵɵlistener("change", function TestFormComponentExtended_div_50_Template_mj_code_editor_change_51_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.record.Tags = $event); });
305
+ i0.ɵɵlistener("change", function TestFormComponentExtended_Conditional_62_Template_mj_code_editor_change_51_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.record.Tags = $event); });
305
306
  i0.ɵɵelementEnd()()()();
306
307
  } if (rf & 2) {
307
308
  const ctx_r0 = i0.ɵɵnextContext();
@@ -324,52 +325,52 @@ function TestFormComponentExtended_div_50_Template(rf, ctx) { if (rf & 1) {
324
325
  i0.ɵɵadvance(6);
325
326
  i0.ɵɵproperty("value", ctx_r0.record.Tags || "[]")("readonly", false)("lineWrapping", true);
326
327
  } }
327
- function TestFormComponentExtended_div_51_div_1_div_2_Template(rf, ctx) { if (rf & 1) {
328
- i0.ɵɵelementStart(0, "div", 85);
329
- i0.ɵɵelement(1, "div", 86);
330
- i0.ɵɵelementStart(2, "div", 87);
331
- i0.ɵɵelement(3, "div", 88)(4, "div", 89);
328
+ function TestFormComponentExtended_Conditional_63_Conditional_1_For_3_Template(rf, ctx) { if (rf & 1) {
329
+ i0.ɵɵelementStart(0, "div", 82);
330
+ i0.ɵɵelement(1, "div", 83);
331
+ i0.ɵɵelementStart(2, "div", 84);
332
+ i0.ɵɵelement(3, "div", 85)(4, "div", 86);
332
333
  i0.ɵɵelementEnd()();
333
334
  } }
334
- function TestFormComponentExtended_div_51_div_1_Template(rf, ctx) { if (rf & 1) {
335
- i0.ɵɵelementStart(0, "div", 82)(1, "div", 83);
336
- i0.ɵɵtemplate(2, TestFormComponentExtended_div_51_div_1_div_2_Template, 5, 0, "div", 84);
335
+ function TestFormComponentExtended_Conditional_63_Conditional_1_Template(rf, ctx) { if (rf & 1) {
336
+ i0.ɵɵelementStart(0, "div", 78)(1, "div", 81);
337
+ i0.ɵɵrepeaterCreate(2, TestFormComponentExtended_Conditional_63_Conditional_1_For_3_Template, 5, 0, "div", 82, i0.ɵɵrepeaterTrackByIdentity);
337
338
  i0.ɵɵelementEnd()();
338
339
  } if (rf & 2) {
339
340
  i0.ɵɵadvance(2);
340
- i0.ɵɵproperty("ngForOf", i0.ɵɵpureFunction0(1, _c0));
341
+ i0.ɵɵrepeater(i0.ɵɵpureFunction0(0, _c0));
341
342
  } }
342
- function TestFormComponentExtended_div_51_div_2_div_1_span_13_Template(rf, ctx) { if (rf & 1) {
343
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_13_Template(rf, ctx) { if (rf & 1) {
343
344
  i0.ɵɵelementStart(0, "span");
344
- i0.ɵɵelement(1, "i", 107);
345
+ i0.ɵɵelement(1, "i", 102);
345
346
  i0.ɵɵtext(2);
346
347
  i0.ɵɵelementEnd();
347
348
  } if (rf & 2) {
348
349
  const run_r5 = i0.ɵɵnextContext().$implicit;
349
350
  const ctx_r0 = i0.ɵɵnextContext(3);
350
351
  i0.ɵɵadvance(2);
351
- i0.ɵɵtextInterpolate1(" ", ctx_r0.formatDuration(run_r5.DurationSeconds), "");
352
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.formatDuration(run_r5.DurationSeconds));
352
353
  } }
353
- function TestFormComponentExtended_div_51_div_2_div_1_span_14_Template(rf, ctx) { if (rf & 1) {
354
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_14_Template(rf, ctx) { if (rf & 1) {
354
355
  i0.ɵɵelementStart(0, "span");
355
- i0.ɵɵelement(1, "i", 108);
356
+ i0.ɵɵelement(1, "i", 103);
356
357
  i0.ɵɵtext(2);
357
358
  i0.ɵɵelementEnd();
358
359
  } if (rf & 2) {
359
360
  const run_r5 = i0.ɵɵnextContext().$implicit;
360
361
  const ctx_r0 = i0.ɵɵnextContext(3);
361
362
  i0.ɵɵadvance(2);
362
- i0.ɵɵtextInterpolate1(" ", ctx_r0.formatCost(run_r5.CostUSD), "");
363
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.formatCost(run_r5.CostUSD));
363
364
  } }
364
- function TestFormComponentExtended_div_51_div_2_div_1_mj_entity_link_pill_15_Template(rf, ctx) { if (rf & 1) {
365
- i0.ɵɵelement(0, "mj-entity-link-pill", 109);
365
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_15_Template(rf, ctx) { if (rf & 1) {
366
+ i0.ɵɵelement(0, "mj-entity-link-pill", 97);
366
367
  } if (rf & 2) {
367
368
  const run_r5 = i0.ɵɵnextContext().$implicit;
368
369
  i0.ɵɵproperty("entityName", run_r5.TargetLogEntity)("recordId", run_r5.TargetLogID);
369
370
  } }
370
- function TestFormComponentExtended_div_51_div_2_div_1_span_17_Template(rf, ctx) { if (rf & 1) {
371
- i0.ɵɵelementStart(0, "span", 110);
372
- i0.ɵɵelement(1, "i", 94);
371
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_17_Template(rf, ctx) { if (rf & 1) {
372
+ i0.ɵɵelementStart(0, "span", 99);
373
+ i0.ɵɵelement(1, "i", 90);
373
374
  i0.ɵɵelementStart(2, "span");
374
375
  i0.ɵɵtext(3);
375
376
  i0.ɵɵelementEnd()();
@@ -382,49 +383,47 @@ function TestFormComponentExtended_div_51_div_2_div_1_span_17_Template(rf, ctx)
382
383
  i0.ɵɵadvance(2);
383
384
  i0.ɵɵtextInterpolate(run_r5.Status);
384
385
  } }
385
- function TestFormComponentExtended_div_51_div_2_div_1_ng_container_18_span_1_Template(rf, ctx) { if (rf & 1) {
386
- i0.ɵɵelementStart(0, "span", 113);
387
- i0.ɵɵelement(1, "i", 114);
386
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_18_Conditional_0_Template(rf, ctx) { if (rf & 1) {
387
+ i0.ɵɵelementStart(0, "span", 104);
388
+ i0.ɵɵelement(1, "i", 106);
388
389
  i0.ɵɵelementEnd();
389
390
  } }
390
- function TestFormComponentExtended_div_51_div_2_div_1_ng_container_18_span_2_Template(rf, ctx) { if (rf & 1) {
391
- i0.ɵɵelementStart(0, "span", 115);
392
- i0.ɵɵelement(1, "i", 116);
391
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_18_Conditional_1_Template(rf, ctx) { if (rf & 1) {
392
+ i0.ɵɵelementStart(0, "span", 107);
393
+ i0.ɵɵelement(1, "i", 108);
393
394
  i0.ɵɵelementStart(2, "span");
394
395
  i0.ɵɵtext(3);
395
396
  i0.ɵɵelementEnd()();
396
397
  } if (rf & 2) {
397
- let tmp_11_0;
398
- const rating_r6 = ctx.ngIf;
398
+ let tmp_19_0;
399
+ const rating_r6 = ctx;
399
400
  const run_r5 = i0.ɵɵnextContext(2).$implicit;
400
401
  const ctx_r0 = i0.ɵɵnextContext(3);
401
402
  i0.ɵɵclassProp("rating-low", rating_r6 <= 4)("rating-medium", rating_r6 >= 5 && rating_r6 <= 6)("rating-good", rating_r6 >= 7 && rating_r6 <= 8)("rating-excellent", rating_r6 >= 9);
402
- i0.ɵɵproperty("title", ctx_r0.getHumanTooltip(rating_r6, ((tmp_11_0 = ctx_r0.getFeedbackForRun(run_r5.ID)) == null ? null : tmp_11_0.CorrectionSummary) || ((tmp_11_0 = ctx_r0.getFeedbackForRun(run_r5.ID)) == null ? null : tmp_11_0.Comments) || null));
403
+ i0.ɵɵproperty("title", ctx_r0.getHumanTooltip(rating_r6, ((tmp_19_0 = ctx_r0.getFeedbackForRun(run_r5.ID)) == null ? null : tmp_19_0.CorrectionSummary) || ((tmp_19_0 = ctx_r0.getFeedbackForRun(run_r5.ID)) == null ? null : tmp_19_0.Comments) || null));
403
404
  i0.ɵɵadvance(3);
404
405
  i0.ɵɵtextInterpolate(rating_r6);
405
406
  } }
406
- function TestFormComponentExtended_div_51_div_2_div_1_ng_container_18_Template(rf, ctx) { if (rf & 1) {
407
- i0.ɵɵelementContainerStart(0);
408
- i0.ɵɵtemplate(1, TestFormComponentExtended_div_51_div_2_div_1_ng_container_18_span_1_Template, 2, 0, "span", 111)(2, TestFormComponentExtended_div_51_div_2_div_1_ng_container_18_span_2_Template, 4, 10, "span", 112);
409
- i0.ɵɵelementContainerEnd();
407
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_18_Template(rf, ctx) { if (rf & 1) {
408
+ i0.ɵɵconditionalCreate(0, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_18_Conditional_0_Template, 2, 0, "span", 104);
409
+ i0.ɵɵconditionalCreate(1, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_18_Conditional_1_Template, 4, 10, "span", 105);
410
410
  } if (rf & 2) {
411
- let tmp_5_0;
412
- let tmp_6_0;
411
+ let tmp_13_0;
412
+ let tmp_14_0;
413
413
  const run_r5 = i0.ɵɵnextContext().$implicit;
414
414
  const ctx_r0 = i0.ɵɵnextContext(3);
415
+ i0.ɵɵconditional(!((tmp_13_0 = ctx_r0.getFeedbackForRun(run_r5.ID)) == null ? null : tmp_13_0.Rating) ? 0 : -1);
415
416
  i0.ɵɵadvance();
416
- i0.ɵɵproperty("ngIf", !((tmp_5_0 = ctx_r0.getFeedbackForRun(run_r5.ID)) == null ? null : tmp_5_0.Rating));
417
- i0.ɵɵadvance();
418
- i0.ɵɵproperty("ngIf", (tmp_6_0 = ctx_r0.getFeedbackForRun(run_r5.ID)) == null ? null : tmp_6_0.Rating);
417
+ i0.ɵɵconditional((tmp_14_0 = (tmp_14_0 = ctx_r0.getFeedbackForRun(run_r5.ID)) == null ? null : tmp_14_0.Rating) ? 1 : -1, tmp_14_0);
419
418
  } }
420
- function TestFormComponentExtended_div_51_div_2_div_1_ng_container_19_span_1_Template(rf, ctx) { if (rf & 1) {
421
- i0.ɵɵelementStart(0, "span", 119);
422
- i0.ɵɵelement(1, "i", 120);
419
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_19_Conditional_0_Template(rf, ctx) { if (rf & 1) {
420
+ i0.ɵɵelementStart(0, "span", 109);
421
+ i0.ɵɵelement(1, "i", 111);
423
422
  i0.ɵɵelementEnd();
424
423
  } }
425
- function TestFormComponentExtended_div_51_div_2_div_1_ng_container_19_span_2_Template(rf, ctx) { if (rf & 1) {
426
- i0.ɵɵelementStart(0, "span", 121);
427
- i0.ɵɵelement(1, "i", 120);
424
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_19_Conditional_1_Template(rf, ctx) { if (rf & 1) {
425
+ i0.ɵɵelementStart(0, "span", 112);
426
+ i0.ɵɵelement(1, "i", 111);
428
427
  i0.ɵɵelementStart(2, "span");
429
428
  i0.ɵɵtext(3);
430
429
  i0.ɵɵelementEnd()();
@@ -435,19 +434,17 @@ function TestFormComponentExtended_div_51_div_2_div_1_ng_container_19_span_2_Tem
435
434
  i0.ɵɵadvance(3);
436
435
  i0.ɵɵtextInterpolate1("", (run_r5.Score * 100).toFixed(0), "%");
437
436
  } }
438
- function TestFormComponentExtended_div_51_div_2_div_1_ng_container_19_Template(rf, ctx) { if (rf & 1) {
439
- i0.ɵɵelementContainerStart(0);
440
- i0.ɵɵtemplate(1, TestFormComponentExtended_div_51_div_2_div_1_ng_container_19_span_1_Template, 2, 0, "span", 117)(2, TestFormComponentExtended_div_51_div_2_div_1_ng_container_19_span_2_Template, 4, 10, "span", 118);
441
- i0.ɵɵelementContainerEnd();
437
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_19_Template(rf, ctx) { if (rf & 1) {
438
+ i0.ɵɵconditionalCreate(0, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_19_Conditional_0_Template, 2, 0, "span", 109);
439
+ i0.ɵɵconditionalCreate(1, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_19_Conditional_1_Template, 4, 10, "span", 110);
442
440
  } if (rf & 2) {
443
441
  const run_r5 = i0.ɵɵnextContext().$implicit;
442
+ i0.ɵɵconditional(run_r5.Score == null ? 0 : -1);
444
443
  i0.ɵɵadvance();
445
- i0.ɵɵproperty("ngIf", run_r5.Score == null);
446
- i0.ɵɵadvance();
447
- i0.ɵɵproperty("ngIf", run_r5.Score != null);
444
+ i0.ɵɵconditional(run_r5.Score != null ? 1 : -1);
448
445
  } }
449
- function TestFormComponentExtended_div_51_div_2_div_1_div_20_span_1_Template(rf, ctx) { if (rf & 1) {
450
- i0.ɵɵelementStart(0, "span", 125);
446
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_20_For_2_Template(rf, ctx) { if (rf & 1) {
447
+ i0.ɵɵelementStart(0, "span", 113);
451
448
  i0.ɵɵtext(1);
452
449
  i0.ɵɵelementEnd();
453
450
  } if (rf & 2) {
@@ -455,53 +452,58 @@ function TestFormComponentExtended_div_51_div_2_div_1_div_20_span_1_Template(rf,
455
452
  i0.ɵɵadvance();
456
453
  i0.ɵɵtextInterpolate(tag_r7);
457
454
  } }
458
- function TestFormComponentExtended_div_51_div_2_div_1_div_20_span_2_Template(rf, ctx) { if (rf & 1) {
459
- i0.ɵɵelementStart(0, "span", 126);
455
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_20_Conditional_3_Template(rf, ctx) { if (rf & 1) {
456
+ i0.ɵɵelementStart(0, "span", 114);
460
457
  i0.ɵɵtext(1);
461
458
  i0.ɵɵelementEnd();
462
459
  } if (rf & 2) {
463
460
  const run_r5 = i0.ɵɵnextContext(2).$implicit;
464
461
  const ctx_r0 = i0.ɵɵnextContext(3);
465
462
  i0.ɵɵadvance();
466
- i0.ɵɵtextInterpolate1("+", ctx_r0.getRunTags(run_r5).length - 3, "");
463
+ i0.ɵɵtextInterpolate1("+", ctx_r0.getRunTags(run_r5).length - 3);
467
464
  } }
468
- function TestFormComponentExtended_div_51_div_2_div_1_div_20_Template(rf, ctx) { if (rf & 1) {
469
- i0.ɵɵelementStart(0, "div", 122);
470
- i0.ɵɵtemplate(1, TestFormComponentExtended_div_51_div_2_div_1_div_20_span_1_Template, 2, 1, "span", 123)(2, TestFormComponentExtended_div_51_div_2_div_1_div_20_span_2_Template, 2, 1, "span", 124);
465
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_20_Template(rf, ctx) { if (rf & 1) {
466
+ i0.ɵɵelementStart(0, "div", 100);
467
+ i0.ɵɵrepeaterCreate(1, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_20_For_2_Template, 2, 1, "span", 113, i0.ɵɵrepeaterTrackByIdentity);
468
+ i0.ɵɵconditionalCreate(3, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_20_Conditional_3_Template, 2, 1, "span", 114);
471
469
  i0.ɵɵelementEnd();
472
470
  } if (rf & 2) {
473
471
  const run_r5 = i0.ɵɵnextContext().$implicit;
474
472
  const ctx_r0 = i0.ɵɵnextContext(3);
475
473
  i0.ɵɵadvance();
476
- i0.ɵɵproperty("ngForOf", ctx_r0.getRunTags(run_r5).slice(0, 3));
477
- i0.ɵɵadvance();
478
- i0.ɵɵproperty("ngIf", ctx_r0.getRunTags(run_r5).length > 3);
474
+ i0.ɵɵrepeater(ctx_r0.getRunTags(run_r5).slice(0, 3));
475
+ i0.ɵɵadvance(2);
476
+ i0.ɵɵconditional(ctx_r0.getRunTags(run_r5).length > 3 ? 3 : -1);
479
477
  } }
480
- function TestFormComponentExtended_div_51_div_2_div_1_Template(rf, ctx) { if (rf & 1) {
478
+ function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Template(rf, ctx) { if (rf & 1) {
481
479
  const _r4 = i0.ɵɵgetCurrentView();
482
- i0.ɵɵelementStart(0, "div", 92);
483
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_51_div_2_div_1_Template_div_click_0_listener() { const run_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.openTestRun(run_r5.ID)); });
484
- i0.ɵɵelementStart(1, "div", 93);
485
- i0.ɵɵelement(2, "i", 94);
480
+ i0.ɵɵelementStart(0, "div", 88);
481
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Template_div_click_0_listener() { const run_r5 = i0.ɵɵrestoreView(_r4).$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.openTestRun(run_r5.ID)); });
482
+ i0.ɵɵelementStart(1, "div", 89);
483
+ i0.ɵɵelement(2, "i", 90);
486
484
  i0.ɵɵelementEnd();
487
- i0.ɵɵelementStart(3, "div", 95)(4, "div", 96)(5, "span", 97);
485
+ i0.ɵɵelementStart(3, "div", 91)(4, "div", 92)(5, "span", 93);
488
486
  i0.ɵɵtext(6);
489
487
  i0.ɵɵelementEnd();
490
- i0.ɵɵelementStart(7, "span", 98);
488
+ i0.ɵɵelementStart(7, "span", 94);
491
489
  i0.ɵɵtext(8);
492
490
  i0.ɵɵelementEnd()();
493
- i0.ɵɵelementStart(9, "div", 99)(10, "span");
494
- i0.ɵɵelement(11, "i", 100);
491
+ i0.ɵɵelementStart(9, "div", 95)(10, "span");
492
+ i0.ɵɵelement(11, "i", 96);
495
493
  i0.ɵɵtext(12);
496
494
  i0.ɵɵelementEnd();
497
- i0.ɵɵtemplate(13, TestFormComponentExtended_div_51_div_2_div_1_span_13_Template, 3, 1, "span", 101)(14, TestFormComponentExtended_div_51_div_2_div_1_span_14_Template, 3, 1, "span", 101)(15, TestFormComponentExtended_div_51_div_2_div_1_mj_entity_link_pill_15_Template, 1, 2, "mj-entity-link-pill", 102);
495
+ i0.ɵɵconditionalCreate(13, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_13_Template, 3, 1, "span");
496
+ i0.ɵɵconditionalCreate(14, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_14_Template, 3, 1, "span");
497
+ i0.ɵɵconditionalCreate(15, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_15_Template, 1, 2, "mj-entity-link-pill", 97);
498
498
  i0.ɵɵelementEnd();
499
- i0.ɵɵelementStart(16, "div", 103);
500
- i0.ɵɵtemplate(17, TestFormComponentExtended_div_51_div_2_div_1_span_17_Template, 4, 17, "span", 104)(18, TestFormComponentExtended_div_51_div_2_div_1_ng_container_18_Template, 3, 2, "ng-container", 101)(19, TestFormComponentExtended_div_51_div_2_div_1_ng_container_19_Template, 3, 2, "ng-container", 101);
499
+ i0.ɵɵelementStart(16, "div", 98);
500
+ i0.ɵɵconditionalCreate(17, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_17_Template, 4, 17, "span", 99);
501
+ i0.ɵɵconditionalCreate(18, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_18_Template, 2, 2);
502
+ i0.ɵɵconditionalCreate(19, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_19_Template, 2, 2);
501
503
  i0.ɵɵelementEnd();
502
- i0.ɵɵtemplate(20, TestFormComponentExtended_div_51_div_2_div_1_div_20_Template, 3, 2, "div", 105);
504
+ i0.ɵɵconditionalCreate(20, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Conditional_20_Template, 4, 1, "div", 100);
503
505
  i0.ɵɵelementEnd();
504
- i0.ɵɵelement(21, "i", 106);
506
+ i0.ɵɵelement(21, "i", 101);
505
507
  i0.ɵɵelementEnd();
506
508
  } if (rf & 2) {
507
509
  const run_r5 = ctx.$implicit;
@@ -511,41 +513,41 @@ function TestFormComponentExtended_div_51_div_2_div_1_Template(rf, ctx) { if (rf
511
513
  i0.ɵɵadvance();
512
514
  i0.ɵɵclassProp("fa-check", run_r5.Status === "Passed")("fa-times", run_r5.Status === "Failed")("fa-exclamation", run_r5.Status === "Error")("fa-stopwatch", run_r5.Status === "Timeout")("fa-spinner", run_r5.Status === "Running")("fa-clock", run_r5.Status === "Pending");
513
515
  i0.ɵɵadvance(4);
514
- i0.ɵɵtextInterpolate1("Run #", run_r5.ID.substring(0, 8), "");
516
+ i0.ɵɵtextInterpolate1("Run #", run_r5.ID.substring(0, 8));
515
517
  i0.ɵɵadvance();
516
518
  i0.ɵɵstyleProp("color", ctx_r0.getRunStatusColor(run_r5.Status));
517
519
  i0.ɵɵadvance();
518
520
  i0.ɵɵtextInterpolate(run_r5.Status);
519
521
  i0.ɵɵadvance(4);
520
- i0.ɵɵtextInterpolate1(" ", ctx_r0.getRelativeTime(run_r5.StartedAt), "");
522
+ i0.ɵɵtextInterpolate1(" ", ctx_r0.getRelativeTime(run_r5.StartedAt));
521
523
  i0.ɵɵadvance();
522
- i0.ɵɵproperty("ngIf", run_r5.DurationSeconds);
524
+ i0.ɵɵconditional(run_r5.DurationSeconds ? 13 : -1);
523
525
  i0.ɵɵadvance();
524
- i0.ɵɵproperty("ngIf", run_r5.CostUSD);
526
+ i0.ɵɵconditional(run_r5.CostUSD ? 14 : -1);
525
527
  i0.ɵɵadvance();
526
- i0.ɵɵproperty("ngIf", run_r5.TargetLogEntityID && run_r5.TargetLogID);
528
+ i0.ɵɵconditional(run_r5.TargetLogEntityID && run_r5.TargetLogID ? 15 : -1);
527
529
  i0.ɵɵadvance(2);
528
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showExecution);
530
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showExecution ? 17 : -1);
529
531
  i0.ɵɵadvance();
530
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showHuman);
532
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showHuman ? 18 : -1);
531
533
  i0.ɵɵadvance();
532
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showAuto);
534
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showAuto ? 19 : -1);
533
535
  i0.ɵɵadvance();
534
- i0.ɵɵproperty("ngIf", ctx_r0.getRunTags(run_r5).length > 0);
536
+ i0.ɵɵconditional(ctx_r0.getRunTags(run_r5).length > 0 ? 20 : -1);
535
537
  } }
536
- function TestFormComponentExtended_div_51_div_2_Template(rf, ctx) { if (rf & 1) {
537
- i0.ɵɵelementStart(0, "div", 90);
538
- i0.ɵɵtemplate(1, TestFormComponentExtended_div_51_div_2_div_1_Template, 22, 26, "div", 91);
538
+ function TestFormComponentExtended_Conditional_63_Conditional_2_Template(rf, ctx) { if (rf & 1) {
539
+ i0.ɵɵelementStart(0, "div", 79);
540
+ i0.ɵɵrepeaterCreate(1, TestFormComponentExtended_Conditional_63_Conditional_2_For_2_Template, 22, 26, "div", 87, i0.ɵɵrepeaterTrackByIdentity);
539
541
  i0.ɵɵelementEnd();
540
542
  } if (rf & 2) {
541
543
  const ctx_r0 = i0.ɵɵnextContext(2);
542
544
  i0.ɵɵadvance();
543
- i0.ɵɵproperty("ngForOf", ctx_r0.testRuns);
545
+ i0.ɵɵrepeater(ctx_r0.testRuns);
544
546
  } }
545
- function TestFormComponentExtended_div_51_div_3_Template(rf, ctx) { if (rf & 1) {
547
+ function TestFormComponentExtended_Conditional_63_Conditional_3_Template(rf, ctx) { if (rf & 1) {
546
548
  const _r8 = i0.ɵɵgetCurrentView();
547
- i0.ɵɵelementStart(0, "div", 127)(1, "div", 128);
548
- i0.ɵɵelement(2, "i", 129);
549
+ i0.ɵɵelementStart(0, "div", 80)(1, "div", 115);
550
+ i0.ɵɵelement(2, "i", 116);
549
551
  i0.ɵɵelementEnd();
550
552
  i0.ɵɵelementStart(3, "h4");
551
553
  i0.ɵɵtext(4, "No Test Runs Yet");
@@ -553,89 +555,91 @@ function TestFormComponentExtended_div_51_div_3_Template(rf, ctx) { if (rf & 1)
553
555
  i0.ɵɵelementStart(5, "p");
554
556
  i0.ɵɵtext(6, "Run this test to see execution history and results here.");
555
557
  i0.ɵɵelementEnd();
556
- i0.ɵɵelementStart(7, "button", 12);
557
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_51_div_3_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r8); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.runTest()); });
558
- i0.ɵɵelement(8, "i", 13);
558
+ i0.ɵɵelementStart(7, "button", 18);
559
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_63_Conditional_3_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r8); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.runTest()); });
560
+ i0.ɵɵelement(8, "i", 19);
559
561
  i0.ɵɵtext(9, " Run Test Now ");
560
562
  i0.ɵɵelementEnd()();
561
563
  } }
562
- function TestFormComponentExtended_div_51_Template(rf, ctx) { if (rf & 1) {
563
- i0.ɵɵelementStart(0, "div", 78);
564
- i0.ɵɵtemplate(1, TestFormComponentExtended_div_51_div_1_Template, 3, 2, "div", 79)(2, TestFormComponentExtended_div_51_div_2_Template, 2, 1, "div", 80)(3, TestFormComponentExtended_div_51_div_3_Template, 10, 0, "div", 81);
564
+ function TestFormComponentExtended_Conditional_63_Template(rf, ctx) { if (rf & 1) {
565
+ i0.ɵɵelementStart(0, "div", 35);
566
+ i0.ɵɵconditionalCreate(1, TestFormComponentExtended_Conditional_63_Conditional_1_Template, 4, 1, "div", 78);
567
+ i0.ɵɵconditionalCreate(2, TestFormComponentExtended_Conditional_63_Conditional_2_Template, 3, 0, "div", 79);
568
+ i0.ɵɵconditionalCreate(3, TestFormComponentExtended_Conditional_63_Conditional_3_Template, 10, 0, "div", 80);
565
569
  i0.ɵɵelementEnd();
566
570
  } if (rf & 2) {
567
571
  const ctx_r0 = i0.ɵɵnextContext();
568
572
  i0.ɵɵadvance();
569
- i0.ɵɵproperty("ngIf", ctx_r0.loadingRuns);
573
+ i0.ɵɵconditional(ctx_r0.loadingRuns ? 1 : -1);
570
574
  i0.ɵɵadvance();
571
- i0.ɵɵproperty("ngIf", !ctx_r0.loadingRuns && ctx_r0.testRuns.length > 0);
575
+ i0.ɵɵconditional(!ctx_r0.loadingRuns && ctx_r0.testRuns.length > 0 ? 2 : -1);
572
576
  i0.ɵɵadvance();
573
- i0.ɵɵproperty("ngIf", ctx_r0.testRunsLoaded && !ctx_r0.loadingRuns && ctx_r0.testRuns.length === 0);
577
+ i0.ɵɵconditional(ctx_r0.testRunsLoaded && !ctx_r0.loadingRuns && ctx_r0.testRuns.length === 0 ? 3 : -1);
574
578
  } }
575
- function TestFormComponentExtended_div_52_div_1_div_2_Template(rf, ctx) { if (rf & 1) {
576
- i0.ɵɵelementStart(0, "div", 85);
577
- i0.ɵɵelement(1, "div", 86);
578
- i0.ɵɵelementStart(2, "div", 87);
579
- i0.ɵɵelement(3, "div", 88)(4, "div", 89);
579
+ function TestFormComponentExtended_Conditional_64_Conditional_1_For_3_Template(rf, ctx) { if (rf & 1) {
580
+ i0.ɵɵelementStart(0, "div", 82);
581
+ i0.ɵɵelement(1, "div", 83);
582
+ i0.ɵɵelementStart(2, "div", 84);
583
+ i0.ɵɵelement(3, "div", 85)(4, "div", 86);
580
584
  i0.ɵɵelementEnd()();
581
585
  } }
582
- function TestFormComponentExtended_div_52_div_1_Template(rf, ctx) { if (rf & 1) {
583
- i0.ɵɵelementStart(0, "div", 82)(1, "div", 83);
584
- i0.ɵɵtemplate(2, TestFormComponentExtended_div_52_div_1_div_2_Template, 5, 0, "div", 84);
586
+ function TestFormComponentExtended_Conditional_64_Conditional_1_Template(rf, ctx) { if (rf & 1) {
587
+ i0.ɵɵelementStart(0, "div", 78)(1, "div", 81);
588
+ i0.ɵɵrepeaterCreate(2, TestFormComponentExtended_Conditional_64_Conditional_1_For_3_Template, 5, 0, "div", 82, i0.ɵɵrepeaterTrackByIdentity);
585
589
  i0.ɵɵelementEnd()();
586
590
  } if (rf & 2) {
587
591
  i0.ɵɵadvance(2);
588
- i0.ɵɵproperty("ngForOf", i0.ɵɵpureFunction0(1, _c1));
592
+ i0.ɵɵrepeater(i0.ɵɵpureFunction0(0, _c1));
589
593
  } }
590
- function TestFormComponentExtended_div_52_div_2_div_1_span_10_Template(rf, ctx) { if (rf & 1) {
594
+ function TestFormComponentExtended_Conditional_64_Conditional_2_For_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
591
595
  i0.ɵɵelementStart(0, "span");
592
- i0.ɵɵelement(1, "i", 47);
596
+ i0.ɵɵelement(1, "i", 48);
593
597
  i0.ɵɵtext(2);
594
598
  i0.ɵɵelementEnd();
595
599
  } if (rf & 2) {
596
600
  const suiteTest_r10 = i0.ɵɵnextContext().$implicit;
597
601
  i0.ɵɵadvance(2);
598
- i0.ɵɵtextInterpolate1(" ", suiteTest_r10.Status, "");
602
+ i0.ɵɵtextInterpolate1(" ", suiteTest_r10.Status);
599
603
  } }
600
- function TestFormComponentExtended_div_52_div_2_div_1_Template(rf, ctx) { if (rf & 1) {
604
+ function TestFormComponentExtended_Conditional_64_Conditional_2_For_2_Template(rf, ctx) { if (rf & 1) {
601
605
  const _r9 = i0.ɵɵgetCurrentView();
602
- i0.ɵɵelementStart(0, "div", 134);
603
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_52_div_2_div_1_Template_div_click_0_listener() { const suiteTest_r10 = i0.ɵɵrestoreView(_r9).$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.openTestSuite(suiteTest_r10.SuiteID)); });
604
- i0.ɵɵelementStart(1, "div", 135);
605
- i0.ɵɵelement(2, "i", 24);
606
+ i0.ɵɵelementStart(0, "div", 119);
607
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_64_Conditional_2_For_2_Template_div_click_0_listener() { const suiteTest_r10 = i0.ɵɵrestoreView(_r9).$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.openTestSuite(suiteTest_r10.SuiteID)); });
608
+ i0.ɵɵelementStart(1, "div", 120);
609
+ i0.ɵɵelement(2, "i", 30);
606
610
  i0.ɵɵelementEnd();
607
- i0.ɵɵelementStart(3, "div", 136)(4, "div", 137);
611
+ i0.ɵɵelementStart(3, "div", 121)(4, "div", 122);
608
612
  i0.ɵɵtext(5);
609
613
  i0.ɵɵelementEnd();
610
- i0.ɵɵelementStart(6, "div", 138)(7, "span");
611
- i0.ɵɵelement(8, "i", 139);
614
+ i0.ɵɵelementStart(6, "div", 123)(7, "span");
615
+ i0.ɵɵelement(8, "i", 124);
612
616
  i0.ɵɵtext(9);
613
617
  i0.ɵɵelementEnd();
614
- i0.ɵɵtemplate(10, TestFormComponentExtended_div_52_div_2_div_1_span_10_Template, 3, 1, "span", 101);
618
+ i0.ɵɵconditionalCreate(10, TestFormComponentExtended_Conditional_64_Conditional_2_For_2_Conditional_10_Template, 3, 1, "span");
615
619
  i0.ɵɵelementEnd()();
616
- i0.ɵɵelement(11, "i", 106);
620
+ i0.ɵɵelement(11, "i", 101);
617
621
  i0.ɵɵelementEnd();
618
622
  } if (rf & 2) {
619
623
  const suiteTest_r10 = ctx.$implicit;
620
624
  i0.ɵɵadvance(5);
621
625
  i0.ɵɵtextInterpolate(suiteTest_r10.Suite);
622
626
  i0.ɵɵadvance(4);
623
- i0.ɵɵtextInterpolate1(" Sequence: ", suiteTest_r10.Sequence, "");
627
+ i0.ɵɵtextInterpolate1(" Sequence: ", suiteTest_r10.Sequence);
624
628
  i0.ɵɵadvance();
625
- i0.ɵɵproperty("ngIf", suiteTest_r10.Status);
629
+ i0.ɵɵconditional(suiteTest_r10.Status ? 10 : -1);
626
630
  } }
627
- function TestFormComponentExtended_div_52_div_2_Template(rf, ctx) { if (rf & 1) {
628
- i0.ɵɵelementStart(0, "div", 132);
629
- i0.ɵɵtemplate(1, TestFormComponentExtended_div_52_div_2_div_1_Template, 12, 3, "div", 133);
631
+ function TestFormComponentExtended_Conditional_64_Conditional_2_Template(rf, ctx) { if (rf & 1) {
632
+ i0.ɵɵelementStart(0, "div", 117);
633
+ i0.ɵɵrepeaterCreate(1, TestFormComponentExtended_Conditional_64_Conditional_2_For_2_Template, 12, 3, "div", 118, i0.ɵɵrepeaterTrackByIdentity);
630
634
  i0.ɵɵelementEnd();
631
635
  } if (rf & 2) {
632
636
  const ctx_r0 = i0.ɵɵnextContext(2);
633
637
  i0.ɵɵadvance();
634
- i0.ɵɵproperty("ngForOf", ctx_r0.suiteTests);
638
+ i0.ɵɵrepeater(ctx_r0.suiteTests);
635
639
  } }
636
- function TestFormComponentExtended_div_52_div_3_Template(rf, ctx) { if (rf & 1) {
637
- i0.ɵɵelementStart(0, "div", 127)(1, "div", 128);
638
- i0.ɵɵelement(2, "i", 140);
640
+ function TestFormComponentExtended_Conditional_64_Conditional_3_Template(rf, ctx) { if (rf & 1) {
641
+ i0.ɵɵelementStart(0, "div", 80)(1, "div", 115);
642
+ i0.ɵɵelement(2, "i", 125);
639
643
  i0.ɵɵelementEnd();
640
644
  i0.ɵɵelementStart(3, "h4");
641
645
  i0.ɵɵtext(4, "Not Part of Any Suite");
@@ -644,33 +648,35 @@ function TestFormComponentExtended_div_52_div_3_Template(rf, ctx) { if (rf & 1)
644
648
  i0.ɵɵtext(6, "This test is not included in any test suites. Add it to a suite to run it with other tests.");
645
649
  i0.ɵɵelementEnd()();
646
650
  } }
647
- function TestFormComponentExtended_div_52_Template(rf, ctx) { if (rf & 1) {
648
- i0.ɵɵelementStart(0, "div", 130);
649
- i0.ɵɵtemplate(1, TestFormComponentExtended_div_52_div_1_Template, 3, 2, "div", 79)(2, TestFormComponentExtended_div_52_div_2_Template, 2, 1, "div", 131)(3, TestFormComponentExtended_div_52_div_3_Template, 7, 0, "div", 81);
651
+ function TestFormComponentExtended_Conditional_64_Template(rf, ctx) { if (rf & 1) {
652
+ i0.ɵɵelementStart(0, "div", 36);
653
+ i0.ɵɵconditionalCreate(1, TestFormComponentExtended_Conditional_64_Conditional_1_Template, 4, 1, "div", 78);
654
+ i0.ɵɵconditionalCreate(2, TestFormComponentExtended_Conditional_64_Conditional_2_Template, 3, 0, "div", 117);
655
+ i0.ɵɵconditionalCreate(3, TestFormComponentExtended_Conditional_64_Conditional_3_Template, 7, 0, "div", 80);
650
656
  i0.ɵɵelementEnd();
651
657
  } if (rf & 2) {
652
658
  const ctx_r0 = i0.ɵɵnextContext();
653
659
  i0.ɵɵadvance();
654
- i0.ɵɵproperty("ngIf", ctx_r0.loadingSuites);
660
+ i0.ɵɵconditional(ctx_r0.loadingSuites ? 1 : -1);
655
661
  i0.ɵɵadvance();
656
- i0.ɵɵproperty("ngIf", !ctx_r0.loadingSuites && ctx_r0.suiteTests.length > 0);
662
+ i0.ɵɵconditional(!ctx_r0.loadingSuites && ctx_r0.suiteTests.length > 0 ? 2 : -1);
657
663
  i0.ɵɵadvance();
658
- i0.ɵɵproperty("ngIf", ctx_r0.suiteTestsLoaded && !ctx_r0.loadingSuites && ctx_r0.suiteTests.length === 0);
664
+ i0.ɵɵconditional(ctx_r0.suiteTestsLoaded && !ctx_r0.loadingSuites && ctx_r0.suiteTests.length === 0 ? 3 : -1);
659
665
  } }
660
- function TestFormComponentExtended_div_53_div_1_Template(rf, ctx) { if (rf & 1) {
661
- i0.ɵɵelementStart(0, "div", 82);
662
- i0.ɵɵelement(1, "mj-loading", 143);
666
+ function TestFormComponentExtended_Conditional_65_Conditional_1_Template(rf, ctx) { if (rf & 1) {
667
+ i0.ɵɵelementStart(0, "div", 78);
668
+ i0.ɵɵelement(1, "mj-loading", 127);
663
669
  i0.ɵɵelementEnd();
664
670
  } }
665
- function TestFormComponentExtended_div_53_div_2_div_17_div_9_Template(rf, ctx) { if (rf & 1) {
666
- i0.ɵɵelementStart(0, "div", 154)(1, "div", 160);
667
- i0.ɵɵelement(2, "i", 161);
671
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_17_Conditional_9_Template(rf, ctx) { if (rf & 1) {
672
+ i0.ɵɵelementStart(0, "div", 136)(1, "div", 141);
673
+ i0.ɵɵelement(2, "i", 142);
668
674
  i0.ɵɵelementEnd();
669
- i0.ɵɵelementStart(3, "div", 156)(4, "div", 157);
675
+ i0.ɵɵelementStart(3, "div", 138)(4, "div", 139);
670
676
  i0.ɵɵtext(5);
671
- i0.ɵɵelement(6, "i", 162);
677
+ i0.ɵɵelement(6, "i", 143);
672
678
  i0.ɵɵelementEnd();
673
- i0.ɵɵelementStart(7, "div", 158);
679
+ i0.ɵɵelementStart(7, "div", 140);
674
680
  i0.ɵɵtext(8, "Pass Rate");
675
681
  i0.ɵɵelementEnd()()();
676
682
  } if (rf & 2) {
@@ -680,14 +686,14 @@ function TestFormComponentExtended_div_53_div_2_div_17_div_9_Template(rf, ctx) {
680
686
  i0.ɵɵadvance();
681
687
  i0.ɵɵclassProp("fa-arrow-up", ctx_r0.getPassRateTrend() === "up")("fa-arrow-down", ctx_r0.getPassRateTrend() === "down")("fa-minus", ctx_r0.getPassRateTrend() === "stable")("trend-up", ctx_r0.getPassRateTrend() === "up")("trend-down", ctx_r0.getPassRateTrend() === "down");
682
688
  } }
683
- function TestFormComponentExtended_div_53_div_2_div_17_div_10_Template(rf, ctx) { if (rf & 1) {
684
- i0.ɵɵelementStart(0, "div", 154)(1, "div", 155);
685
- i0.ɵɵelement(2, "i", 163);
689
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_17_Conditional_10_Template(rf, ctx) { if (rf & 1) {
690
+ i0.ɵɵelementStart(0, "div", 136)(1, "div", 137);
691
+ i0.ɵɵelement(2, "i", 144);
686
692
  i0.ɵɵelementEnd();
687
- i0.ɵɵelementStart(3, "div", 156)(4, "div", 157);
693
+ i0.ɵɵelementStart(3, "div", 138)(4, "div", 139);
688
694
  i0.ɵɵtext(5);
689
695
  i0.ɵɵelementEnd();
690
- i0.ɵɵelementStart(6, "div", 158);
696
+ i0.ɵɵelementStart(6, "div", 140);
691
697
  i0.ɵɵtext(7, "Avg Score");
692
698
  i0.ɵɵelementEnd()()();
693
699
  } if (rf & 2) {
@@ -695,33 +701,34 @@ function TestFormComponentExtended_div_53_div_2_div_17_div_10_Template(rf, ctx)
695
701
  i0.ɵɵadvance(5);
696
702
  i0.ɵɵtextInterpolate1("", (ctx_r0.getOverallAvgScore() * 100).toFixed(1), "%");
697
703
  } }
698
- function TestFormComponentExtended_div_53_div_2_div_17_Template(rf, ctx) { if (rf & 1) {
699
- i0.ɵɵelementStart(0, "div", 153)(1, "div", 154)(2, "div", 155);
700
- i0.ɵɵelement(3, "i", 129);
704
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_17_Template(rf, ctx) { if (rf & 1) {
705
+ i0.ɵɵelementStart(0, "div", 134)(1, "div", 136)(2, "div", 137);
706
+ i0.ɵɵelement(3, "i", 116);
701
707
  i0.ɵɵelementEnd();
702
- i0.ɵɵelementStart(4, "div", 156)(5, "div", 157);
708
+ i0.ɵɵelementStart(4, "div", 138)(5, "div", 139);
703
709
  i0.ɵɵtext(6);
704
710
  i0.ɵɵelementEnd();
705
- i0.ɵɵelementStart(7, "div", 158);
711
+ i0.ɵɵelementStart(7, "div", 140);
706
712
  i0.ɵɵtext(8, "Total Runs");
707
713
  i0.ɵɵelementEnd()()();
708
- i0.ɵɵtemplate(9, TestFormComponentExtended_div_53_div_2_div_17_div_9_Template, 9, 11, "div", 159)(10, TestFormComponentExtended_div_53_div_2_div_17_div_10_Template, 8, 1, "div", 159);
709
- i0.ɵɵelementStart(11, "div", 154)(12, "div", 155);
710
- i0.ɵɵelement(13, "i", 107);
714
+ i0.ɵɵconditionalCreate(9, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_17_Conditional_9_Template, 9, 11, "div", 136);
715
+ i0.ɵɵconditionalCreate(10, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_17_Conditional_10_Template, 8, 1, "div", 136);
716
+ i0.ɵɵelementStart(11, "div", 136)(12, "div", 137);
717
+ i0.ɵɵelement(13, "i", 102);
711
718
  i0.ɵɵelementEnd();
712
- i0.ɵɵelementStart(14, "div", 156)(15, "div", 157);
719
+ i0.ɵɵelementStart(14, "div", 138)(15, "div", 139);
713
720
  i0.ɵɵtext(16);
714
721
  i0.ɵɵelementEnd();
715
- i0.ɵɵelementStart(17, "div", 158);
722
+ i0.ɵɵelementStart(17, "div", 140);
716
723
  i0.ɵɵtext(18, "Avg Duration");
717
724
  i0.ɵɵelementEnd()()();
718
- i0.ɵɵelementStart(19, "div", 154)(20, "div", 155);
719
- i0.ɵɵelement(21, "i", 108);
725
+ i0.ɵɵelementStart(19, "div", 136)(20, "div", 137);
726
+ i0.ɵɵelement(21, "i", 103);
720
727
  i0.ɵɵelementEnd();
721
- i0.ɵɵelementStart(22, "div", 156)(23, "div", 157);
728
+ i0.ɵɵelementStart(22, "div", 138)(23, "div", 139);
722
729
  i0.ɵɵtext(24);
723
730
  i0.ɵɵelementEnd();
724
- i0.ɵɵelementStart(25, "div", 158);
731
+ i0.ɵɵelementStart(25, "div", 140);
725
732
  i0.ɵɵtext(26, "Avg Cost");
726
733
  i0.ɵɵelementEnd()()()();
727
734
  } if (rf & 2) {
@@ -729,36 +736,36 @@ function TestFormComponentExtended_div_53_div_2_div_17_Template(rf, ctx) { if (r
729
736
  i0.ɵɵadvance(6);
730
737
  i0.ɵɵtextInterpolate(ctx_r0.getTotalRuns());
731
738
  i0.ɵɵadvance(3);
732
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showExecution);
739
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showExecution ? 9 : -1);
733
740
  i0.ɵɵadvance();
734
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showAuto);
741
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showAuto ? 10 : -1);
735
742
  i0.ɵɵadvance(6);
736
743
  i0.ɵɵtextInterpolate(ctx_r0.formatDuration(ctx_r0.getOverallAvgDuration()));
737
744
  i0.ɵɵadvance(8);
738
745
  i0.ɵɵtextInterpolate(ctx_r0.formatCost(ctx_r0.getOverallAvgCost()));
739
746
  } }
740
- function TestFormComponentExtended_div_53_div_2_div_18_th_12_Template(rf, ctx) { if (rf & 1) {
747
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Conditional_12_Template(rf, ctx) { if (rf & 1) {
741
748
  i0.ɵɵelementStart(0, "th");
742
749
  i0.ɵɵtext(1, "Passed");
743
750
  i0.ɵɵelementEnd();
744
751
  } }
745
- function TestFormComponentExtended_div_53_div_2_div_18_th_13_Template(rf, ctx) { if (rf & 1) {
752
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Conditional_13_Template(rf, ctx) { if (rf & 1) {
746
753
  i0.ɵɵelementStart(0, "th");
747
754
  i0.ɵɵtext(1, "Failed");
748
755
  i0.ɵɵelementEnd();
749
756
  } }
750
- function TestFormComponentExtended_div_53_div_2_div_18_th_14_Template(rf, ctx) { if (rf & 1) {
757
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Conditional_14_Template(rf, ctx) { if (rf & 1) {
751
758
  i0.ɵɵelementStart(0, "th");
752
759
  i0.ɵɵtext(1, "Pass Rate");
753
760
  i0.ɵɵelementEnd();
754
761
  } }
755
- function TestFormComponentExtended_div_53_div_2_div_18_th_15_Template(rf, ctx) { if (rf & 1) {
762
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Conditional_15_Template(rf, ctx) { if (rf & 1) {
756
763
  i0.ɵɵelementStart(0, "th");
757
764
  i0.ɵɵtext(1, "Avg Score");
758
765
  i0.ɵɵelementEnd();
759
766
  } }
760
- function TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_6_Template(rf, ctx) { if (rf & 1) {
761
- i0.ɵɵelementStart(0, "td", 177);
767
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Conditional_6_Template(rf, ctx) { if (rf & 1) {
768
+ i0.ɵɵelementStart(0, "td", 150);
762
769
  i0.ɵɵtext(1);
763
770
  i0.ɵɵelementEnd();
764
771
  } if (rf & 2) {
@@ -766,8 +773,8 @@ function TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_6_Template(rf, c
766
773
  i0.ɵɵadvance();
767
774
  i0.ɵɵtextInterpolate(day_r12.passCount);
768
775
  } }
769
- function TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_7_Template(rf, ctx) { if (rf & 1) {
770
- i0.ɵɵelementStart(0, "td", 178);
776
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Conditional_7_Template(rf, ctx) { if (rf & 1) {
777
+ i0.ɵɵelementStart(0, "td", 151);
771
778
  i0.ɵɵtext(1);
772
779
  i0.ɵɵelementEnd();
773
780
  } if (rf & 2) {
@@ -775,10 +782,10 @@ function TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_7_Template(rf, c
775
782
  i0.ɵɵadvance();
776
783
  i0.ɵɵtextInterpolate(day_r12.failCount);
777
784
  } }
778
- function TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_8_Template(rf, ctx) { if (rf & 1) {
779
- i0.ɵɵelementStart(0, "td", 179)(1, "div", 180);
780
- i0.ɵɵelement(2, "div", 181);
781
- i0.ɵɵelementStart(3, "span", 182);
785
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Conditional_8_Template(rf, ctx) { if (rf & 1) {
786
+ i0.ɵɵelementStart(0, "td", 152)(1, "div", 156);
787
+ i0.ɵɵelement(2, "div", 157);
788
+ i0.ɵɵelementStart(3, "span", 158);
782
789
  i0.ɵɵtext(4);
783
790
  i0.ɵɵelementEnd()()();
784
791
  } if (rf & 2) {
@@ -788,8 +795,8 @@ function TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_8_Template(rf, c
788
795
  i0.ɵɵadvance(2);
789
796
  i0.ɵɵtextInterpolate1("", day_r12.passRate.toFixed(1), "%");
790
797
  } }
791
- function TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_9_Template(rf, ctx) { if (rf & 1) {
792
- i0.ɵɵelementStart(0, "td", 183);
798
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Conditional_9_Template(rf, ctx) { if (rf & 1) {
799
+ i0.ɵɵelementStart(0, "td", 153);
793
800
  i0.ɵɵtext(1);
794
801
  i0.ɵɵelementEnd();
795
802
  } if (rf & 2) {
@@ -797,19 +804,22 @@ function TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_9_Template(rf, c
797
804
  i0.ɵɵadvance();
798
805
  i0.ɵɵtextInterpolate1("", (day_r12.avgScore * 100).toFixed(1), "%");
799
806
  } }
800
- function TestFormComponentExtended_div_53_div_2_div_18_tr_21_Template(rf, ctx) { if (rf & 1) {
801
- i0.ɵɵelementStart(0, "tr")(1, "td", 169);
807
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Template(rf, ctx) { if (rf & 1) {
808
+ i0.ɵɵelementStart(0, "tr")(1, "td", 148);
802
809
  i0.ɵɵtext(2);
803
810
  i0.ɵɵpipe(3, "date");
804
811
  i0.ɵɵelementEnd();
805
- i0.ɵɵelementStart(4, "td", 170);
812
+ i0.ɵɵelementStart(4, "td", 149);
806
813
  i0.ɵɵtext(5);
807
814
  i0.ɵɵelementEnd();
808
- i0.ɵɵtemplate(6, TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_6_Template, 2, 1, "td", 171)(7, TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_7_Template, 2, 1, "td", 172)(8, TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_8_Template, 5, 3, "td", 173)(9, TestFormComponentExtended_div_53_div_2_div_18_tr_21_td_9_Template, 2, 1, "td", 174);
809
- i0.ɵɵelementStart(10, "td", 175);
815
+ i0.ɵɵconditionalCreate(6, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Conditional_6_Template, 2, 1, "td", 150);
816
+ i0.ɵɵconditionalCreate(7, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Conditional_7_Template, 2, 1, "td", 151);
817
+ i0.ɵɵconditionalCreate(8, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Conditional_8_Template, 5, 3, "td", 152);
818
+ i0.ɵɵconditionalCreate(9, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Conditional_9_Template, 2, 1, "td", 153);
819
+ i0.ɵɵelementStart(10, "td", 154);
810
820
  i0.ɵɵtext(11);
811
821
  i0.ɵɵelementEnd();
812
- i0.ɵɵelementStart(12, "td", 176);
822
+ i0.ɵɵelementStart(12, "td", 155);
813
823
  i0.ɵɵtext(13);
814
824
  i0.ɵɵelementEnd()();
815
825
  } if (rf & 2) {
@@ -820,30 +830,33 @@ function TestFormComponentExtended_div_53_div_2_div_18_tr_21_Template(rf, ctx) {
820
830
  i0.ɵɵadvance(3);
821
831
  i0.ɵɵtextInterpolate(day_r12.runCount);
822
832
  i0.ɵɵadvance();
823
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showExecution);
833
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showExecution ? 6 : -1);
824
834
  i0.ɵɵadvance();
825
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showExecution);
835
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showExecution ? 7 : -1);
826
836
  i0.ɵɵadvance();
827
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showExecution);
837
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showExecution ? 8 : -1);
828
838
  i0.ɵɵadvance();
829
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showAuto);
839
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showAuto ? 9 : -1);
830
840
  i0.ɵɵadvance(2);
831
841
  i0.ɵɵtextInterpolate(ctx_r0.formatDuration(day_r12.avgDuration));
832
842
  i0.ɵɵadvance(2);
833
843
  i0.ɵɵtextInterpolate(ctx_r0.formatCost(day_r12.avgCost));
834
844
  } }
835
- function TestFormComponentExtended_div_53_div_2_div_18_Template(rf, ctx) { if (rf & 1) {
836
- i0.ɵɵelementStart(0, "div", 164)(1, "h3");
837
- i0.ɵɵelement(2, "i", 165);
845
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Template(rf, ctx) { if (rf & 1) {
846
+ i0.ɵɵelementStart(0, "div", 135)(1, "h3");
847
+ i0.ɵɵelement(2, "i", 145);
838
848
  i0.ɵɵtext(3, " Daily Performance");
839
849
  i0.ɵɵelementEnd();
840
- i0.ɵɵelementStart(4, "div", 166)(5, "table", 167)(6, "thead")(7, "tr")(8, "th");
850
+ i0.ɵɵelementStart(4, "div", 146)(5, "table", 147)(6, "thead")(7, "tr")(8, "th");
841
851
  i0.ɵɵtext(9, "Date");
842
852
  i0.ɵɵelementEnd();
843
853
  i0.ɵɵelementStart(10, "th");
844
854
  i0.ɵɵtext(11, "Runs");
845
855
  i0.ɵɵelementEnd();
846
- i0.ɵɵtemplate(12, TestFormComponentExtended_div_53_div_2_div_18_th_12_Template, 2, 0, "th", 101)(13, TestFormComponentExtended_div_53_div_2_div_18_th_13_Template, 2, 0, "th", 101)(14, TestFormComponentExtended_div_53_div_2_div_18_th_14_Template, 2, 0, "th", 101)(15, TestFormComponentExtended_div_53_div_2_div_18_th_15_Template, 2, 0, "th", 101);
856
+ i0.ɵɵconditionalCreate(12, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Conditional_12_Template, 2, 0, "th");
857
+ i0.ɵɵconditionalCreate(13, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Conditional_13_Template, 2, 0, "th");
858
+ i0.ɵɵconditionalCreate(14, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Conditional_14_Template, 2, 0, "th");
859
+ i0.ɵɵconditionalCreate(15, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Conditional_15_Template, 2, 0, "th");
847
860
  i0.ɵɵelementStart(16, "th");
848
861
  i0.ɵɵtext(17, "Avg Duration");
849
862
  i0.ɵɵelementEnd();
@@ -851,23 +864,23 @@ function TestFormComponentExtended_div_53_div_2_div_18_Template(rf, ctx) { if (r
851
864
  i0.ɵɵtext(19, "Avg Cost");
852
865
  i0.ɵɵelementEnd()()();
853
866
  i0.ɵɵelementStart(20, "tbody");
854
- i0.ɵɵtemplate(21, TestFormComponentExtended_div_53_div_2_div_18_tr_21_Template, 14, 11, "tr", 168);
867
+ i0.ɵɵrepeaterCreate(21, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_For_22_Template, 14, 11, "tr", null, i0.ɵɵrepeaterTrackByIdentity);
855
868
  i0.ɵɵelementEnd()()()();
856
869
  } if (rf & 2) {
857
870
  const ctx_r0 = i0.ɵɵnextContext(3);
858
871
  i0.ɵɵadvance(12);
859
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showExecution);
872
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showExecution ? 12 : -1);
860
873
  i0.ɵɵadvance();
861
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showExecution);
874
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showExecution ? 13 : -1);
862
875
  i0.ɵɵadvance();
863
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showExecution);
876
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showExecution ? 14 : -1);
864
877
  i0.ɵɵadvance();
865
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showAuto);
878
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showAuto ? 15 : -1);
866
879
  i0.ɵɵadvance(6);
867
- i0.ɵɵproperty("ngForOf", ctx_r0.historyData);
880
+ i0.ɵɵrepeater(ctx_r0.historyData);
868
881
  } }
869
- function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_4_span_1_Template(rf, ctx) { if (rf & 1) {
870
- i0.ɵɵelementStart(0, "span", 199);
882
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_4_For_2_Template(rf, ctx) { if (rf & 1) {
883
+ i0.ɵɵelementStart(0, "span", 170);
871
884
  i0.ɵɵtext(1);
872
885
  i0.ɵɵelementEnd();
873
886
  } if (rf & 2) {
@@ -875,31 +888,32 @@ function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_4_span_1_Templa
875
888
  i0.ɵɵadvance();
876
889
  i0.ɵɵtextInterpolate(tag_r15);
877
890
  } }
878
- function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_4_span_2_Template(rf, ctx) { if (rf & 1) {
879
- i0.ɵɵelementStart(0, "span", 200);
891
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_4_Conditional_3_Template(rf, ctx) { if (rf & 1) {
892
+ i0.ɵɵelementStart(0, "span", 171);
880
893
  i0.ɵɵtext(1);
881
894
  i0.ɵɵelementEnd();
882
895
  } if (rf & 2) {
883
896
  const suite_r14 = i0.ɵɵnextContext(2).$implicit;
884
897
  i0.ɵɵadvance();
885
- i0.ɵɵtextInterpolate1("+", suite_r14.tags.length - 3, "");
898
+ i0.ɵɵtextInterpolate1("+", suite_r14.tags.length - 3);
886
899
  } }
887
- function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_4_Template(rf, ctx) { if (rf & 1) {
888
- i0.ɵɵelementStart(0, "div", 196);
889
- i0.ɵɵtemplate(1, TestFormComponentExtended_div_53_div_2_div_19_div_5_div_4_span_1_Template, 2, 1, "span", 197)(2, TestFormComponentExtended_div_53_div_2_div_19_div_5_div_4_span_2_Template, 2, 1, "span", 198);
900
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_4_Template(rf, ctx) { if (rf & 1) {
901
+ i0.ɵɵelementStart(0, "div", 164);
902
+ i0.ɵɵrepeaterCreate(1, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_4_For_2_Template, 2, 1, "span", 170, i0.ɵɵrepeaterTrackByIdentity);
903
+ i0.ɵɵconditionalCreate(3, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_4_Conditional_3_Template, 2, 1, "span", 171);
890
904
  i0.ɵɵelementEnd();
891
905
  } if (rf & 2) {
892
906
  const suite_r14 = i0.ɵɵnextContext().$implicit;
893
907
  i0.ɵɵadvance();
894
- i0.ɵɵproperty("ngForOf", suite_r14.tags.slice(0, 3));
895
- i0.ɵɵadvance();
896
- i0.ɵɵproperty("ngIf", suite_r14.tags.length > 3);
908
+ i0.ɵɵrepeater(suite_r14.tags.slice(0, 3));
909
+ i0.ɵɵadvance(2);
910
+ i0.ɵɵconditional(suite_r14.tags.length > 3 ? 3 : -1);
897
911
  } }
898
- function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_11_Template(rf, ctx) { if (rf & 1) {
899
- i0.ɵɵelementStart(0, "div", 191)(1, "span", 201);
912
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_11_Template(rf, ctx) { if (rf & 1) {
913
+ i0.ɵɵelementStart(0, "div", 166)(1, "span", 172);
900
914
  i0.ɵɵtext(2);
901
915
  i0.ɵɵelementEnd();
902
- i0.ɵɵelementStart(3, "span", 193);
916
+ i0.ɵɵelementStart(3, "span", 168);
903
917
  i0.ɵɵtext(4, "Pass Rate");
904
918
  i0.ɵɵelementEnd()();
905
919
  } if (rf & 2) {
@@ -909,11 +923,11 @@ function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_11_Template(rf,
909
923
  i0.ɵɵadvance();
910
924
  i0.ɵɵtextInterpolate1(" ", suite_r14.passRate.toFixed(1), "% ");
911
925
  } }
912
- function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_12_Template(rf, ctx) { if (rf & 1) {
913
- i0.ɵɵelementStart(0, "div", 191)(1, "span", 192);
926
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_12_Template(rf, ctx) { if (rf & 1) {
927
+ i0.ɵɵelementStart(0, "div", 166)(1, "span", 167);
914
928
  i0.ɵɵtext(2);
915
929
  i0.ɵɵelementEnd();
916
- i0.ɵɵelementStart(3, "span", 193);
930
+ i0.ɵɵelementStart(3, "span", 168);
917
931
  i0.ɵɵtext(4, "Avg Score");
918
932
  i0.ɵɵelementEnd()();
919
933
  } if (rf & 2) {
@@ -921,11 +935,11 @@ function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_12_Template(rf,
921
935
  i0.ɵɵadvance(2);
922
936
  i0.ɵɵtextInterpolate1("", (suite_r14.avgScore * 100).toFixed(1), "%");
923
937
  } }
924
- function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_23_Template(rf, ctx) { if (rf & 1) {
925
- i0.ɵɵelementStart(0, "div", 191)(1, "span", 192);
938
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_23_Template(rf, ctx) { if (rf & 1) {
939
+ i0.ɵɵelementStart(0, "div", 166)(1, "span", 167);
926
940
  i0.ɵɵtext(2);
927
941
  i0.ɵɵelementEnd();
928
- i0.ɵɵelementStart(3, "span", 193);
942
+ i0.ɵɵelementStart(3, "span", 168);
929
943
  i0.ɵɵtext(4, "Last Run");
930
944
  i0.ɵɵelementEnd()();
931
945
  } if (rf & 2) {
@@ -934,37 +948,38 @@ function TestFormComponentExtended_div_53_div_2_div_19_div_5_div_23_Template(rf,
934
948
  i0.ɵɵadvance(2);
935
949
  i0.ɵɵtextInterpolate(ctx_r0.getRelativeTime(suite_r14.lastRun));
936
950
  } }
937
- function TestFormComponentExtended_div_53_div_2_div_19_div_5_Template(rf, ctx) { if (rf & 1) {
951
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Template(rf, ctx) { if (rf & 1) {
938
952
  const _r13 = i0.ɵɵgetCurrentView();
939
- i0.ɵɵelementStart(0, "div", 186);
940
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_53_div_2_div_19_div_5_Template_div_click_0_listener() { const suite_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r0 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r0.openSuiteFromHistory(suite_r14.suiteId)); });
941
- i0.ɵɵelementStart(1, "div", 187)(2, "div", 188);
953
+ i0.ɵɵelementStart(0, "div", 161);
954
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Template_div_click_0_listener() { const suite_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r0 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r0.openSuiteFromHistory(suite_r14.suiteId)); });
955
+ i0.ɵɵelementStart(1, "div", 162)(2, "div", 163);
942
956
  i0.ɵɵtext(3);
943
957
  i0.ɵɵelementEnd();
944
- i0.ɵɵtemplate(4, TestFormComponentExtended_div_53_div_2_div_19_div_5_div_4_Template, 3, 2, "div", 189);
958
+ i0.ɵɵconditionalCreate(4, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_4_Template, 4, 1, "div", 164);
945
959
  i0.ɵɵelementEnd();
946
- i0.ɵɵelementStart(5, "div", 190)(6, "div", 191)(7, "span", 192);
960
+ i0.ɵɵelementStart(5, "div", 165)(6, "div", 166)(7, "span", 167);
947
961
  i0.ɵɵtext(8);
948
962
  i0.ɵɵelementEnd();
949
- i0.ɵɵelementStart(9, "span", 193);
963
+ i0.ɵɵelementStart(9, "span", 168);
950
964
  i0.ɵɵtext(10, "Runs");
951
965
  i0.ɵɵelementEnd()();
952
- i0.ɵɵtemplate(11, TestFormComponentExtended_div_53_div_2_div_19_div_5_div_11_Template, 5, 5, "div", 194)(12, TestFormComponentExtended_div_53_div_2_div_19_div_5_div_12_Template, 5, 1, "div", 194);
953
- i0.ɵɵelementStart(13, "div", 191)(14, "span", 192);
966
+ i0.ɵɵconditionalCreate(11, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_11_Template, 5, 5, "div", 166);
967
+ i0.ɵɵconditionalCreate(12, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_12_Template, 5, 1, "div", 166);
968
+ i0.ɵɵelementStart(13, "div", 166)(14, "span", 167);
954
969
  i0.ɵɵtext(15);
955
970
  i0.ɵɵelementEnd();
956
- i0.ɵɵelementStart(16, "span", 193);
971
+ i0.ɵɵelementStart(16, "span", 168);
957
972
  i0.ɵɵtext(17, "Avg Duration");
958
973
  i0.ɵɵelementEnd()();
959
- i0.ɵɵelementStart(18, "div", 191)(19, "span", 192);
974
+ i0.ɵɵelementStart(18, "div", 166)(19, "span", 167);
960
975
  i0.ɵɵtext(20);
961
976
  i0.ɵɵelementEnd();
962
- i0.ɵɵelementStart(21, "span", 193);
977
+ i0.ɵɵelementStart(21, "span", 168);
963
978
  i0.ɵɵtext(22, "Avg Cost");
964
979
  i0.ɵɵelementEnd()();
965
- i0.ɵɵtemplate(23, TestFormComponentExtended_div_53_div_2_div_19_div_5_div_23_Template, 5, 1, "div", 194);
980
+ i0.ɵɵconditionalCreate(23, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Conditional_23_Template, 5, 1, "div", 166);
966
981
  i0.ɵɵelementEnd();
967
- i0.ɵɵelement(24, "i", 195);
982
+ i0.ɵɵelement(24, "i", 169);
968
983
  i0.ɵɵelementEnd();
969
984
  } if (rf & 2) {
970
985
  const suite_r14 = ctx.$implicit;
@@ -972,37 +987,37 @@ function TestFormComponentExtended_div_53_div_2_div_19_div_5_Template(rf, ctx) {
972
987
  i0.ɵɵadvance(3);
973
988
  i0.ɵɵtextInterpolate(suite_r14.suiteName);
974
989
  i0.ɵɵadvance();
975
- i0.ɵɵproperty("ngIf", suite_r14.tags.length > 0);
990
+ i0.ɵɵconditional(suite_r14.tags.length > 0 ? 4 : -1);
976
991
  i0.ɵɵadvance(4);
977
992
  i0.ɵɵtextInterpolate(suite_r14.totalRuns);
978
993
  i0.ɵɵadvance(3);
979
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showExecution);
994
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showExecution ? 11 : -1);
980
995
  i0.ɵɵadvance();
981
- i0.ɵɵproperty("ngIf", ctx_r0.evalPreferences.showAuto);
996
+ i0.ɵɵconditional(ctx_r0.evalPreferences.showAuto ? 12 : -1);
982
997
  i0.ɵɵadvance(3);
983
998
  i0.ɵɵtextInterpolate(ctx_r0.formatDuration(suite_r14.avgDuration));
984
999
  i0.ɵɵadvance(5);
985
1000
  i0.ɵɵtextInterpolate(ctx_r0.formatCost(suite_r14.avgCost));
986
1001
  i0.ɵɵadvance(3);
987
- i0.ɵɵproperty("ngIf", suite_r14.lastRun);
1002
+ i0.ɵɵconditional(suite_r14.lastRun ? 23 : -1);
988
1003
  } }
989
- function TestFormComponentExtended_div_53_div_2_div_19_Template(rf, ctx) { if (rf & 1) {
990
- i0.ɵɵelementStart(0, "div", 164)(1, "h3");
991
- i0.ɵɵelement(2, "i", 24);
1004
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_Template(rf, ctx) { if (rf & 1) {
1005
+ i0.ɵɵelementStart(0, "div", 135)(1, "h3");
1006
+ i0.ɵɵelement(2, "i", 30);
992
1007
  i0.ɵɵtext(3, " Performance by Suite");
993
1008
  i0.ɵɵelementEnd();
994
- i0.ɵɵelementStart(4, "div", 184);
995
- i0.ɵɵtemplate(5, TestFormComponentExtended_div_53_div_2_div_19_div_5_Template, 25, 8, "div", 185);
1009
+ i0.ɵɵelementStart(4, "div", 159);
1010
+ i0.ɵɵrepeaterCreate(5, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_For_6_Template, 25, 8, "div", 160, i0.ɵɵrepeaterTrackByIdentity);
996
1011
  i0.ɵɵelementEnd()();
997
1012
  } if (rf & 2) {
998
1013
  const ctx_r0 = i0.ɵɵnextContext(3);
999
1014
  i0.ɵɵadvance(5);
1000
- i0.ɵɵproperty("ngForOf", ctx_r0.suitePerformance);
1015
+ i0.ɵɵrepeater(ctx_r0.suitePerformance);
1001
1016
  } }
1002
- function TestFormComponentExtended_div_53_div_2_div_20_Template(rf, ctx) { if (rf & 1) {
1017
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_20_Template(rf, ctx) { if (rf & 1) {
1003
1018
  const _r16 = i0.ɵɵgetCurrentView();
1004
- i0.ɵɵelementStart(0, "div", 127)(1, "div", 128);
1005
- i0.ɵɵelement(2, "i", 25);
1019
+ i0.ɵɵelementStart(0, "div", 80)(1, "div", 115);
1020
+ i0.ɵɵelement(2, "i", 31);
1006
1021
  i0.ɵɵelementEnd();
1007
1022
  i0.ɵɵelementStart(3, "h4");
1008
1023
  i0.ɵɵtext(4, "No History Available");
@@ -1010,39 +1025,42 @@ function TestFormComponentExtended_div_53_div_2_div_20_Template(rf, ctx) { if (r
1010
1025
  i0.ɵɵelementStart(5, "p");
1011
1026
  i0.ɵɵtext(6, "Run this test to start building history and analytics data.");
1012
1027
  i0.ɵɵelementEnd();
1013
- i0.ɵɵelementStart(7, "button", 12);
1014
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_53_div_2_div_20_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r16); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.runTest()); });
1015
- i0.ɵɵelement(8, "i", 13);
1028
+ i0.ɵɵelementStart(7, "button", 18);
1029
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_20_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r16); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.runTest()); });
1030
+ i0.ɵɵelement(8, "i", 19);
1016
1031
  i0.ɵɵtext(9, " Run Test Now ");
1017
1032
  i0.ɵɵelementEnd()();
1018
1033
  } }
1019
- function TestFormComponentExtended_div_53_div_2_Template(rf, ctx) { if (rf & 1) {
1034
+ function TestFormComponentExtended_Conditional_65_Conditional_2_Template(rf, ctx) { if (rf & 1) {
1020
1035
  const _r11 = i0.ɵɵgetCurrentView();
1021
- i0.ɵɵelementStart(0, "div", 144)(1, "div", 145)(2, "div", 146)(3, "span", 147);
1036
+ i0.ɵɵelementStart(0, "div", 126)(1, "div", 128)(2, "div", 129)(3, "span", 130);
1022
1037
  i0.ɵɵtext(4, "Time Range:");
1023
1038
  i0.ɵɵelementEnd();
1024
- i0.ɵɵelementStart(5, "button", 148);
1025
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_53_div_2_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.setHistoryTimeRange("7d")); });
1039
+ i0.ɵɵelementStart(5, "button", 131);
1040
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_65_Conditional_2_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.setHistoryTimeRange("7d")); });
1026
1041
  i0.ɵɵtext(6, "7 Days");
1027
1042
  i0.ɵɵelementEnd();
1028
- i0.ɵɵelementStart(7, "button", 148);
1029
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_53_div_2_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.setHistoryTimeRange("30d")); });
1043
+ i0.ɵɵelementStart(7, "button", 131);
1044
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_65_Conditional_2_Template_button_click_7_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.setHistoryTimeRange("30d")); });
1030
1045
  i0.ɵɵtext(8, "30 Days");
1031
1046
  i0.ɵɵelementEnd();
1032
- i0.ɵɵelementStart(9, "button", 148);
1033
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_53_div_2_Template_button_click_9_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.setHistoryTimeRange("90d")); });
1047
+ i0.ɵɵelementStart(9, "button", 131);
1048
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_65_Conditional_2_Template_button_click_9_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.setHistoryTimeRange("90d")); });
1034
1049
  i0.ɵɵtext(10, "90 Days");
1035
1050
  i0.ɵɵelementEnd();
1036
- i0.ɵɵelementStart(11, "button", 148);
1037
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_53_div_2_Template_button_click_11_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.setHistoryTimeRange("all")); });
1051
+ i0.ɵɵelementStart(11, "button", 131);
1052
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_65_Conditional_2_Template_button_click_11_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.setHistoryTimeRange("all")); });
1038
1053
  i0.ɵɵtext(12, "All Time");
1039
1054
  i0.ɵɵelementEnd()();
1040
- i0.ɵɵelementStart(13, "div", 149)(14, "button", 14);
1041
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_53_div_2_Template_button_click_14_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.exportHistoryToCSV()); });
1042
- i0.ɵɵelement(15, "i", 150);
1055
+ i0.ɵɵelementStart(13, "div", 132)(14, "button", 20);
1056
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_65_Conditional_2_Template_button_click_14_listener() { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.exportHistoryToCSV()); });
1057
+ i0.ɵɵelement(15, "i", 133);
1043
1058
  i0.ɵɵtext(16, " Export CSV ");
1044
1059
  i0.ɵɵelementEnd()()();
1045
- i0.ɵɵtemplate(17, TestFormComponentExtended_div_53_div_2_div_17_Template, 27, 5, "div", 151)(18, TestFormComponentExtended_div_53_div_2_div_18_Template, 22, 5, "div", 152)(19, TestFormComponentExtended_div_53_div_2_div_19_Template, 6, 1, "div", 152)(20, TestFormComponentExtended_div_53_div_2_div_20_Template, 10, 0, "div", 81);
1060
+ i0.ɵɵconditionalCreate(17, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_17_Template, 27, 5, "div", 134);
1061
+ i0.ɵɵconditionalCreate(18, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_18_Template, 23, 4, "div", 135);
1062
+ i0.ɵɵconditionalCreate(19, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_19_Template, 7, 0, "div", 135);
1063
+ i0.ɵɵconditionalCreate(20, TestFormComponentExtended_Conditional_65_Conditional_2_Conditional_20_Template, 10, 0, "div", 80);
1046
1064
  i0.ɵɵelementEnd();
1047
1065
  } if (rf & 2) {
1048
1066
  const ctx_r0 = i0.ɵɵnextContext(2);
@@ -1057,56 +1075,57 @@ function TestFormComponentExtended_div_53_div_2_Template(rf, ctx) { if (rf & 1)
1057
1075
  i0.ɵɵadvance(3);
1058
1076
  i0.ɵɵproperty("disabled", ctx_r0.historyData.length === 0);
1059
1077
  i0.ɵɵadvance(3);
1060
- i0.ɵɵproperty("ngIf", ctx_r0.historyData.length > 0);
1078
+ i0.ɵɵconditional(ctx_r0.historyData.length > 0 ? 17 : -1);
1061
1079
  i0.ɵɵadvance();
1062
- i0.ɵɵproperty("ngIf", ctx_r0.historyData.length > 0);
1080
+ i0.ɵɵconditional(ctx_r0.historyData.length > 0 ? 18 : -1);
1063
1081
  i0.ɵɵadvance();
1064
- i0.ɵɵproperty("ngIf", ctx_r0.suitePerformance.length > 0);
1082
+ i0.ɵɵconditional(ctx_r0.suitePerformance.length > 0 ? 19 : -1);
1065
1083
  i0.ɵɵadvance();
1066
- i0.ɵɵproperty("ngIf", ctx_r0.historyData.length === 0);
1084
+ i0.ɵɵconditional(ctx_r0.historyData.length === 0 ? 20 : -1);
1067
1085
  } }
1068
- function TestFormComponentExtended_div_53_Template(rf, ctx) { if (rf & 1) {
1069
- i0.ɵɵelementStart(0, "div", 141);
1070
- i0.ɵɵtemplate(1, TestFormComponentExtended_div_53_div_1_Template, 2, 0, "div", 79)(2, TestFormComponentExtended_div_53_div_2_Template, 21, 13, "div", 142);
1086
+ function TestFormComponentExtended_Conditional_65_Template(rf, ctx) { if (rf & 1) {
1087
+ i0.ɵɵelementStart(0, "div", 37);
1088
+ i0.ɵɵconditionalCreate(1, TestFormComponentExtended_Conditional_65_Conditional_1_Template, 2, 0, "div", 78);
1089
+ i0.ɵɵconditionalCreate(2, TestFormComponentExtended_Conditional_65_Conditional_2_Template, 21, 13, "div", 126);
1071
1090
  i0.ɵɵelementEnd();
1072
1091
  } if (rf & 2) {
1073
1092
  const ctx_r0 = i0.ɵɵnextContext();
1074
1093
  i0.ɵɵadvance();
1075
- i0.ɵɵproperty("ngIf", ctx_r0.loadingHistory);
1094
+ i0.ɵɵconditional(ctx_r0.loadingHistory ? 1 : -1);
1076
1095
  i0.ɵɵadvance();
1077
- i0.ɵɵproperty("ngIf", !ctx_r0.loadingHistory && ctx_r0.historyLoaded);
1096
+ i0.ɵɵconditional(!ctx_r0.loadingHistory && ctx_r0.historyLoaded ? 2 : -1);
1078
1097
  } }
1079
- function TestFormComponentExtended_div_56_Template(rf, ctx) { if (rf & 1) {
1098
+ function TestFormComponentExtended_Conditional_68_Template(rf, ctx) { if (rf & 1) {
1080
1099
  const _r17 = i0.ɵɵgetCurrentView();
1081
- i0.ɵɵelementStart(0, "div", 202)(1, "div", 203);
1082
- i0.ɵɵelement(2, "i", 33);
1100
+ i0.ɵɵelementStart(0, "div", 40)(1, "div", 173);
1101
+ i0.ɵɵelement(2, "i", 39);
1083
1102
  i0.ɵɵtext(3, " Shortcuts ");
1084
- i0.ɵɵelementStart(4, "button", 204);
1085
- i0.ɵɵlistener("click", function TestFormComponentExtended_div_56_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r17); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.toggleShortcuts()); });
1086
- i0.ɵɵelement(5, "i", 205);
1103
+ i0.ɵɵelementStart(4, "button", 174);
1104
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Conditional_68_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r17); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.toggleShortcuts()); });
1105
+ i0.ɵɵelement(5, "i", 175);
1087
1106
  i0.ɵɵelementEnd()();
1088
- i0.ɵɵelementStart(6, "div", 206)(7, "div", 207)(8, "span");
1107
+ i0.ɵɵelementStart(6, "div", 176)(7, "div", 177)(8, "span");
1089
1108
  i0.ɵɵtext(9, "Refresh");
1090
1109
  i0.ɵɵelementEnd();
1091
- i0.ɵɵelementStart(10, "span", 208)(11, "kbd");
1110
+ i0.ɵɵelementStart(10, "span", 178)(11, "kbd");
1092
1111
  i0.ɵɵtext(12, "Cmd");
1093
1112
  i0.ɵɵelementEnd();
1094
1113
  i0.ɵɵelementStart(13, "kbd");
1095
1114
  i0.ɵɵtext(14, "R");
1096
1115
  i0.ɵɵelementEnd()()();
1097
- i0.ɵɵelementStart(15, "div", 207)(16, "span");
1116
+ i0.ɵɵelementStart(15, "div", 177)(16, "span");
1098
1117
  i0.ɵɵtext(17, "Run Test");
1099
1118
  i0.ɵɵelementEnd();
1100
- i0.ɵɵelementStart(18, "span", 208)(19, "kbd");
1119
+ i0.ɵɵelementStart(18, "span", 178)(19, "kbd");
1101
1120
  i0.ɵɵtext(20, "Cmd");
1102
1121
  i0.ɵɵelementEnd();
1103
1122
  i0.ɵɵelementStart(21, "kbd");
1104
1123
  i0.ɵɵtext(22, "Enter");
1105
1124
  i0.ɵɵelementEnd()()();
1106
- i0.ɵɵelementStart(23, "div", 207)(24, "span");
1125
+ i0.ɵɵelementStart(23, "div", 177)(24, "span");
1107
1126
  i0.ɵɵtext(25, "Switch Tabs");
1108
1127
  i0.ɵɵelementEnd();
1109
- i0.ɵɵelementStart(26, "span", 208)(27, "kbd");
1128
+ i0.ɵɵelementStart(26, "span", 178)(27, "kbd");
1110
1129
  i0.ɵɵtext(28, "1");
1111
1130
  i0.ɵɵelementEnd();
1112
1131
  i0.ɵɵtext(29, "-");
@@ -1117,13 +1136,14 @@ function TestFormComponentExtended_div_56_Template(rf, ctx) { if (rf & 1) {
1117
1136
  /** Settings key for keyboard shortcuts visibility */
1118
1137
  const SHORTCUTS_SETTINGS_KEY = '__mj.Testing.ShowKeyboardShortcuts';
1119
1138
  let TestFormComponentExtended = class TestFormComponentExtended extends TestFormComponent {
1120
- constructor(elementRef, sharedService, router, route, cdr, testingDialogService, evalPrefsService, viewContainerRef) {
1139
+ constructor(elementRef, sharedService, router, route, cdr, testingDialogService, evalPrefsService, viewContainerRef, appManager) {
1121
1140
  super(elementRef, sharedService, router, route, cdr);
1122
1141
  this.router = router;
1123
1142
  this.cdr = cdr;
1124
1143
  this.testingDialogService = testingDialogService;
1125
1144
  this.evalPrefsService = evalPrefsService;
1126
1145
  this.viewContainerRef = viewContainerRef;
1146
+ this.appManager = appManager;
1127
1147
  this.destroy$ = new Subject();
1128
1148
  // UI state
1129
1149
  this.activeTab = 'overview';
@@ -1460,6 +1480,12 @@ let TestFormComponentExtended = class TestFormComponentExtended extends TestForm
1460
1480
  openTestSuite(suiteId) {
1461
1481
  SharedService.Instance.OpenEntityRecord('MJ: Test Suites', CompositeKey.FromID(suiteId));
1462
1482
  }
1483
+ navigateToTestingDashboard() {
1484
+ const testingApp = this.appManager.GetAppByName('Testing');
1485
+ if (testingApp) {
1486
+ this.navigationService.SwitchToApp(testingApp.ID);
1487
+ }
1488
+ }
1463
1489
  async runTest() {
1464
1490
  if (this.record?.ID) {
1465
1491
  this.testingDialogService.OpenTestDialog(this.record.ID, this.viewContainerRef);
@@ -1824,81 +1850,99 @@ let TestFormComponentExtended = class TestFormComponentExtended extends TestForm
1824
1850
  console.warn('Failed to save shortcuts setting:', error);
1825
1851
  }
1826
1852
  }
1827
- static { this.ɵfac = function TestFormComponentExtended_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TestFormComponentExtended)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.SharedService), i0.ɵɵdirectiveInject(i2.Router), i0.ɵɵdirectiveInject(i2.ActivatedRoute), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i3.TestingDialogService), i0.ɵɵdirectiveInject(i3.EvaluationPreferencesService), i0.ɵɵdirectiveInject(i0.ViewContainerRef)); }; }
1853
+ static { this.ɵfac = function TestFormComponentExtended_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TestFormComponentExtended)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.SharedService), i0.ɵɵdirectiveInject(i2.Router), i0.ɵɵdirectiveInject(i2.ActivatedRoute), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i3.TestingDialogService), i0.ɵɵdirectiveInject(i3.EvaluationPreferencesService), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i4.ApplicationManager)); }; }
1828
1854
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TestFormComponentExtended, selectors: [["mj-test-form"]], hostBindings: function TestFormComponentExtended_HostBindings(rf, ctx) { if (rf & 1) {
1829
- i0.ɵɵlistener("keydown", function TestFormComponentExtended_keydown_HostBindingHandler($event) { return ctx.handleKeyboardShortcut($event); }, false, i0.ɵɵresolveDocument);
1830
- } }, features: [i0.ɵɵInheritDefinitionFeature], decls: 57, vars: 36, consts: [["kendoDialogContainer", "", 1, "test-form"], [1, "test-header"], [1, "header-content"], [1, "header-left"], [1, "test-icon"], [1, "fas", "fa-flask"], [1, "test-info"], [1, "test-meta"], [1, "status-badge", 3, "ngClass"], [1, "fas", 3, "ngClass"], ["class", "test-type", 4, "ngIf"], [1, "header-actions"], ["kendoButton", "", "themeColor", "primary", 3, "click"], [1, "fas", "fa-play"], ["kendoButton", "", 3, "click", "disabled"], ["class", "test-description", 4, "ngIf"], ["class", "metrics-bar", 4, "ngIf"], [1, "tabs-container"], ["role", "tablist", 1, "tabs"], ["role", "tab", 1, "tab", 3, "click"], [1, "fas", "fa-th-large"], [1, "fas", "fa-sliders-h"], [1, "fas", "fa-history"], ["class", "tab-badge", 4, "ngIf"], [1, "fas", "fa-layer-group"], [1, "fas", "fa-chart-line"], [1, "tab-content"], ["class", "overview-tab", 4, "ngIf"], ["class", "config-tab", 4, "ngIf"], ["class", "runs-tab", 4, "ngIf"], ["class", "suites-tab", 4, "ngIf"], ["class", "history-tab", 4, "ngIf"], [1, "shortcuts-toggle", 3, "click", "title"], [1, "fas", "fa-keyboard"], ["class", "keyboard-shortcuts", 4, "ngIf"], [1, "test-type"], [1, "fas", "fa-tag"], [1, "test-description"], [1, "metrics-bar"], [1, "metric-card"], [1, "metric-label"], [1, "metric-value"], [1, "metric-progress"], [1, "metric-progress-fill"], [1, "tab-badge"], [1, "overview-tab"], [1, "info-section"], [1, "fas", "fa-info-circle"], [1, "info-grid"], [1, "info-item"], [1, "info-label"], [1, "info-value"], [1, "status-badge-inline", 3, "ngClass"], [1, "json-section"], [1, "fas", "fa-code"], [1, "json-tabs"], [1, "json-tab", 3, "click"], [1, "fas", "fa-sign-in-alt"], [1, "fas", "fa-check-double"], [1, "fas", "fa-cog"], [1, "fas", "fa-tags"], [1, "code-editor-container"], ["language", "json", 3, "value", "readonly", "toolbar", "lineWrapping"], [1, "config-tab"], [1, "config-section"], [1, "fas", "fa-cogs"], [1, "config-grid"], [1, "config-item"], ["type", "number", "placeholder", "Lower = Higher Priority", 1, "config-input", 3, "ngModelChange", "ngModel"], ["type", "number", "min", "1", 1, "config-input", 3, "ngModelChange", "ngModel"], ["type", "number", 1, "config-input", 3, "ngModelChange", "ngModel"], ["type", "number", "step", "0.000001", 1, "config-input", 3, "ngModelChange", "ngModel"], [1, "config-item", "full-width"], ["type", "number", "placeholder", "Default: 300000 (5 min)", 1, "config-input", 3, "ngModelChange", "ngModel"], [1, "config-hint"], [1, "config-editor-container"], ["language", "json", 3, "change", "value", "readonly", "lineWrapping"], [1, "config-editor-container", "small"], [1, "runs-tab"], ["class", "loading-state", 4, "ngIf"], ["class", "runs-list", 4, "ngIf"], ["class", "empty-state", 4, "ngIf"], [1, "loading-state"], [1, "skeleton-list"], ["class", "skeleton-card", 4, "ngFor", "ngForOf"], [1, "skeleton-card"], [1, "skeleton-icon"], [1, "skeleton-content"], [1, "skeleton-line", "wide"], [1, "skeleton-line", "narrow"], [1, "runs-list"], ["class", "run-item", 3, "click", 4, "ngFor", "ngForOf"], [1, "run-item", 3, "click"], [1, "run-icon"], [1, "fas"], [1, "run-content"], [1, "run-header"], [1, "run-id"], [1, "run-status"], [1, "run-meta"], [1, "fas", "fa-calendar"], [4, "ngIf"], [3, "entityName", "recordId", 4, "ngIf"], [1, "run-eval-stack"], ["class", "eval-pill status-pill", 3, "ngClass", "title", 4, "ngIf"], ["class", "run-tags", 4, "ngIf"], [1, "fas", "fa-chevron-right"], [1, "fas", "fa-clock"], [1, "fas", "fa-dollar-sign"], [3, "entityName", "recordId"], [1, "eval-pill", "status-pill", 3, "ngClass", "title"], ["class", "eval-pill human-pill no-feedback", "title", "Human Review: No rating submitted yet", 4, "ngIf"], ["class", "eval-pill human-pill has-feedback", 3, "rating-low", "rating-medium", "rating-good", "rating-excellent", "title", 4, "ngIf"], ["title", "Human Review: No rating submitted yet", 1, "eval-pill", "human-pill", "no-feedback"], [1, "fas", "fa-user-slash"], [1, "eval-pill", "human-pill", "has-feedback", 3, "title"], [1, "fas", "fa-user"], ["class", "eval-pill auto-pill no-score", "title", "Auto Score: No automated score available", 4, "ngIf"], ["class", "eval-pill auto-pill has-score", 3, "score-low", "score-medium", "score-good", "score-excellent", "title", 4, "ngIf"], ["title", "Auto Score: No automated score available", 1, "eval-pill", "auto-pill", "no-score"], [1, "fas", "fa-robot"], [1, "eval-pill", "auto-pill", "has-score", 3, "title"], [1, "run-tags"], ["class", "run-tag", 4, "ngFor", "ngForOf"], ["class", "run-tag-more", 4, "ngIf"], [1, "run-tag"], [1, "run-tag-more"], [1, "empty-state"], [1, "empty-icon"], [1, "fas", "fa-play-circle"], [1, "suites-tab"], ["class", "suites-list", 4, "ngIf"], [1, "suites-list"], ["class", "suite-item", 3, "click", 4, "ngFor", "ngForOf"], [1, "suite-item", 3, "click"], [1, "suite-icon"], [1, "suite-content"], [1, "suite-name"], [1, "suite-meta"], [1, "fas", "fa-sort-numeric-up"], [1, "fas", "fa-folder-open"], [1, "history-tab"], ["class", "history-content", 4, "ngIf"], ["text", "Loading history..."], [1, "history-content"], [1, "history-filters"], [1, "time-range-filters"], [1, "filter-label"], [1, "filter-btn", 3, "click"], [1, "history-actions"], [1, "fas", "fa-download"], ["class", "history-kpi-cards", 4, "ngIf"], ["class", "history-section", 4, "ngIf"], [1, "history-kpi-cards"], [1, "kpi-card"], [1, "kpi-icon"], [1, "kpi-content"], [1, "kpi-value"], [1, "kpi-label"], ["class", "kpi-card", 4, "ngIf"], [1, "kpi-icon", "pass-rate"], [1, "fas", "fa-percentage"], [1, "fas", "trend-icon"], [1, "fas", "fa-star"], [1, "history-section"], [1, "fas", "fa-calendar-alt"], [1, "history-table-container"], [1, "history-table"], [4, "ngFor", "ngForOf"], [1, "date-cell"], [1, "runs-cell"], ["class", "passed-cell", 4, "ngIf"], ["class", "failed-cell", 4, "ngIf"], ["class", "pass-rate-cell", 4, "ngIf"], ["class", "score-cell", 4, "ngIf"], [1, "duration-cell"], [1, "cost-cell"], [1, "passed-cell"], [1, "failed-cell"], [1, "pass-rate-cell"], [1, "pass-rate-bar"], [1, "pass-rate-fill"], [1, "pass-rate-text"], [1, "score-cell"], [1, "suite-performance-list"], ["class", "suite-perf-card", 3, "click", 4, "ngFor", "ngForOf"], [1, "suite-perf-card", 3, "click"], [1, "suite-perf-header"], [1, "suite-perf-name"], ["class", "suite-perf-tags", 4, "ngIf"], [1, "suite-perf-stats"], [1, "suite-stat"], [1, "stat-value"], [1, "stat-label"], ["class", "suite-stat", 4, "ngIf"], [1, "fas", "fa-chevron-right", "suite-perf-arrow"], [1, "suite-perf-tags"], ["class", "tag-mini", 4, "ngFor", "ngForOf"], ["class", "tag-more", 4, "ngIf"], [1, "tag-mini"], [1, "tag-more"], [1, "stat-value", "pass-rate"], [1, "keyboard-shortcuts"], [1, "shortcuts-header"], ["title", "Hide shortcuts", 1, "shortcuts-close", 3, "click"], [1, "fas", "fa-times"], [1, "shortcut-list"], [1, "shortcut-item"], [1, "shortcut-keys"]], template: function TestFormComponentExtended_Template(rf, ctx) { if (rf & 1) {
1831
- i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3)(4, "div", 4);
1832
- i0.ɵɵelement(5, "i", 5);
1855
+ i0.ɵɵlistener("keydown", function TestFormComponentExtended_keydown_HostBindingHandler($event) { return ctx.handleKeyboardShortcut($event); }, i0.ɵɵresolveDocument);
1856
+ } }, standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 69, vars: 37, consts: [["kendoDialogContainer", "", 1, "test-form"], [1, "test-header"], ["aria-label", "Breadcrumb", 1, "breadcrumb"], ["href", "javascript:void(0)", 3, "click"], [1, "fas", "fa-vial"], [1, "breadcrumb-text"], [1, "current"], [1, "fas", "fa-chevron-right", "separator"], [1, "fas", "fa-flask"], [1, "header-content"], [1, "header-left"], [1, "test-icon"], [1, "test-info"], [1, "test-meta"], [1, "status-badge", 3, "ngClass"], [1, "fas", 3, "ngClass"], [1, "test-type"], [1, "header-actions"], ["kendoButton", "", "themeColor", "primary", 3, "click"], [1, "fas", "fa-play"], ["kendoButton", "", 3, "click", "disabled"], [1, "test-description"], [1, "metrics-bar"], [1, "tabs-container"], ["role", "tablist", 1, "tabs"], ["role", "tab", 1, "tab", 3, "click"], [1, "fas", "fa-th-large"], [1, "fas", "fa-sliders-h"], [1, "fas", "fa-history"], [1, "tab-badge"], [1, "fas", "fa-layer-group"], [1, "fas", "fa-chart-line"], [1, "tab-content"], [1, "overview-tab"], [1, "config-tab"], [1, "runs-tab"], [1, "suites-tab"], [1, "history-tab"], [1, "shortcuts-toggle", 3, "click", "title"], [1, "fas", "fa-keyboard"], [1, "keyboard-shortcuts"], [1, "fas", "fa-tag"], [1, "metric-card"], [1, "metric-label"], [1, "metric-value"], [1, "metric-progress"], [1, "metric-progress-fill"], [1, "info-section"], [1, "fas", "fa-info-circle"], [1, "info-grid"], [1, "info-item"], [1, "info-label"], [1, "info-value"], [1, "status-badge-inline", 3, "ngClass"], [1, "json-section"], [1, "fas", "fa-code"], [1, "json-tabs"], [1, "json-tab", 3, "click"], [1, "fas", "fa-sign-in-alt"], [1, "fas", "fa-check-double"], [1, "fas", "fa-cog"], [1, "fas", "fa-tags"], [1, "code-editor-container"], ["language", "json", 3, "value", "readonly", "toolbar", "lineWrapping"], [1, "config-section"], [1, "fas", "fa-cogs"], [1, "config-grid"], [1, "config-item"], ["type", "number", "placeholder", "Lower = Higher Priority", 1, "config-input", 3, "ngModelChange", "ngModel"], ["type", "number", "min", "1", 1, "config-input", 3, "ngModelChange", "ngModel"], ["type", "number", 1, "config-input", 3, "ngModelChange", "ngModel"], ["type", "number", "step", "0.000001", 1, "config-input", 3, "ngModelChange", "ngModel"], [1, "config-item", "full-width"], ["type", "number", "placeholder", "Default: 300000 (5 min)", 1, "config-input", 3, "ngModelChange", "ngModel"], [1, "config-hint"], [1, "config-editor-container"], ["language", "json", 3, "change", "value", "readonly", "lineWrapping"], [1, "config-editor-container", "small"], [1, "loading-state"], [1, "runs-list"], [1, "empty-state"], [1, "skeleton-list"], [1, "skeleton-card"], [1, "skeleton-icon"], [1, "skeleton-content"], [1, "skeleton-line", "wide"], [1, "skeleton-line", "narrow"], [1, "run-item"], [1, "run-item", 3, "click"], [1, "run-icon"], [1, "fas"], [1, "run-content"], [1, "run-header"], [1, "run-id"], [1, "run-status"], [1, "run-meta"], [1, "fas", "fa-calendar"], [3, "entityName", "recordId"], [1, "run-eval-stack"], [1, "eval-pill", "status-pill", 3, "ngClass", "title"], [1, "run-tags"], [1, "fas", "fa-chevron-right"], [1, "fas", "fa-clock"], [1, "fas", "fa-dollar-sign"], ["title", "Human Review: No rating submitted yet", 1, "eval-pill", "human-pill", "no-feedback"], [1, "eval-pill", "human-pill", "has-feedback", 3, "rating-low", "rating-medium", "rating-good", "rating-excellent", "title"], [1, "fas", "fa-user-slash"], [1, "eval-pill", "human-pill", "has-feedback", 3, "title"], [1, "fas", "fa-user"], ["title", "Auto Score: No automated score available", 1, "eval-pill", "auto-pill", "no-score"], [1, "eval-pill", "auto-pill", "has-score", 3, "score-low", "score-medium", "score-good", "score-excellent", "title"], [1, "fas", "fa-robot"], [1, "eval-pill", "auto-pill", "has-score", 3, "title"], [1, "run-tag"], [1, "run-tag-more"], [1, "empty-icon"], [1, "fas", "fa-play-circle"], [1, "suites-list"], [1, "suite-item"], [1, "suite-item", 3, "click"], [1, "suite-icon"], [1, "suite-content"], [1, "suite-name"], [1, "suite-meta"], [1, "fas", "fa-sort-numeric-up"], [1, "fas", "fa-folder-open"], [1, "history-content"], ["text", "Loading history..."], [1, "history-filters"], [1, "time-range-filters"], [1, "filter-label"], [1, "filter-btn", 3, "click"], [1, "history-actions"], [1, "fas", "fa-download"], [1, "history-kpi-cards"], [1, "history-section"], [1, "kpi-card"], [1, "kpi-icon"], [1, "kpi-content"], [1, "kpi-value"], [1, "kpi-label"], [1, "kpi-icon", "pass-rate"], [1, "fas", "fa-percentage"], [1, "fas", "trend-icon"], [1, "fas", "fa-star"], [1, "fas", "fa-calendar-alt"], [1, "history-table-container"], [1, "history-table"], [1, "date-cell"], [1, "runs-cell"], [1, "passed-cell"], [1, "failed-cell"], [1, "pass-rate-cell"], [1, "score-cell"], [1, "duration-cell"], [1, "cost-cell"], [1, "pass-rate-bar"], [1, "pass-rate-fill"], [1, "pass-rate-text"], [1, "suite-performance-list"], [1, "suite-perf-card"], [1, "suite-perf-card", 3, "click"], [1, "suite-perf-header"], [1, "suite-perf-name"], [1, "suite-perf-tags"], [1, "suite-perf-stats"], [1, "suite-stat"], [1, "stat-value"], [1, "stat-label"], [1, "fas", "fa-chevron-right", "suite-perf-arrow"], [1, "tag-mini"], [1, "tag-more"], [1, "stat-value", "pass-rate"], [1, "shortcuts-header"], ["title", "Hide shortcuts", 1, "shortcuts-close", 3, "click"], [1, "fas", "fa-times"], [1, "shortcut-list"], [1, "shortcut-item"], [1, "shortcut-keys"]], template: function TestFormComponentExtended_Template(rf, ctx) { if (rf & 1) {
1857
+ i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "nav", 2)(3, "ol")(4, "li")(5, "a", 3);
1858
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Template_a_click_5_listener() { return ctx.navigateToTestingDashboard(); });
1859
+ i0.ɵɵelement(6, "i", 4);
1860
+ i0.ɵɵelementStart(7, "span", 5);
1861
+ i0.ɵɵtext(8, "Testing");
1862
+ i0.ɵɵelementEnd()()();
1863
+ i0.ɵɵelementStart(9, "li", 6);
1864
+ i0.ɵɵelement(10, "i", 7)(11, "i", 8);
1865
+ i0.ɵɵelementStart(12, "span");
1866
+ i0.ɵɵtext(13);
1867
+ i0.ɵɵelementEnd()()()();
1868
+ i0.ɵɵelementStart(14, "div", 9)(15, "div", 10)(16, "div", 11);
1869
+ i0.ɵɵelement(17, "i", 8);
1833
1870
  i0.ɵɵelementEnd();
1834
- i0.ɵɵelementStart(6, "div", 6)(7, "h1");
1835
- i0.ɵɵtext(8);
1871
+ i0.ɵɵelementStart(18, "div", 12)(19, "h1");
1872
+ i0.ɵɵtext(20);
1836
1873
  i0.ɵɵelementEnd();
1837
- i0.ɵɵelementStart(9, "div", 7)(10, "span", 8);
1838
- i0.ɵɵelement(11, "i", 9);
1839
- i0.ɵɵtext(12);
1874
+ i0.ɵɵelementStart(21, "div", 13)(22, "span", 14);
1875
+ i0.ɵɵelement(23, "i", 15);
1876
+ i0.ɵɵtext(24);
1840
1877
  i0.ɵɵelementEnd();
1841
- i0.ɵɵtemplate(13, TestFormComponentExtended_span_13_Template, 3, 1, "span", 10);
1878
+ i0.ɵɵconditionalCreate(25, TestFormComponentExtended_Conditional_25_Template, 3, 1, "span", 16);
1842
1879
  i0.ɵɵelementEnd()()();
1843
- i0.ɵɵelementStart(14, "div", 11);
1844
- i0.ɵɵelement(15, "app-evaluation-mode-toggle");
1845
- i0.ɵɵelementStart(16, "button", 12);
1846
- i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_16_listener() { return ctx.runTest(); });
1847
- i0.ɵɵelement(17, "i", 13);
1848
- i0.ɵɵtext(18, " Run Test ");
1880
+ i0.ɵɵelementStart(26, "div", 17);
1881
+ i0.ɵɵelement(27, "app-evaluation-mode-toggle");
1882
+ i0.ɵɵelementStart(28, "button", 18);
1883
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_28_listener() { return ctx.runTest(); });
1884
+ i0.ɵɵelement(29, "i", 19);
1885
+ i0.ɵɵtext(30, " Run Test ");
1849
1886
  i0.ɵɵelementEnd();
1850
- i0.ɵɵelementStart(19, "button", 14);
1851
- i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_19_listener() { return ctx.refresh(); });
1852
- i0.ɵɵelement(20, "i", 9);
1853
- i0.ɵɵtext(21);
1887
+ i0.ɵɵelementStart(31, "button", 20);
1888
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_31_listener() { return ctx.refresh(); });
1889
+ i0.ɵɵelement(32, "i", 15);
1890
+ i0.ɵɵtext(33);
1854
1891
  i0.ɵɵelementEnd()()();
1855
- i0.ɵɵtemplate(22, TestFormComponentExtended_div_22_Template, 3, 1, "div", 15)(23, TestFormComponentExtended_div_23_Template, 23, 6, "div", 16);
1892
+ i0.ɵɵconditionalCreate(34, TestFormComponentExtended_Conditional_34_Template, 3, 1, "div", 21);
1893
+ i0.ɵɵconditionalCreate(35, TestFormComponentExtended_Conditional_35_Template, 23, 6, "div", 22);
1856
1894
  i0.ɵɵelementEnd();
1857
- i0.ɵɵelementStart(24, "div", 17)(25, "div", 18)(26, "button", 19);
1858
- i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_26_listener() { return ctx.changeTab("overview"); });
1859
- i0.ɵɵelement(27, "i", 20);
1860
- i0.ɵɵelementStart(28, "span");
1861
- i0.ɵɵtext(29, "Overview");
1895
+ i0.ɵɵelementStart(36, "div", 23)(37, "div", 24)(38, "button", 25);
1896
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_38_listener() { return ctx.changeTab("overview"); });
1897
+ i0.ɵɵelement(39, "i", 26);
1898
+ i0.ɵɵelementStart(40, "span");
1899
+ i0.ɵɵtext(41, "Overview");
1862
1900
  i0.ɵɵelementEnd()();
1863
- i0.ɵɵelementStart(30, "button", 19);
1864
- i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_30_listener() { return ctx.changeTab("config"); });
1865
- i0.ɵɵelement(31, "i", 21);
1866
- i0.ɵɵelementStart(32, "span");
1867
- i0.ɵɵtext(33, "Configuration");
1901
+ i0.ɵɵelementStart(42, "button", 25);
1902
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_42_listener() { return ctx.changeTab("config"); });
1903
+ i0.ɵɵelement(43, "i", 27);
1904
+ i0.ɵɵelementStart(44, "span");
1905
+ i0.ɵɵtext(45, "Configuration");
1868
1906
  i0.ɵɵelementEnd()();
1869
- i0.ɵɵelementStart(34, "button", 19);
1870
- i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_34_listener() { return ctx.changeTab("runs"); });
1871
- i0.ɵɵelement(35, "i", 22);
1872
- i0.ɵɵelementStart(36, "span");
1873
- i0.ɵɵtext(37, "Runs");
1907
+ i0.ɵɵelementStart(46, "button", 25);
1908
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_46_listener() { return ctx.changeTab("runs"); });
1909
+ i0.ɵɵelement(47, "i", 28);
1910
+ i0.ɵɵelementStart(48, "span");
1911
+ i0.ɵɵtext(49, "Runs");
1874
1912
  i0.ɵɵelementEnd();
1875
- i0.ɵɵtemplate(38, TestFormComponentExtended_span_38_Template, 2, 1, "span", 23);
1913
+ i0.ɵɵconditionalCreate(50, TestFormComponentExtended_Conditional_50_Template, 2, 1, "span", 29);
1876
1914
  i0.ɵɵelementEnd();
1877
- i0.ɵɵelementStart(39, "button", 19);
1878
- i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_39_listener() { return ctx.changeTab("suites"); });
1879
- i0.ɵɵelement(40, "i", 24);
1880
- i0.ɵɵelementStart(41, "span");
1881
- i0.ɵɵtext(42, "Test Suites");
1915
+ i0.ɵɵelementStart(51, "button", 25);
1916
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_51_listener() { return ctx.changeTab("suites"); });
1917
+ i0.ɵɵelement(52, "i", 30);
1918
+ i0.ɵɵelementStart(53, "span");
1919
+ i0.ɵɵtext(54, "Test Suites");
1882
1920
  i0.ɵɵelementEnd();
1883
- i0.ɵɵtemplate(43, TestFormComponentExtended_span_43_Template, 2, 1, "span", 23);
1921
+ i0.ɵɵconditionalCreate(55, TestFormComponentExtended_Conditional_55_Template, 2, 1, "span", 29);
1884
1922
  i0.ɵɵelementEnd();
1885
- i0.ɵɵelementStart(44, "button", 19);
1886
- i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_44_listener() { return ctx.changeTab("analytics"); });
1887
- i0.ɵɵelement(45, "i", 25);
1888
- i0.ɵɵelementStart(46, "span");
1889
- i0.ɵɵtext(47, "Analytics");
1923
+ i0.ɵɵelementStart(56, "button", 25);
1924
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_56_listener() { return ctx.changeTab("analytics"); });
1925
+ i0.ɵɵelement(57, "i", 31);
1926
+ i0.ɵɵelementStart(58, "span");
1927
+ i0.ɵɵtext(59, "Analytics");
1890
1928
  i0.ɵɵelementEnd()()()();
1891
- i0.ɵɵelementStart(48, "div", 26);
1892
- i0.ɵɵtemplate(49, TestFormComponentExtended_div_49_Template, 78, 29, "div", 27)(50, TestFormComponentExtended_div_50_Template, 52, 17, "div", 28)(51, TestFormComponentExtended_div_51_Template, 4, 3, "div", 29)(52, TestFormComponentExtended_div_52_Template, 4, 3, "div", 30)(53, TestFormComponentExtended_div_53_Template, 3, 2, "div", 31);
1929
+ i0.ɵɵelementStart(60, "div", 32);
1930
+ i0.ɵɵconditionalCreate(61, TestFormComponentExtended_Conditional_61_Template, 78, 29, "div", 33);
1931
+ i0.ɵɵconditionalCreate(62, TestFormComponentExtended_Conditional_62_Template, 52, 17, "div", 34);
1932
+ i0.ɵɵconditionalCreate(63, TestFormComponentExtended_Conditional_63_Template, 4, 3, "div", 35);
1933
+ i0.ɵɵconditionalCreate(64, TestFormComponentExtended_Conditional_64_Template, 4, 3, "div", 36);
1934
+ i0.ɵɵconditionalCreate(65, TestFormComponentExtended_Conditional_65_Template, 3, 2, "div", 37);
1893
1935
  i0.ɵɵelementEnd();
1894
- i0.ɵɵelementStart(54, "button", 32);
1895
- i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_54_listener() { return ctx.toggleShortcuts(); });
1896
- i0.ɵɵelement(55, "i", 33);
1936
+ i0.ɵɵelementStart(66, "button", 38);
1937
+ i0.ɵɵlistener("click", function TestFormComponentExtended_Template_button_click_66_listener() { return ctx.toggleShortcuts(); });
1938
+ i0.ɵɵelement(67, "i", 39);
1897
1939
  i0.ɵɵelementEnd();
1898
- i0.ɵɵtemplate(56, TestFormComponentExtended_div_56_Template, 32, 0, "div", 34);
1940
+ i0.ɵɵconditionalCreate(68, TestFormComponentExtended_Conditional_68_Template, 32, 0, "div", 40);
1899
1941
  i0.ɵɵelementEnd();
1900
1942
  } if (rf & 2) {
1901
- i0.ɵɵadvance(4);
1943
+ i0.ɵɵadvance(13);
1944
+ i0.ɵɵtextInterpolate(ctx.record.Name);
1945
+ i0.ɵɵadvance(3);
1902
1946
  i0.ɵɵstyleProp("background-color", ctx.getStatusColor());
1903
1947
  i0.ɵɵadvance(4);
1904
1948
  i0.ɵɵtextInterpolate(ctx.record.Name);
@@ -1909,7 +1953,7 @@ let TestFormComponentExtended = class TestFormComponentExtended extends TestForm
1909
1953
  i0.ɵɵadvance();
1910
1954
  i0.ɵɵtextInterpolate1(" ", ctx.record.Status, " ");
1911
1955
  i0.ɵɵadvance();
1912
- i0.ɵɵproperty("ngIf", ctx.record.Type);
1956
+ i0.ɵɵconditional(ctx.record.Type ? 25 : -1);
1913
1957
  i0.ɵɵadvance(6);
1914
1958
  i0.ɵɵproperty("disabled", ctx.isRefreshing);
1915
1959
  i0.ɵɵadvance();
@@ -1917,9 +1961,9 @@ let TestFormComponentExtended = class TestFormComponentExtended extends TestForm
1917
1961
  i0.ɵɵadvance();
1918
1962
  i0.ɵɵtextInterpolate1(" ", ctx.isRefreshing ? "Refreshing..." : "Refresh", " ");
1919
1963
  i0.ɵɵadvance();
1920
- i0.ɵɵproperty("ngIf", ctx.record.Description);
1964
+ i0.ɵɵconditional(ctx.record.Description ? 34 : -1);
1921
1965
  i0.ɵɵadvance();
1922
- i0.ɵɵproperty("ngIf", ctx.testRunsLoaded && ctx.testRuns.length > 0);
1966
+ i0.ɵɵconditional(ctx.testRunsLoaded && ctx.testRuns.length > 0 ? 35 : -1);
1923
1967
  i0.ɵɵadvance(3);
1924
1968
  i0.ɵɵclassProp("active", ctx.activeTab === "overview");
1925
1969
  i0.ɵɵattribute("aria-selected", ctx.activeTab === "overview");
@@ -1930,30 +1974,30 @@ let TestFormComponentExtended = class TestFormComponentExtended extends TestForm
1930
1974
  i0.ɵɵclassProp("active", ctx.activeTab === "runs");
1931
1975
  i0.ɵɵattribute("aria-selected", ctx.activeTab === "runs");
1932
1976
  i0.ɵɵadvance(4);
1933
- i0.ɵɵproperty("ngIf", ctx.testRunsLoaded);
1977
+ i0.ɵɵconditional(ctx.testRunsLoaded ? 50 : -1);
1934
1978
  i0.ɵɵadvance();
1935
1979
  i0.ɵɵclassProp("active", ctx.activeTab === "suites");
1936
1980
  i0.ɵɵattribute("aria-selected", ctx.activeTab === "suites");
1937
1981
  i0.ɵɵadvance(4);
1938
- i0.ɵɵproperty("ngIf", ctx.suiteTestsLoaded);
1982
+ i0.ɵɵconditional(ctx.suiteTestsLoaded ? 55 : -1);
1939
1983
  i0.ɵɵadvance();
1940
1984
  i0.ɵɵclassProp("active", ctx.activeTab === "analytics");
1941
1985
  i0.ɵɵattribute("aria-selected", ctx.activeTab === "analytics");
1942
1986
  i0.ɵɵadvance(5);
1943
- i0.ɵɵproperty("ngIf", ctx.activeTab === "overview");
1987
+ i0.ɵɵconditional(ctx.activeTab === "overview" ? 61 : -1);
1944
1988
  i0.ɵɵadvance();
1945
- i0.ɵɵproperty("ngIf", ctx.activeTab === "config");
1989
+ i0.ɵɵconditional(ctx.activeTab === "config" ? 62 : -1);
1946
1990
  i0.ɵɵadvance();
1947
- i0.ɵɵproperty("ngIf", ctx.activeTab === "runs");
1991
+ i0.ɵɵconditional(ctx.activeTab === "runs" ? 63 : -1);
1948
1992
  i0.ɵɵadvance();
1949
- i0.ɵɵproperty("ngIf", ctx.activeTab === "suites");
1993
+ i0.ɵɵconditional(ctx.activeTab === "suites" ? 64 : -1);
1950
1994
  i0.ɵɵadvance();
1951
- i0.ɵɵproperty("ngIf", ctx.activeTab === "analytics");
1995
+ i0.ɵɵconditional(ctx.activeTab === "analytics" ? 65 : -1);
1952
1996
  i0.ɵɵadvance();
1953
1997
  i0.ɵɵproperty("title", ctx.showShortcuts ? "Hide keyboard shortcuts" : "Show keyboard shortcuts");
1954
1998
  i0.ɵɵadvance(2);
1955
- i0.ɵɵproperty("ngIf", ctx.showShortcuts);
1956
- } }, dependencies: [i4.NgClass, i4.NgForOf, i4.NgIf, i5.DefaultValueAccessor, i5.NumberValueAccessor, i5.NgControlStatus, i5.MinValidator, i5.NgModel, i6.DialogContainerDirective, i7.ButtonComponent, i8.CodeEditorComponent, i3.EvaluationModeToggleComponent, i9.LoadingComponent, i10.EntityLinkPillComponent, i4.DatePipe], styles: ["\n\n\n\n\n\n\n\n[_nghost-%COMP%] {\n --test-primary: #2563eb;\n --test-primary-light: #3b82f6;\n --test-primary-dark: #1d4ed8;\n --test-success: #10b981;\n --test-success-light: #d1fae5;\n --test-error: #ef4444;\n --test-error-light: #fee2e2;\n --test-warning: #f59e0b;\n --test-warning-light: #fef3c7;\n --test-disabled: #6b7280;\n --test-bg: #f8fafc;\n --test-surface: #ffffff;\n --test-border: #e2e8f0;\n --test-text: #1e293b;\n --test-text-secondary: #64748b;\n --test-text-muted: #94a3b8;\n --test-radius-sm: 6px;\n --test-radius-md: 10px;\n --test-radius-lg: 16px;\n --test-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);\n --test-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n --test-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n --test-transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n display: block;\n height: 100%;\n}\n\n\n\n.test-form[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: var(--test-bg);\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n\n\n\n\n.test-header[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-bottom: 1px solid var(--test-border);\n padding: 20px;\n}\n\n.header-content[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-bottom: 16px;\n gap: 16px;\n}\n\n.header-left[_ngcontent-%COMP%] {\n display: flex;\n gap: 16px;\n flex: 1;\n min-width: 0;\n}\n\n\n\n.test-icon[_ngcontent-%COMP%] {\n width: 56px;\n height: 56px;\n border-radius: var(--test-radius-md);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 24px;\n flex-shrink: 0;\n box-shadow: var(--test-shadow-md);\n transition: var(--test-transition);\n}\n\n.test-icon[_ngcontent-%COMP%]:hover {\n transform: scale(1.05);\n}\n\n\n\n.test-info[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.test-info[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\n margin: 0 0 8px 0;\n font-size: clamp(18px, 4vw, 24px);\n font-weight: 700;\n color: var(--test-text);\n line-height: 1.2;\n word-wrap: break-word;\n}\n\n.test-meta[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n\n\n.status-badge[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 6px 14px;\n border-radius: 20px;\n color: white;\n font-size: 12px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.status-badge.status-active[_ngcontent-%COMP%] { background: linear-gradient(135deg, var(--test-success) 0%, #059669 100%); }\n.status-badge.status-disabled[_ngcontent-%COMP%] { background: linear-gradient(135deg, var(--test-disabled) 0%, #4b5563 100%); }\n.status-badge.status-pending[_ngcontent-%COMP%] { background: linear-gradient(135deg, var(--test-warning) 0%, #d97706 100%); }\n\n.status-badge-inline[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n padding: 2px 10px;\n border-radius: 10px;\n color: white;\n font-size: 11px;\n font-weight: 600;\n}\n\n.status-badge-inline.status-active[_ngcontent-%COMP%] { background: var(--test-success); }\n.status-badge-inline.status-disabled[_ngcontent-%COMP%] { background: var(--test-disabled); }\n.status-badge-inline.status-pending[_ngcontent-%COMP%] { background: var(--test-warning); }\n\n.test-type[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-size: 14px;\n color: var(--test-text-secondary);\n padding: 4px 10px;\n background: var(--test-bg);\n border-radius: var(--test-radius-sm);\n}\n\n.header-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.header-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n white-space: nowrap;\n}\n\n\n\n.test-description[_ngcontent-%COMP%] {\n padding: 16px;\n background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);\n border-radius: var(--test-radius-md);\n margin-bottom: 16px;\n border: 1px solid var(--test-border);\n}\n\n.test-description[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0;\n color: var(--test-text-secondary);\n line-height: 1.6;\n font-size: 14px;\n}\n\n\n\n\n\n.metrics-bar[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\n gap: 12px;\n}\n\n.metric-card[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n padding: 14px;\n text-align: center;\n transition: var(--test-transition);\n}\n\n.metric-card[_ngcontent-%COMP%]:hover {\n transform: translateY(-2px);\n box-shadow: var(--test-shadow-md);\n}\n\n.metric-label[_ngcontent-%COMP%] {\n font-size: 10px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n margin-bottom: 6px;\n}\n\n.metric-value[_ngcontent-%COMP%] {\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n}\n\n\n\n.metric-progress[_ngcontent-%COMP%] {\n margin-top: 8px;\n height: 4px;\n background: var(--test-border);\n border-radius: 2px;\n overflow: hidden;\n}\n\n.metric-progress-fill[_ngcontent-%COMP%] {\n height: 100%;\n background: linear-gradient(90deg, var(--test-success) 0%, #34d399 100%);\n border-radius: 2px;\n transition: width 0.5s ease-out;\n}\n\n\n\n\n\n.tabs-container[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-bottom: 1px solid var(--test-border);\n position: sticky;\n top: 0;\n z-index: 10;\n}\n\n.tabs[_ngcontent-%COMP%] {\n display: flex;\n padding: 0 20px;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n\n.tabs[_ngcontent-%COMP%]::-webkit-scrollbar {\n display: none;\n}\n\n.tab[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 14px 18px;\n border: none;\n background: transparent;\n border-bottom: 3px solid transparent;\n color: var(--test-text-secondary);\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: var(--test-transition);\n white-space: nowrap;\n}\n\n.tab[_ngcontent-%COMP%]:hover {\n color: var(--test-primary);\n background: rgba(37, 99, 235, 0.05);\n}\n\n.tab.active[_ngcontent-%COMP%] {\n color: var(--test-primary);\n border-bottom-color: var(--test-primary);\n font-weight: 600;\n}\n\n.tab[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 15px;\n}\n\n.tab-badge[_ngcontent-%COMP%] {\n background: var(--test-border);\n color: var(--test-text-secondary);\n padding: 2px 8px;\n border-radius: 10px;\n font-size: 11px;\n font-weight: 600;\n transition: var(--test-transition);\n}\n\n.tab.active[_ngcontent-%COMP%] .tab-badge[_ngcontent-%COMP%] {\n background: rgba(37, 99, 235, 0.15);\n color: var(--test-primary);\n}\n\n.tab-shortcut[_ngcontent-%COMP%] {\n font-size: 10px;\n color: var(--test-text-muted);\n background: var(--test-bg);\n padding: 2px 6px;\n border-radius: 4px;\n font-weight: 600;\n margin-left: 4px;\n}\n\n\n\n\n\n.tab-content[_ngcontent-%COMP%] {\n flex: 1;\n overflow-y: auto;\n padding: 20px;\n scroll-behavior: smooth;\n}\n\n\n\n\n\n.overview-tab[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 20px;\n animation: _ngcontent-%COMP%_fadeIn 0.3s ease-out;\n}\n\n@keyframes _ngcontent-%COMP%_fadeIn {\n from { opacity: 0; transform: translateY(10px); }\n to { opacity: 1; transform: translateY(0); }\n}\n\n\n\n.info-section[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.info-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.info-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-primary);\n}\n\n.info-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 16px;\n}\n\n.info-item[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.info-label[_ngcontent-%COMP%] {\n font-size: 11px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n}\n\n.info-value[_ngcontent-%COMP%] {\n font-size: 14px;\n color: var(--test-text);\n word-wrap: break-word;\n font-weight: 500;\n}\n\n\n\n.json-section[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.json-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.json-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-primary);\n}\n\n.json-tabs[_ngcontent-%COMP%] {\n display: flex;\n gap: 4px;\n margin-bottom: 16px;\n background: var(--test-bg);\n border-radius: var(--test-radius-md);\n padding: 4px;\n flex-wrap: wrap;\n}\n\n.json-tab[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 100px;\n padding: 10px 14px;\n border: none;\n background: transparent;\n color: var(--test-text-secondary);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n border-radius: var(--test-radius-sm);\n transition: var(--test-transition);\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n}\n\n.json-tab[_ngcontent-%COMP%]:hover {\n color: var(--test-text);\n background: rgba(0, 0, 0, 0.05);\n}\n\n.json-tab.active[_ngcontent-%COMP%] {\n background: var(--test-surface);\n color: var(--test-primary);\n font-weight: 600;\n box-shadow: var(--test-shadow-sm);\n}\n\n.json-tab[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 12px;\n}\n\n.code-editor-container[_ngcontent-%COMP%] {\n border-radius: var(--test-radius-md);\n overflow: hidden;\n border: 1px solid var(--test-border);\n min-height: 200px;\n max-height: 400px;\n}\n\n\n\n\n\n.config-tab[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 20px;\n animation: _ngcontent-%COMP%_fadeIn 0.3s ease-out;\n}\n\n.config-section[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.config-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.config-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-primary);\n}\n\n.config-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n gap: 20px;\n}\n\n.config-item[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.config-item.full-width[_ngcontent-%COMP%] {\n grid-column: 1 / -1;\n}\n\n.config-item[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n}\n\n.config-input[_ngcontent-%COMP%] {\n padding: 10px 14px;\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-sm);\n font-size: 14px;\n transition: var(--test-transition);\n background: var(--test-surface);\n}\n\n.config-input[_ngcontent-%COMP%]:focus {\n outline: none;\n border-color: var(--test-primary);\n box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);\n}\n\n.config-input[_ngcontent-%COMP%]::placeholder {\n color: var(--test-text-muted);\n}\n\n.config-hint[_ngcontent-%COMP%] {\n font-size: 11px;\n color: var(--test-text-muted);\n margin-top: 4px;\n}\n\n.config-editor-container[_ngcontent-%COMP%] {\n border-radius: var(--test-radius-md);\n overflow: hidden;\n border: 1px solid var(--test-border);\n min-height: 200px;\n}\n\n.config-editor-container.small[_ngcontent-%COMP%] {\n min-height: 100px;\n max-height: 150px;\n}\n\n\n\n\n\n.runs-tab[_ngcontent-%COMP%], \n.suites-tab[_ngcontent-%COMP%] {\n animation: _ngcontent-%COMP%_fadeIn 0.3s ease-out;\n}\n\n\n\n.loading-state[_ngcontent-%COMP%] {\n padding: 0;\n}\n\n.skeleton-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.skeleton-card[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 16px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n border: 1px solid var(--test-border);\n}\n\n.skeleton-icon[_ngcontent-%COMP%] {\n width: 44px;\n height: 44px;\n border-radius: var(--test-radius-md);\n background: linear-gradient(90deg, #e2e8f0 25%, #f1f5f9 50%, #e2e8f0 75%);\n background-size: 200% 100%;\n animation: _ngcontent-%COMP%_shimmer 1.5s infinite;\n flex-shrink: 0;\n}\n\n.skeleton-content[_ngcontent-%COMP%] {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.skeleton-line[_ngcontent-%COMP%] {\n height: 14px;\n border-radius: 4px;\n background: linear-gradient(90deg, #e2e8f0 25%, #f1f5f9 50%, #e2e8f0 75%);\n background-size: 200% 100%;\n animation: _ngcontent-%COMP%_shimmer 1.5s infinite;\n}\n\n.skeleton-line.wide[_ngcontent-%COMP%] { width: 70%; }\n.skeleton-line.narrow[_ngcontent-%COMP%] { width: 40%; }\n\n@keyframes _ngcontent-%COMP%_shimmer {\n 0% { background-position: 200% 0; }\n 100% { background-position: -200% 0; }\n}\n\n\n\n.runs-list[_ngcontent-%COMP%], \n.suites-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.run-item[_ngcontent-%COMP%], \n.suite-item[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 16px;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.run-item[_ngcontent-%COMP%]:hover, \n.suite-item[_ngcontent-%COMP%]:hover {\n background: rgba(37, 99, 235, 0.05);\n border-color: var(--test-primary-light);\n transform: translateX(4px);\n box-shadow: var(--test-shadow-sm);\n}\n\n.run-icon[_ngcontent-%COMP%], \n.suite-icon[_ngcontent-%COMP%] {\n width: 44px;\n height: 44px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--test-radius-md);\n color: white;\n font-size: 18px;\n flex-shrink: 0;\n box-shadow: var(--test-shadow-sm);\n}\n\n.suite-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);\n}\n\n.run-content[_ngcontent-%COMP%], \n.suite-content[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.run-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 4px;\n}\n\n.run-id[_ngcontent-%COMP%] {\n font-size: 14px;\n font-weight: 600;\n color: var(--test-text);\n}\n\n.run-status[_ngcontent-%COMP%] {\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n}\n\n.suite-name[_ngcontent-%COMP%] {\n font-size: 14px;\n font-weight: 600;\n color: var(--test-text);\n margin-bottom: 4px;\n}\n\n.run-meta[_ngcontent-%COMP%], \n.suite-meta[_ngcontent-%COMP%] {\n display: flex;\n gap: 16px;\n font-size: 12px;\n color: var(--test-text-secondary);\n flex-wrap: wrap;\n}\n\n.run-meta[_ngcontent-%COMP%] span[_ngcontent-%COMP%], \n.suite-meta[_ngcontent-%COMP%] span[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.run-meta[_ngcontent-%COMP%] span[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.suite-meta[_ngcontent-%COMP%] span[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-text-muted);\n font-size: 11px;\n}\n\n.run-item[_ngcontent-%COMP%] > i.fa-chevron-right[_ngcontent-%COMP%], \n.suite-item[_ngcontent-%COMP%] > i.fa-chevron-right[_ngcontent-%COMP%] {\n color: var(--test-text-muted);\n font-size: 14px;\n transition: var(--test-transition);\n}\n\n.run-item[_ngcontent-%COMP%]:hover > i.fa-chevron-right[_ngcontent-%COMP%], \n.suite-item[_ngcontent-%COMP%]:hover > i.fa-chevron-right[_ngcontent-%COMP%] {\n color: var(--test-primary);\n transform: translateX(2px);\n}\n\n\n\n.run-eval-stack[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-top: 8px;\n flex-wrap: wrap;\n}\n\n\n\n.eval-pill[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border-radius: 16px;\n font-size: 11px;\n font-weight: 600;\n transition: var(--test-transition);\n}\n\n.eval-pill[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 10px;\n}\n\n\n\n.eval-pill.status-pill.status-passed[_ngcontent-%COMP%] {\n background: #dcfce7;\n color: #16a34a;\n}\n\n.eval-pill.status-pill.status-failed[_ngcontent-%COMP%] {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.status-pill.status-error[_ngcontent-%COMP%] {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.status-pill.status-timeout[_ngcontent-%COMP%] {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.status-pill.status-skipped[_ngcontent-%COMP%], \n.eval-pill.status-pill.status-pending[_ngcontent-%COMP%] {\n background: #f1f5f9;\n color: #64748b;\n}\n\n.eval-pill.status-pill.status-running[_ngcontent-%COMP%] {\n background: #dbeafe;\n color: #2563eb;\n}\n\n\n\n.eval-pill.human-pill.no-feedback[_ngcontent-%COMP%] {\n background: #f1f5f9;\n color: #94a3b8;\n padding: 4px 8px;\n}\n\n.eval-pill.human-pill.has-feedback.rating-low[_ngcontent-%COMP%] {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.human-pill.has-feedback.rating-medium[_ngcontent-%COMP%] {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.human-pill.has-feedback.rating-good[_ngcontent-%COMP%] {\n background: #d1fae5;\n color: #059669;\n}\n\n.eval-pill.human-pill.has-feedback.rating-excellent[_ngcontent-%COMP%] {\n background: #dcfce7;\n color: #16a34a;\n}\n\n\n\n.eval-pill.auto-pill.no-score[_ngcontent-%COMP%] {\n background: #f1f5f9;\n color: #94a3b8;\n padding: 4px 8px;\n}\n\n.eval-pill.auto-pill.has-score.score-low[_ngcontent-%COMP%] {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.auto-pill.has-score.score-medium[_ngcontent-%COMP%] {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.auto-pill.has-score.score-good[_ngcontent-%COMP%] {\n background: #d1fae5;\n color: #059669;\n}\n\n.eval-pill.auto-pill.has-score.score-excellent[_ngcontent-%COMP%] {\n background: #dcfce7;\n color: #16a34a;\n}\n\n\n\n.run-tags[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 8px;\n flex-wrap: wrap;\n}\n\n.run-tag[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n padding: 2px 8px;\n background: rgba(37, 99, 235, 0.1);\n color: var(--test-primary);\n border-radius: 10px;\n font-size: 11px;\n font-weight: 500;\n}\n\n.run-tag-more[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n padding: 2px 8px;\n background: var(--test-border);\n color: var(--test-text-muted);\n border-radius: 10px;\n font-size: 11px;\n font-weight: 500;\n}\n\n\n\n\n\n.empty-state[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 24px;\n text-align: center;\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n}\n\n.empty-icon[_ngcontent-%COMP%] {\n width: 80px;\n height: 80px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: var(--test-bg);\n border-radius: 50%;\n margin-bottom: 20px;\n}\n\n.empty-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 36px;\n color: var(--test-text-muted);\n}\n\n.empty-state[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n margin: 0 0 8px 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--test-text);\n}\n\n.empty-state[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0 0 20px 0;\n font-size: 14px;\n color: var(--test-text-secondary);\n max-width: 300px;\n}\n\n\n\n.no-data[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 20px;\n color: var(--test-text-muted);\n text-align: center;\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n}\n\n.no-data[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 48px;\n margin-bottom: 16px;\n opacity: 0.3;\n}\n\n.no-data[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 14px;\n}\n\n\n\n\n\n\n\n.shortcuts-toggle[_ngcontent-%COMP%] {\n position: fixed;\n bottom: 20px;\n right: 20px;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n box-shadow: var(--test-shadow-md);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--test-text-secondary);\n font-size: 14px;\n z-index: 99;\n transition: var(--test-transition);\n opacity: 0.7;\n}\n\n.shortcuts-toggle[_ngcontent-%COMP%]:hover {\n opacity: 1;\n transform: scale(1.1);\n color: var(--test-primary);\n border-color: var(--test-primary);\n}\n\n.keyboard-shortcuts[_ngcontent-%COMP%] {\n position: fixed;\n bottom: 20px;\n right: 20px;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n padding: 12px 16px;\n box-shadow: var(--test-shadow-lg);\n font-size: 12px;\n color: var(--test-text-secondary);\n z-index: 100;\n max-width: 260px;\n}\n\n.shortcuts-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 10px;\n padding-bottom: 8px;\n border-bottom: 1px solid var(--test-border);\n font-weight: 600;\n color: var(--test-text);\n}\n\n.shortcuts-close[_ngcontent-%COMP%] {\n margin-left: auto;\n background: none;\n border: none;\n cursor: pointer;\n color: var(--test-text-muted);\n font-size: 12px;\n padding: 2px 4px;\n border-radius: 4px;\n transition: var(--test-transition);\n}\n\n.shortcuts-close[_ngcontent-%COMP%]:hover {\n color: var(--test-text);\n background: var(--test-border);\n}\n\n.shortcut-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.shortcut-item[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.shortcut-keys[_ngcontent-%COMP%] {\n display: flex;\n gap: 4px;\n}\n\n.shortcut-keys[_ngcontent-%COMP%] kbd[_ngcontent-%COMP%] {\n background: var(--test-bg);\n border: 1px solid var(--test-border);\n border-radius: 4px;\n padding: 2px 6px;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n font-size: 11px;\n color: var(--test-text);\n}\n\n\n\n\n\n@media (max-width: 1024px) {\n .metrics-bar[_ngcontent-%COMP%] {\n grid-template-columns: repeat(2, 1fr);\n }\n\n .info-grid[_ngcontent-%COMP%] {\n grid-template-columns: repeat(2, 1fr);\n }\n\n .config-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n }\n\n .keyboard-shortcuts[_ngcontent-%COMP%], .shortcuts-toggle[_ngcontent-%COMP%] {\n display: none;\n }\n}\n\n\n\n\n\n@media (max-width: 768px) {\n .test-form[_ngcontent-%COMP%] {\n height: auto;\n min-height: 100%;\n }\n\n .test-header[_ngcontent-%COMP%] {\n padding: 16px;\n }\n\n .header-content[_ngcontent-%COMP%] {\n flex-direction: column;\n gap: 16px;\n }\n\n .header-left[_ngcontent-%COMP%] {\n width: 100%;\n }\n\n .test-icon[_ngcontent-%COMP%] {\n width: 48px;\n height: 48px;\n font-size: 20px;\n }\n\n .test-info[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\n font-size: 18px;\n }\n\n .test-meta[_ngcontent-%COMP%] {\n gap: 8px;\n }\n\n .status-badge[_ngcontent-%COMP%] {\n padding: 4px 10px;\n font-size: 11px;\n }\n\n .header-actions[_ngcontent-%COMP%] {\n width: 100%;\n justify-content: stretch;\n }\n\n .header-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n flex: 1;\n }\n\n .metrics-bar[_ngcontent-%COMP%] {\n grid-template-columns: repeat(2, 1fr);\n gap: 10px;\n }\n\n .metric-card[_ngcontent-%COMP%] {\n padding: 12px;\n }\n\n .metric-value[_ngcontent-%COMP%] {\n font-size: 16px;\n }\n\n .tabs[_ngcontent-%COMP%] {\n padding: 0 12px;\n }\n\n .tab[_ngcontent-%COMP%] {\n padding: 12px 14px;\n font-size: 13px;\n gap: 6px;\n }\n\n .tab[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 14px;\n }\n\n .tab-shortcut[_ngcontent-%COMP%] {\n display: none;\n }\n\n .tab-content[_ngcontent-%COMP%] {\n padding: 16px;\n }\n\n .info-section[_ngcontent-%COMP%], \n .json-section[_ngcontent-%COMP%], \n .config-section[_ngcontent-%COMP%] {\n padding: 18px;\n }\n\n .info-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n }\n\n .json-tabs[_ngcontent-%COMP%] {\n flex-direction: column;\n }\n\n .json-tab[_ngcontent-%COMP%] {\n min-width: 0;\n justify-content: flex-start;\n }\n\n .run-item[_ngcontent-%COMP%], \n .suite-item[_ngcontent-%COMP%] {\n padding: 14px;\n }\n\n .run-icon[_ngcontent-%COMP%], \n .suite-icon[_ngcontent-%COMP%] {\n width: 40px;\n height: 40px;\n font-size: 16px;\n }\n\n .run-meta[_ngcontent-%COMP%], \n .suite-meta[_ngcontent-%COMP%] {\n flex-direction: column;\n gap: 4px;\n }\n\n .empty-state[_ngcontent-%COMP%] {\n padding: 40px 20px;\n }\n\n .empty-icon[_ngcontent-%COMP%] {\n width: 64px;\n height: 64px;\n }\n\n .empty-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 28px;\n }\n}\n\n\n\n\n\n@media (max-width: 480px) {\n .test-header[_ngcontent-%COMP%] {\n padding: 12px;\n }\n\n .header-left[_ngcontent-%COMP%] {\n gap: 12px;\n }\n\n .test-icon[_ngcontent-%COMP%] {\n width: 40px;\n height: 40px;\n font-size: 18px;\n border-radius: 8px;\n }\n\n .test-info[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\n font-size: 16px;\n }\n\n .metrics-bar[_ngcontent-%COMP%] {\n grid-template-columns: 1fr 1fr;\n }\n\n .tabs[_ngcontent-%COMP%] {\n padding: 0 8px;\n }\n\n .tab[_ngcontent-%COMP%] {\n padding: 10px 12px;\n font-size: 12px;\n }\n\n .tab-badge[_ngcontent-%COMP%] {\n display: none;\n }\n\n .tab-content[_ngcontent-%COMP%] {\n padding: 12px;\n }\n\n .run-header[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: flex-start;\n gap: 4px;\n }\n}\n\n\n\n\n\n@media (hover: none) and (pointer: coarse) {\n .tab[_ngcontent-%COMP%], \n .json-tab[_ngcontent-%COMP%], \n .run-item[_ngcontent-%COMP%], \n .suite-item[_ngcontent-%COMP%] {\n -webkit-tap-highlight-color: transparent;\n }\n\n .run-item[_ngcontent-%COMP%]:active, \n .suite-item[_ngcontent-%COMP%]:active {\n background: rgba(37, 99, 235, 0.1);\n transform: scale(0.98);\n }\n\n .tab[_ngcontent-%COMP%]:active, \n .json-tab[_ngcontent-%COMP%]:active {\n background: rgba(37, 99, 235, 0.1);\n }\n\n \n\n .tab[_ngcontent-%COMP%] {\n min-height: 48px;\n }\n\n .run-item[_ngcontent-%COMP%], \n .suite-item[_ngcontent-%COMP%] {\n min-height: 64px;\n }\n}\n\n\n\n\n\n@media (prefers-reduced-motion: reduce) {\n *[_ngcontent-%COMP%], \n *[_ngcontent-%COMP%]::before, \n *[_ngcontent-%COMP%]::after {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n }\n\n .skeleton-icon[_ngcontent-%COMP%], \n .skeleton-line[_ngcontent-%COMP%] {\n animation: none;\n background: #e2e8f0;\n }\n}\n\n\n\n\n\n.history-tab[_ngcontent-%COMP%] {\n animation: _ngcontent-%COMP%_fadeIn 0.3s ease-out;\n}\n\n.history-content[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 24px;\n}\n\n\n\n.history-filters[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n gap: 16px;\n padding: 16px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n box-shadow: var(--test-shadow-sm);\n}\n\n.time-range-filters[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n.filter-label[_ngcontent-%COMP%] {\n font-size: 13px;\n font-weight: 600;\n color: var(--test-text-secondary);\n margin-right: 4px;\n}\n\n.filter-btn[_ngcontent-%COMP%] {\n padding: 8px 16px;\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-sm);\n background: var(--test-surface);\n color: var(--test-text-secondary);\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.filter-btn[_ngcontent-%COMP%]:hover {\n border-color: var(--test-primary-light);\n color: var(--test-primary);\n background: rgba(37, 99, 235, 0.05);\n}\n\n.filter-btn.active[_ngcontent-%COMP%] {\n background: var(--test-primary);\n color: white;\n border-color: var(--test-primary);\n}\n\n.history-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n}\n\n\n\n.history-kpi-cards[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n gap: 16px;\n}\n\n.kpi-card[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 18px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n box-shadow: var(--test-shadow-sm);\n transition: var(--test-transition);\n}\n\n.kpi-card[_ngcontent-%COMP%]:hover {\n transform: translateY(-2px);\n box-shadow: var(--test-shadow-md);\n}\n\n.kpi-icon[_ngcontent-%COMP%] {\n width: 48px;\n height: 48px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: linear-gradient(135deg, var(--test-primary) 0%, var(--test-primary-dark) 100%);\n border-radius: var(--test-radius-md);\n color: white;\n font-size: 20px;\n flex-shrink: 0;\n}\n\n.kpi-icon.pass-rate[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, var(--test-success) 0%, #059669 100%);\n}\n\n.kpi-content[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.kpi-value[_ngcontent-%COMP%] {\n font-size: 22px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.kpi-label[_ngcontent-%COMP%] {\n font-size: 12px;\n color: var(--test-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-top: 2px;\n}\n\n.trend-icon[_ngcontent-%COMP%] {\n font-size: 14px;\n}\n\n.trend-icon.trend-up[_ngcontent-%COMP%] {\n color: var(--test-success);\n}\n\n.trend-icon.trend-down[_ngcontent-%COMP%] {\n color: var(--test-error);\n}\n\n\n\n.history-section[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.history-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n.history-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-primary);\n}\n\n\n\n.history-table-container[_ngcontent-%COMP%] {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.history-table[_ngcontent-%COMP%] {\n width: 100%;\n border-collapse: collapse;\n font-size: 14px;\n}\n\n.history-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%], \n.history-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%] {\n padding: 12px 16px;\n text-align: left;\n border-bottom: 1px solid var(--test-border);\n}\n\n.history-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%] {\n font-size: 11px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n background: var(--test-bg);\n}\n\n.history-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover {\n background: rgba(37, 99, 235, 0.03);\n}\n\n.date-cell[_ngcontent-%COMP%] {\n font-weight: 600;\n color: var(--test-text);\n}\n\n.passed-cell[_ngcontent-%COMP%] {\n color: var(--test-success);\n font-weight: 600;\n}\n\n.failed-cell[_ngcontent-%COMP%] {\n color: var(--test-error);\n font-weight: 600;\n}\n\n.pass-rate-cell[_ngcontent-%COMP%] {\n min-width: 120px;\n}\n\n.pass-rate-bar[_ngcontent-%COMP%] {\n position: relative;\n height: 24px;\n background: var(--test-bg);\n border-radius: 12px;\n overflow: hidden;\n}\n\n.pass-rate-fill[_ngcontent-%COMP%] {\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n background: linear-gradient(90deg, var(--test-success) 0%, #34d399 100%);\n border-radius: 12px;\n transition: width 0.5s ease-out;\n}\n\n.pass-rate-text[_ngcontent-%COMP%] {\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n font-size: 11px;\n font-weight: 700;\n color: var(--test-text);\n z-index: 1;\n}\n\n\n\n.suite-performance-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.suite-perf-card[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 16px;\n padding: 18px;\n background: var(--test-bg);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.suite-perf-card[_ngcontent-%COMP%]:hover {\n background: rgba(37, 99, 235, 0.05);\n border-color: var(--test-primary-light);\n transform: translateX(4px);\n}\n\n.suite-perf-header[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.suite-perf-name[_ngcontent-%COMP%] {\n font-size: 15px;\n font-weight: 600;\n color: var(--test-text);\n margin-bottom: 6px;\n}\n\n.suite-perf-tags[_ngcontent-%COMP%] {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n.tag-mini[_ngcontent-%COMP%] {\n display: inline-flex;\n padding: 2px 8px;\n background: rgba(37, 99, 235, 0.1);\n color: var(--test-primary);\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n}\n\n.tag-more[_ngcontent-%COMP%] {\n display: inline-flex;\n padding: 2px 8px;\n background: var(--test-border);\n color: var(--test-text-muted);\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n}\n\n.suite-perf-stats[_ngcontent-%COMP%] {\n display: flex;\n gap: 24px;\n flex-wrap: wrap;\n}\n\n.suite-stat[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n}\n\n.suite-stat[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%] {\n font-size: 16px;\n font-weight: 700;\n color: var(--test-text);\n}\n\n.suite-stat[_ngcontent-%COMP%] .stat-value.pass-rate.high[_ngcontent-%COMP%] {\n color: var(--test-success);\n}\n\n.suite-stat[_ngcontent-%COMP%] .stat-value.pass-rate.low[_ngcontent-%COMP%] {\n color: var(--test-error);\n}\n\n.suite-stat[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%] {\n font-size: 10px;\n color: var(--test-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.suite-perf-arrow[_ngcontent-%COMP%] {\n color: var(--test-text-muted);\n font-size: 14px;\n transition: var(--test-transition);\n}\n\n.suite-perf-card[_ngcontent-%COMP%]:hover .suite-perf-arrow[_ngcontent-%COMP%] {\n color: var(--test-primary);\n transform: translateX(2px);\n}\n\n\n\n\n\n@media print {\n .test-form[_ngcontent-%COMP%] {\n background: white;\n height: auto;\n }\n\n .header-actions[_ngcontent-%COMP%], \n .tabs-container[_ngcontent-%COMP%], \n .keyboard-shortcuts[_ngcontent-%COMP%] {\n display: none !important;\n }\n\n .tab-content[_ngcontent-%COMP%] {\n overflow: visible;\n padding: 0;\n }\n\n .info-section[_ngcontent-%COMP%], \n .json-section[_ngcontent-%COMP%], \n .config-section[_ngcontent-%COMP%], \n .empty-state[_ngcontent-%COMP%] {\n break-inside: avoid;\n box-shadow: none;\n border: 1px solid #ddd;\n }\n}"], changeDetection: 0 }); }
1999
+ i0.ɵɵconditional(ctx.showShortcuts ? 68 : -1);
2000
+ } }, dependencies: [i5.NgClass, i6.DefaultValueAccessor, i6.NumberValueAccessor, i6.NgControlStatus, i6.MinValidator, i6.NgModel, i7.DialogContainerDirective, i8.ButtonComponent, i9.CodeEditorComponent, i3.EvaluationModeToggleComponent, i10.LoadingComponent, i11.EntityLinkPillComponent, i5.DatePipe], styles: ["\n\n\n\n\n\n\n\n[_nghost-%COMP%] {\n --test-primary: #2563eb;\n --test-primary-light: #3b82f6;\n --test-primary-dark: #1d4ed8;\n --test-success: #10b981;\n --test-success-light: #d1fae5;\n --test-error: #ef4444;\n --test-error-light: #fee2e2;\n --test-warning: #f59e0b;\n --test-warning-light: #fef3c7;\n --test-disabled: #6b7280;\n --test-bg: #f8fafc;\n --test-surface: #ffffff;\n --test-border: #e2e8f0;\n --test-text: #1e293b;\n --test-text-secondary: #64748b;\n --test-text-muted: #94a3b8;\n --test-radius-sm: 6px;\n --test-radius-md: 10px;\n --test-radius-lg: 16px;\n --test-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);\n --test-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n --test-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n --test-transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n display: block;\n height: 100%;\n}\n\n\n\n.breadcrumb[_ngcontent-%COMP%] {\n margin-bottom: 16px;\n}\n\n.breadcrumb[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 4px;\n list-style: none;\n margin: 0;\n padding: 0;\n font-size: 13px;\n}\n\n.breadcrumb[_ngcontent-%COMP%] li[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.breadcrumb[_ngcontent-%COMP%] a[_ngcontent-%COMP%] {\n color: var(--test-primary);\n text-decoration: none;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 8px;\n border-radius: 6px;\n transition: background 0.15s;\n}\n\n.breadcrumb[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover {\n background: rgba(37, 99, 235, 0.1);\n text-decoration: none;\n}\n\n.breadcrumb[_ngcontent-%COMP%] .separator[_ngcontent-%COMP%] {\n font-size: 10px;\n color: var(--test-text-muted);\n margin: 0 4px;\n}\n\n.breadcrumb[_ngcontent-%COMP%] .current[_ngcontent-%COMP%] {\n color: var(--test-text-secondary);\n font-weight: 500;\n}\n\n.breadcrumb-text[_ngcontent-%COMP%] {\n max-width: 200px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n\n\n.test-form[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: var(--test-bg);\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n\n\n\n\n.test-header[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-bottom: 1px solid var(--test-border);\n padding: 20px;\n}\n\n.header-content[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-bottom: 16px;\n gap: 16px;\n}\n\n.header-left[_ngcontent-%COMP%] {\n display: flex;\n gap: 16px;\n flex: 1;\n min-width: 0;\n}\n\n\n\n.test-icon[_ngcontent-%COMP%] {\n width: 56px;\n height: 56px;\n border-radius: var(--test-radius-md);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 24px;\n flex-shrink: 0;\n box-shadow: var(--test-shadow-md);\n transition: var(--test-transition);\n}\n\n.test-icon[_ngcontent-%COMP%]:hover {\n transform: scale(1.05);\n}\n\n\n\n.test-info[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.test-info[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\n margin: 0 0 8px 0;\n font-size: clamp(18px, 4vw, 24px);\n font-weight: 700;\n color: var(--test-text);\n line-height: 1.2;\n word-wrap: break-word;\n}\n\n.test-meta[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n\n\n.status-badge[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 6px 14px;\n border-radius: 20px;\n color: white;\n font-size: 12px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.status-badge.status-active[_ngcontent-%COMP%] { background: linear-gradient(135deg, var(--test-success) 0%, #059669 100%); }\n.status-badge.status-disabled[_ngcontent-%COMP%] { background: linear-gradient(135deg, var(--test-disabled) 0%, #4b5563 100%); }\n.status-badge.status-pending[_ngcontent-%COMP%] { background: linear-gradient(135deg, var(--test-warning) 0%, #d97706 100%); }\n\n.status-badge-inline[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n padding: 2px 10px;\n border-radius: 10px;\n color: white;\n font-size: 11px;\n font-weight: 600;\n}\n\n.status-badge-inline.status-active[_ngcontent-%COMP%] { background: var(--test-success); }\n.status-badge-inline.status-disabled[_ngcontent-%COMP%] { background: var(--test-disabled); }\n.status-badge-inline.status-pending[_ngcontent-%COMP%] { background: var(--test-warning); }\n\n.test-type[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-size: 14px;\n color: var(--test-text-secondary);\n padding: 4px 10px;\n background: var(--test-bg);\n border-radius: var(--test-radius-sm);\n}\n\n.header-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.header-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n white-space: nowrap;\n}\n\n\n\n.test-description[_ngcontent-%COMP%] {\n padding: 16px;\n background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);\n border-radius: var(--test-radius-md);\n margin-bottom: 16px;\n border: 1px solid var(--test-border);\n}\n\n.test-description[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0;\n color: var(--test-text-secondary);\n line-height: 1.6;\n font-size: 14px;\n}\n\n\n\n\n\n.metrics-bar[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\n gap: 12px;\n}\n\n.metric-card[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n padding: 14px;\n text-align: center;\n transition: var(--test-transition);\n}\n\n.metric-card[_ngcontent-%COMP%]:hover {\n transform: translateY(-2px);\n box-shadow: var(--test-shadow-md);\n}\n\n.metric-label[_ngcontent-%COMP%] {\n font-size: 10px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n margin-bottom: 6px;\n}\n\n.metric-value[_ngcontent-%COMP%] {\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n}\n\n\n\n.metric-progress[_ngcontent-%COMP%] {\n margin-top: 8px;\n height: 4px;\n background: var(--test-border);\n border-radius: 2px;\n overflow: hidden;\n}\n\n.metric-progress-fill[_ngcontent-%COMP%] {\n height: 100%;\n background: linear-gradient(90deg, var(--test-success) 0%, #34d399 100%);\n border-radius: 2px;\n transition: width 0.5s ease-out;\n}\n\n\n\n\n\n.tabs-container[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-bottom: 1px solid var(--test-border);\n position: sticky;\n top: 0;\n z-index: 10;\n}\n\n.tabs[_ngcontent-%COMP%] {\n display: flex;\n padding: 0 20px;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n\n.tabs[_ngcontent-%COMP%]::-webkit-scrollbar {\n display: none;\n}\n\n.tab[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 14px 18px;\n border: none;\n background: transparent;\n border-bottom: 3px solid transparent;\n color: var(--test-text-secondary);\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: var(--test-transition);\n white-space: nowrap;\n}\n\n.tab[_ngcontent-%COMP%]:hover {\n color: var(--test-primary);\n background: rgba(37, 99, 235, 0.05);\n}\n\n.tab.active[_ngcontent-%COMP%] {\n color: var(--test-primary);\n border-bottom-color: var(--test-primary);\n font-weight: 600;\n}\n\n.tab[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 15px;\n}\n\n.tab-badge[_ngcontent-%COMP%] {\n background: var(--test-border);\n color: var(--test-text-secondary);\n padding: 2px 8px;\n border-radius: 10px;\n font-size: 11px;\n font-weight: 600;\n transition: var(--test-transition);\n}\n\n.tab.active[_ngcontent-%COMP%] .tab-badge[_ngcontent-%COMP%] {\n background: rgba(37, 99, 235, 0.15);\n color: var(--test-primary);\n}\n\n.tab-shortcut[_ngcontent-%COMP%] {\n font-size: 10px;\n color: var(--test-text-muted);\n background: var(--test-bg);\n padding: 2px 6px;\n border-radius: 4px;\n font-weight: 600;\n margin-left: 4px;\n}\n\n\n\n\n\n.tab-content[_ngcontent-%COMP%] {\n flex: 1;\n overflow-y: auto;\n padding: 20px;\n scroll-behavior: smooth;\n}\n\n\n\n\n\n.overview-tab[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 20px;\n animation: _ngcontent-%COMP%_fadeIn 0.3s ease-out;\n}\n\n@keyframes _ngcontent-%COMP%_fadeIn {\n from { opacity: 0; transform: translateY(10px); }\n to { opacity: 1; transform: translateY(0); }\n}\n\n\n\n.info-section[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.info-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.info-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-primary);\n}\n\n.info-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 16px;\n}\n\n.info-item[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.info-label[_ngcontent-%COMP%] {\n font-size: 11px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n}\n\n.info-value[_ngcontent-%COMP%] {\n font-size: 14px;\n color: var(--test-text);\n word-wrap: break-word;\n font-weight: 500;\n}\n\n\n\n.json-section[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.json-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.json-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-primary);\n}\n\n.json-tabs[_ngcontent-%COMP%] {\n display: flex;\n gap: 4px;\n margin-bottom: 16px;\n background: var(--test-bg);\n border-radius: var(--test-radius-md);\n padding: 4px;\n flex-wrap: wrap;\n}\n\n.json-tab[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 100px;\n padding: 10px 14px;\n border: none;\n background: transparent;\n color: var(--test-text-secondary);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n border-radius: var(--test-radius-sm);\n transition: var(--test-transition);\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n}\n\n.json-tab[_ngcontent-%COMP%]:hover {\n color: var(--test-text);\n background: rgba(0, 0, 0, 0.05);\n}\n\n.json-tab.active[_ngcontent-%COMP%] {\n background: var(--test-surface);\n color: var(--test-primary);\n font-weight: 600;\n box-shadow: var(--test-shadow-sm);\n}\n\n.json-tab[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 12px;\n}\n\n.code-editor-container[_ngcontent-%COMP%] {\n border-radius: var(--test-radius-md);\n overflow: hidden;\n border: 1px solid var(--test-border);\n min-height: 200px;\n max-height: 400px;\n}\n\n\n\n\n\n.config-tab[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 20px;\n animation: _ngcontent-%COMP%_fadeIn 0.3s ease-out;\n}\n\n.config-section[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.config-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.config-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-primary);\n}\n\n.config-grid[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n gap: 20px;\n}\n\n.config-item[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.config-item.full-width[_ngcontent-%COMP%] {\n grid-column: 1 / -1;\n}\n\n.config-item[_ngcontent-%COMP%] label[_ngcontent-%COMP%] {\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n}\n\n.config-input[_ngcontent-%COMP%] {\n padding: 10px 14px;\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-sm);\n font-size: 14px;\n transition: var(--test-transition);\n background: var(--test-surface);\n}\n\n.config-input[_ngcontent-%COMP%]:focus {\n outline: none;\n border-color: var(--test-primary);\n box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);\n}\n\n.config-input[_ngcontent-%COMP%]::placeholder {\n color: var(--test-text-muted);\n}\n\n.config-hint[_ngcontent-%COMP%] {\n font-size: 11px;\n color: var(--test-text-muted);\n margin-top: 4px;\n}\n\n.config-editor-container[_ngcontent-%COMP%] {\n border-radius: var(--test-radius-md);\n overflow: hidden;\n border: 1px solid var(--test-border);\n min-height: 200px;\n}\n\n.config-editor-container.small[_ngcontent-%COMP%] {\n min-height: 100px;\n max-height: 150px;\n}\n\n\n\n\n\n.runs-tab[_ngcontent-%COMP%], \n.suites-tab[_ngcontent-%COMP%] {\n animation: _ngcontent-%COMP%_fadeIn 0.3s ease-out;\n}\n\n\n\n.loading-state[_ngcontent-%COMP%] {\n padding: 0;\n}\n\n.skeleton-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.skeleton-card[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 16px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n border: 1px solid var(--test-border);\n}\n\n.skeleton-icon[_ngcontent-%COMP%] {\n width: 44px;\n height: 44px;\n border-radius: var(--test-radius-md);\n background: linear-gradient(90deg, #e2e8f0 25%, #f1f5f9 50%, #e2e8f0 75%);\n background-size: 200% 100%;\n animation: _ngcontent-%COMP%_shimmer 1.5s infinite;\n flex-shrink: 0;\n}\n\n.skeleton-content[_ngcontent-%COMP%] {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.skeleton-line[_ngcontent-%COMP%] {\n height: 14px;\n border-radius: 4px;\n background: linear-gradient(90deg, #e2e8f0 25%, #f1f5f9 50%, #e2e8f0 75%);\n background-size: 200% 100%;\n animation: _ngcontent-%COMP%_shimmer 1.5s infinite;\n}\n\n.skeleton-line.wide[_ngcontent-%COMP%] { width: 70%; }\n.skeleton-line.narrow[_ngcontent-%COMP%] { width: 40%; }\n\n@keyframes _ngcontent-%COMP%_shimmer {\n 0% { background-position: 200% 0; }\n 100% { background-position: -200% 0; }\n}\n\n\n\n.runs-list[_ngcontent-%COMP%], \n.suites-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.run-item[_ngcontent-%COMP%], \n.suite-item[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 16px;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.run-item[_ngcontent-%COMP%]:hover, \n.suite-item[_ngcontent-%COMP%]:hover {\n background: rgba(37, 99, 235, 0.05);\n border-color: var(--test-primary-light);\n transform: translateX(4px);\n box-shadow: var(--test-shadow-sm);\n}\n\n.run-icon[_ngcontent-%COMP%], \n.suite-icon[_ngcontent-%COMP%] {\n width: 44px;\n height: 44px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--test-radius-md);\n color: white;\n font-size: 18px;\n flex-shrink: 0;\n box-shadow: var(--test-shadow-sm);\n}\n\n.suite-icon[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);\n}\n\n.run-content[_ngcontent-%COMP%], \n.suite-content[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.run-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 4px;\n}\n\n.run-id[_ngcontent-%COMP%] {\n font-size: 14px;\n font-weight: 600;\n color: var(--test-text);\n}\n\n.run-status[_ngcontent-%COMP%] {\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n}\n\n.suite-name[_ngcontent-%COMP%] {\n font-size: 14px;\n font-weight: 600;\n color: var(--test-text);\n margin-bottom: 4px;\n}\n\n.run-meta[_ngcontent-%COMP%], \n.suite-meta[_ngcontent-%COMP%] {\n display: flex;\n gap: 16px;\n font-size: 12px;\n color: var(--test-text-secondary);\n flex-wrap: wrap;\n}\n\n.run-meta[_ngcontent-%COMP%] span[_ngcontent-%COMP%], \n.suite-meta[_ngcontent-%COMP%] span[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.run-meta[_ngcontent-%COMP%] span[_ngcontent-%COMP%] i[_ngcontent-%COMP%], \n.suite-meta[_ngcontent-%COMP%] span[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-text-muted);\n font-size: 11px;\n}\n\n.run-item[_ngcontent-%COMP%] > i.fa-chevron-right[_ngcontent-%COMP%], \n.suite-item[_ngcontent-%COMP%] > i.fa-chevron-right[_ngcontent-%COMP%] {\n color: var(--test-text-muted);\n font-size: 14px;\n transition: var(--test-transition);\n}\n\n.run-item[_ngcontent-%COMP%]:hover > i.fa-chevron-right[_ngcontent-%COMP%], \n.suite-item[_ngcontent-%COMP%]:hover > i.fa-chevron-right[_ngcontent-%COMP%] {\n color: var(--test-primary);\n transform: translateX(2px);\n}\n\n\n\n.run-eval-stack[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-top: 8px;\n flex-wrap: wrap;\n}\n\n\n\n.eval-pill[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border-radius: 16px;\n font-size: 11px;\n font-weight: 600;\n transition: var(--test-transition);\n}\n\n.eval-pill[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 10px;\n}\n\n\n\n.eval-pill.status-pill.status-passed[_ngcontent-%COMP%] {\n background: #dcfce7;\n color: #16a34a;\n}\n\n.eval-pill.status-pill.status-failed[_ngcontent-%COMP%] {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.status-pill.status-error[_ngcontent-%COMP%] {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.status-pill.status-timeout[_ngcontent-%COMP%] {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.status-pill.status-skipped[_ngcontent-%COMP%], \n.eval-pill.status-pill.status-pending[_ngcontent-%COMP%] {\n background: #f1f5f9;\n color: #64748b;\n}\n\n.eval-pill.status-pill.status-running[_ngcontent-%COMP%] {\n background: #dbeafe;\n color: #2563eb;\n}\n\n\n\n.eval-pill.human-pill.no-feedback[_ngcontent-%COMP%] {\n background: #f1f5f9;\n color: #94a3b8;\n padding: 4px 8px;\n}\n\n.eval-pill.human-pill.has-feedback.rating-low[_ngcontent-%COMP%] {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.human-pill.has-feedback.rating-medium[_ngcontent-%COMP%] {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.human-pill.has-feedback.rating-good[_ngcontent-%COMP%] {\n background: #d1fae5;\n color: #059669;\n}\n\n.eval-pill.human-pill.has-feedback.rating-excellent[_ngcontent-%COMP%] {\n background: #dcfce7;\n color: #16a34a;\n}\n\n\n\n.eval-pill.auto-pill.no-score[_ngcontent-%COMP%] {\n background: #f1f5f9;\n color: #94a3b8;\n padding: 4px 8px;\n}\n\n.eval-pill.auto-pill.has-score.score-low[_ngcontent-%COMP%] {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.auto-pill.has-score.score-medium[_ngcontent-%COMP%] {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.auto-pill.has-score.score-good[_ngcontent-%COMP%] {\n background: #d1fae5;\n color: #059669;\n}\n\n.eval-pill.auto-pill.has-score.score-excellent[_ngcontent-%COMP%] {\n background: #dcfce7;\n color: #16a34a;\n}\n\n\n\n.run-tags[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 8px;\n flex-wrap: wrap;\n}\n\n.run-tag[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n padding: 2px 8px;\n background: rgba(37, 99, 235, 0.1);\n color: var(--test-primary);\n border-radius: 10px;\n font-size: 11px;\n font-weight: 500;\n}\n\n.run-tag-more[_ngcontent-%COMP%] {\n display: inline-flex;\n align-items: center;\n padding: 2px 8px;\n background: var(--test-border);\n color: var(--test-text-muted);\n border-radius: 10px;\n font-size: 11px;\n font-weight: 500;\n}\n\n\n\n\n\n.empty-state[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 24px;\n text-align: center;\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n}\n\n.empty-icon[_ngcontent-%COMP%] {\n width: 80px;\n height: 80px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: var(--test-bg);\n border-radius: 50%;\n margin-bottom: 20px;\n}\n\n.empty-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 36px;\n color: var(--test-text-muted);\n}\n\n.empty-state[_ngcontent-%COMP%] h4[_ngcontent-%COMP%] {\n margin: 0 0 8px 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--test-text);\n}\n\n.empty-state[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0 0 20px 0;\n font-size: 14px;\n color: var(--test-text-secondary);\n max-width: 300px;\n}\n\n\n\n.no-data[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 20px;\n color: var(--test-text-muted);\n text-align: center;\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n}\n\n.no-data[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 48px;\n margin-bottom: 16px;\n opacity: 0.3;\n}\n\n.no-data[_ngcontent-%COMP%] p[_ngcontent-%COMP%] {\n margin: 0;\n font-size: 14px;\n}\n\n\n\n\n\n\n\n.shortcuts-toggle[_ngcontent-%COMP%] {\n position: fixed;\n bottom: 20px;\n right: 20px;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n box-shadow: var(--test-shadow-md);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--test-text-secondary);\n font-size: 14px;\n z-index: 99;\n transition: var(--test-transition);\n opacity: 0.7;\n}\n\n.shortcuts-toggle[_ngcontent-%COMP%]:hover {\n opacity: 1;\n transform: scale(1.1);\n color: var(--test-primary);\n border-color: var(--test-primary);\n}\n\n.keyboard-shortcuts[_ngcontent-%COMP%] {\n position: fixed;\n bottom: 20px;\n right: 20px;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n padding: 12px 16px;\n box-shadow: var(--test-shadow-lg);\n font-size: 12px;\n color: var(--test-text-secondary);\n z-index: 100;\n max-width: 260px;\n}\n\n.shortcuts-header[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 10px;\n padding-bottom: 8px;\n border-bottom: 1px solid var(--test-border);\n font-weight: 600;\n color: var(--test-text);\n}\n\n.shortcuts-close[_ngcontent-%COMP%] {\n margin-left: auto;\n background: none;\n border: none;\n cursor: pointer;\n color: var(--test-text-muted);\n font-size: 12px;\n padding: 2px 4px;\n border-radius: 4px;\n transition: var(--test-transition);\n}\n\n.shortcuts-close[_ngcontent-%COMP%]:hover {\n color: var(--test-text);\n background: var(--test-border);\n}\n\n.shortcut-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.shortcut-item[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.shortcut-keys[_ngcontent-%COMP%] {\n display: flex;\n gap: 4px;\n}\n\n.shortcut-keys[_ngcontent-%COMP%] kbd[_ngcontent-%COMP%] {\n background: var(--test-bg);\n border: 1px solid var(--test-border);\n border-radius: 4px;\n padding: 2px 6px;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n font-size: 11px;\n color: var(--test-text);\n}\n\n\n\n\n\n@media (max-width: 1024px) {\n .metrics-bar[_ngcontent-%COMP%] {\n grid-template-columns: repeat(2, 1fr);\n }\n\n .info-grid[_ngcontent-%COMP%] {\n grid-template-columns: repeat(2, 1fr);\n }\n\n .config-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n }\n\n .keyboard-shortcuts[_ngcontent-%COMP%], .shortcuts-toggle[_ngcontent-%COMP%] {\n display: none;\n }\n}\n\n\n\n\n\n@media (max-width: 768px) {\n .test-form[_ngcontent-%COMP%] {\n height: auto;\n min-height: 100%;\n }\n\n .test-header[_ngcontent-%COMP%] {\n padding: 16px;\n }\n\n .header-content[_ngcontent-%COMP%] {\n flex-direction: column;\n gap: 16px;\n }\n\n .header-left[_ngcontent-%COMP%] {\n width: 100%;\n }\n\n .test-icon[_ngcontent-%COMP%] {\n width: 48px;\n height: 48px;\n font-size: 20px;\n }\n\n .test-info[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\n font-size: 18px;\n }\n\n .test-meta[_ngcontent-%COMP%] {\n gap: 8px;\n }\n\n .status-badge[_ngcontent-%COMP%] {\n padding: 4px 10px;\n font-size: 11px;\n }\n\n .header-actions[_ngcontent-%COMP%] {\n width: 100%;\n justify-content: stretch;\n }\n\n .header-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%] {\n flex: 1;\n }\n\n .metrics-bar[_ngcontent-%COMP%] {\n grid-template-columns: repeat(2, 1fr);\n gap: 10px;\n }\n\n .metric-card[_ngcontent-%COMP%] {\n padding: 12px;\n }\n\n .metric-value[_ngcontent-%COMP%] {\n font-size: 16px;\n }\n\n .tabs[_ngcontent-%COMP%] {\n padding: 0 12px;\n }\n\n .tab[_ngcontent-%COMP%] {\n padding: 12px 14px;\n font-size: 13px;\n gap: 6px;\n }\n\n .tab[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 14px;\n }\n\n .tab-shortcut[_ngcontent-%COMP%] {\n display: none;\n }\n\n .tab-content[_ngcontent-%COMP%] {\n padding: 16px;\n }\n\n .info-section[_ngcontent-%COMP%], \n .json-section[_ngcontent-%COMP%], \n .config-section[_ngcontent-%COMP%] {\n padding: 18px;\n }\n\n .info-grid[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n }\n\n .json-tabs[_ngcontent-%COMP%] {\n flex-direction: column;\n }\n\n .json-tab[_ngcontent-%COMP%] {\n min-width: 0;\n justify-content: flex-start;\n }\n\n .run-item[_ngcontent-%COMP%], \n .suite-item[_ngcontent-%COMP%] {\n padding: 14px;\n }\n\n .run-icon[_ngcontent-%COMP%], \n .suite-icon[_ngcontent-%COMP%] {\n width: 40px;\n height: 40px;\n font-size: 16px;\n }\n\n .run-meta[_ngcontent-%COMP%], \n .suite-meta[_ngcontent-%COMP%] {\n flex-direction: column;\n gap: 4px;\n }\n\n .empty-state[_ngcontent-%COMP%] {\n padding: 40px 20px;\n }\n\n .empty-icon[_ngcontent-%COMP%] {\n width: 64px;\n height: 64px;\n }\n\n .empty-icon[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n font-size: 28px;\n }\n}\n\n\n\n\n\n@media (max-width: 480px) {\n .test-header[_ngcontent-%COMP%] {\n padding: 12px;\n }\n\n .header-left[_ngcontent-%COMP%] {\n gap: 12px;\n }\n\n .test-icon[_ngcontent-%COMP%] {\n width: 40px;\n height: 40px;\n font-size: 18px;\n border-radius: 8px;\n }\n\n .test-info[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] {\n font-size: 16px;\n }\n\n .metrics-bar[_ngcontent-%COMP%] {\n grid-template-columns: 1fr 1fr;\n }\n\n .tabs[_ngcontent-%COMP%] {\n padding: 0 8px;\n }\n\n .tab[_ngcontent-%COMP%] {\n padding: 10px 12px;\n font-size: 12px;\n }\n\n .tab-badge[_ngcontent-%COMP%] {\n display: none;\n }\n\n .tab-content[_ngcontent-%COMP%] {\n padding: 12px;\n }\n\n .run-header[_ngcontent-%COMP%] {\n flex-direction: column;\n align-items: flex-start;\n gap: 4px;\n }\n}\n\n\n\n\n\n@media (hover: none) and (pointer: coarse) {\n .tab[_ngcontent-%COMP%], \n .json-tab[_ngcontent-%COMP%], \n .run-item[_ngcontent-%COMP%], \n .suite-item[_ngcontent-%COMP%] {\n -webkit-tap-highlight-color: transparent;\n }\n\n .run-item[_ngcontent-%COMP%]:active, \n .suite-item[_ngcontent-%COMP%]:active {\n background: rgba(37, 99, 235, 0.1);\n transform: scale(0.98);\n }\n\n .tab[_ngcontent-%COMP%]:active, \n .json-tab[_ngcontent-%COMP%]:active {\n background: rgba(37, 99, 235, 0.1);\n }\n\n \n\n .tab[_ngcontent-%COMP%] {\n min-height: 48px;\n }\n\n .run-item[_ngcontent-%COMP%], \n .suite-item[_ngcontent-%COMP%] {\n min-height: 64px;\n }\n}\n\n\n\n\n\n@media (prefers-reduced-motion: reduce) {\n *[_ngcontent-%COMP%], \n *[_ngcontent-%COMP%]::before, \n *[_ngcontent-%COMP%]::after {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n }\n\n .skeleton-icon[_ngcontent-%COMP%], \n .skeleton-line[_ngcontent-%COMP%] {\n animation: none;\n background: #e2e8f0;\n }\n}\n\n\n\n\n\n.history-tab[_ngcontent-%COMP%] {\n animation: _ngcontent-%COMP%_fadeIn 0.3s ease-out;\n}\n\n.history-content[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 24px;\n}\n\n\n\n.history-filters[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n gap: 16px;\n padding: 16px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n box-shadow: var(--test-shadow-sm);\n}\n\n.time-range-filters[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n.filter-label[_ngcontent-%COMP%] {\n font-size: 13px;\n font-weight: 600;\n color: var(--test-text-secondary);\n margin-right: 4px;\n}\n\n.filter-btn[_ngcontent-%COMP%] {\n padding: 8px 16px;\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-sm);\n background: var(--test-surface);\n color: var(--test-text-secondary);\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.filter-btn[_ngcontent-%COMP%]:hover {\n border-color: var(--test-primary-light);\n color: var(--test-primary);\n background: rgba(37, 99, 235, 0.05);\n}\n\n.filter-btn.active[_ngcontent-%COMP%] {\n background: var(--test-primary);\n color: white;\n border-color: var(--test-primary);\n}\n\n.history-actions[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n}\n\n\n\n.history-kpi-cards[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n gap: 16px;\n}\n\n.kpi-card[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 18px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n box-shadow: var(--test-shadow-sm);\n transition: var(--test-transition);\n}\n\n.kpi-card[_ngcontent-%COMP%]:hover {\n transform: translateY(-2px);\n box-shadow: var(--test-shadow-md);\n}\n\n.kpi-icon[_ngcontent-%COMP%] {\n width: 48px;\n height: 48px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: linear-gradient(135deg, var(--test-primary) 0%, var(--test-primary-dark) 100%);\n border-radius: var(--test-radius-md);\n color: white;\n font-size: 20px;\n flex-shrink: 0;\n}\n\n.kpi-icon.pass-rate[_ngcontent-%COMP%] {\n background: linear-gradient(135deg, var(--test-success) 0%, #059669 100%);\n}\n\n.kpi-content[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.kpi-value[_ngcontent-%COMP%] {\n font-size: 22px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.kpi-label[_ngcontent-%COMP%] {\n font-size: 12px;\n color: var(--test-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-top: 2px;\n}\n\n.trend-icon[_ngcontent-%COMP%] {\n font-size: 14px;\n}\n\n.trend-icon.trend-up[_ngcontent-%COMP%] {\n color: var(--test-success);\n}\n\n.trend-icon.trend-down[_ngcontent-%COMP%] {\n color: var(--test-error);\n}\n\n\n\n.history-section[_ngcontent-%COMP%] {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.history-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n.history-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--test-primary);\n}\n\n\n\n.history-table-container[_ngcontent-%COMP%] {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.history-table[_ngcontent-%COMP%] {\n width: 100%;\n border-collapse: collapse;\n font-size: 14px;\n}\n\n.history-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%], \n.history-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%] {\n padding: 12px 16px;\n text-align: left;\n border-bottom: 1px solid var(--test-border);\n}\n\n.history-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%] {\n font-size: 11px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n background: var(--test-bg);\n}\n\n.history-table[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover {\n background: rgba(37, 99, 235, 0.03);\n}\n\n.date-cell[_ngcontent-%COMP%] {\n font-weight: 600;\n color: var(--test-text);\n}\n\n.passed-cell[_ngcontent-%COMP%] {\n color: var(--test-success);\n font-weight: 600;\n}\n\n.failed-cell[_ngcontent-%COMP%] {\n color: var(--test-error);\n font-weight: 600;\n}\n\n.pass-rate-cell[_ngcontent-%COMP%] {\n min-width: 120px;\n}\n\n.pass-rate-bar[_ngcontent-%COMP%] {\n position: relative;\n height: 24px;\n background: var(--test-bg);\n border-radius: 12px;\n overflow: hidden;\n}\n\n.pass-rate-fill[_ngcontent-%COMP%] {\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n background: linear-gradient(90deg, var(--test-success) 0%, #34d399 100%);\n border-radius: 12px;\n transition: width 0.5s ease-out;\n}\n\n.pass-rate-text[_ngcontent-%COMP%] {\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n font-size: 11px;\n font-weight: 700;\n color: var(--test-text);\n z-index: 1;\n}\n\n\n\n.suite-performance-list[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.suite-perf-card[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n gap: 16px;\n padding: 18px;\n background: var(--test-bg);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.suite-perf-card[_ngcontent-%COMP%]:hover {\n background: rgba(37, 99, 235, 0.05);\n border-color: var(--test-primary-light);\n transform: translateX(4px);\n}\n\n.suite-perf-header[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.suite-perf-name[_ngcontent-%COMP%] {\n font-size: 15px;\n font-weight: 600;\n color: var(--test-text);\n margin-bottom: 6px;\n}\n\n.suite-perf-tags[_ngcontent-%COMP%] {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n.tag-mini[_ngcontent-%COMP%] {\n display: inline-flex;\n padding: 2px 8px;\n background: rgba(37, 99, 235, 0.1);\n color: var(--test-primary);\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n}\n\n.tag-more[_ngcontent-%COMP%] {\n display: inline-flex;\n padding: 2px 8px;\n background: var(--test-border);\n color: var(--test-text-muted);\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n}\n\n.suite-perf-stats[_ngcontent-%COMP%] {\n display: flex;\n gap: 24px;\n flex-wrap: wrap;\n}\n\n.suite-stat[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n}\n\n.suite-stat[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%] {\n font-size: 16px;\n font-weight: 700;\n color: var(--test-text);\n}\n\n.suite-stat[_ngcontent-%COMP%] .stat-value.pass-rate.high[_ngcontent-%COMP%] {\n color: var(--test-success);\n}\n\n.suite-stat[_ngcontent-%COMP%] .stat-value.pass-rate.low[_ngcontent-%COMP%] {\n color: var(--test-error);\n}\n\n.suite-stat[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%] {\n font-size: 10px;\n color: var(--test-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.suite-perf-arrow[_ngcontent-%COMP%] {\n color: var(--test-text-muted);\n font-size: 14px;\n transition: var(--test-transition);\n}\n\n.suite-perf-card[_ngcontent-%COMP%]:hover .suite-perf-arrow[_ngcontent-%COMP%] {\n color: var(--test-primary);\n transform: translateX(2px);\n}\n\n\n\n\n\n@media print {\n .test-form[_ngcontent-%COMP%] {\n background: white;\n height: auto;\n }\n\n .header-actions[_ngcontent-%COMP%], \n .tabs-container[_ngcontent-%COMP%], \n .keyboard-shortcuts[_ngcontent-%COMP%] {\n display: none !important;\n }\n\n .tab-content[_ngcontent-%COMP%] {\n overflow: visible;\n padding: 0;\n }\n\n .info-section[_ngcontent-%COMP%], \n .json-section[_ngcontent-%COMP%], \n .config-section[_ngcontent-%COMP%], \n .empty-state[_ngcontent-%COMP%] {\n break-inside: avoid;\n box-shadow: none;\n border: 1px solid #ddd;\n }\n}"], changeDetection: 0 }); }
1957
2001
  };
1958
2002
  TestFormComponentExtended = __decorate([
1959
2003
  RegisterClass(BaseFormComponent, 'MJ: Tests')
@@ -1961,14 +2005,10 @@ TestFormComponentExtended = __decorate([
1961
2005
  export { TestFormComponentExtended };
1962
2006
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TestFormComponentExtended, [{
1963
2007
  type: Component,
1964
- args: [{ selector: 'mj-test-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"test-form\" kendoDialogContainer>\n <!-- Header Section -->\n <div class=\"test-header\">\n <div class=\"header-content\">\n <div class=\"header-left\">\n <div class=\"test-icon\" [style.background-color]=\"getStatusColor()\">\n <i class=\"fas fa-flask\"></i>\n </div>\n <div class=\"test-info\">\n <h1>{{ record.Name }}</h1>\n <div class=\"test-meta\">\n <span class=\"status-badge\" [ngClass]=\"getStatusClass()\">\n <i class=\"fas\" [ngClass]=\"getStatusIcon()\"></i>\n {{ record.Status }}\n </span>\n <span class=\"test-type\" *ngIf=\"record.Type\">\n <i class=\"fas fa-tag\"></i>\n {{ record.Type }}\n </span>\n </div>\n </div>\n </div>\n <div class=\"header-actions\">\n <app-evaluation-mode-toggle></app-evaluation-mode-toggle>\n <button kendoButton (click)=\"runTest()\" themeColor=\"primary\">\n <i class=\"fas fa-play\"></i> Run Test\n </button>\n <button kendoButton (click)=\"refresh()\" [disabled]=\"isRefreshing\">\n <i class=\"fas\" [ngClass]=\"isRefreshing ? 'fa-sync fa-spin' : 'fa-sync'\"></i>\n {{ isRefreshing ? 'Refreshing...' : 'Refresh' }}\n </button>\n </div>\n </div>\n\n <!-- Test Description -->\n <div class=\"test-description\" *ngIf=\"record.Description\">\n <p>{{ record.Description }}</p>\n </div>\n\n <!-- Metrics Bar -->\n <div class=\"metrics-bar\" *ngIf=\"testRunsLoaded && testRuns.length > 0\">\n <div class=\"metric-card\">\n <div class=\"metric-label\">Total Runs</div>\n <div class=\"metric-value\">{{ testRuns.length }}</div>\n </div>\n <div class=\"metric-card\">\n <div class=\"metric-label\">Pass Rate</div>\n <div class=\"metric-value\">{{ getPassRate().toFixed(1) }}%</div>\n <div class=\"metric-progress\">\n <div class=\"metric-progress-fill\" [style.width.%]=\"getPassRate()\"></div>\n </div>\n </div>\n <div class=\"metric-card\">\n <div class=\"metric-label\">Avg Cost</div>\n <div class=\"metric-value\">{{ formatCost(getAverageCost()) }}</div>\n </div>\n <div class=\"metric-card\">\n <div class=\"metric-label\">Avg Duration</div>\n <div class=\"metric-value\">{{ formatDuration(getAverageDuration()) }}</div>\n </div>\n </div>\n </div>\n\n <!-- Tabs -->\n <div class=\"tabs-container\">\n <div class=\"tabs\" role=\"tablist\">\n <button class=\"tab\"\n [class.active]=\"activeTab === 'overview'\"\n (click)=\"changeTab('overview')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'overview'\">\n <i class=\"fas fa-th-large\"></i>\n <span>Overview</span>\n </button>\n <button class=\"tab\"\n [class.active]=\"activeTab === 'config'\"\n (click)=\"changeTab('config')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'config'\">\n <i class=\"fas fa-sliders-h\"></i>\n <span>Configuration</span>\n </button>\n <button class=\"tab\"\n [class.active]=\"activeTab === 'runs'\"\n (click)=\"changeTab('runs')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'runs'\">\n <i class=\"fas fa-history\"></i>\n <span>Runs</span>\n <span class=\"tab-badge\" *ngIf=\"testRunsLoaded\">{{ testRuns.length }}</span>\n </button>\n <button class=\"tab\"\n [class.active]=\"activeTab === 'suites'\"\n (click)=\"changeTab('suites')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'suites'\">\n <i class=\"fas fa-layer-group\"></i>\n <span>Test Suites</span>\n <span class=\"tab-badge\" *ngIf=\"suiteTestsLoaded\">{{ suiteTests.length }}</span>\n </button>\n <button class=\"tab\"\n [class.active]=\"activeTab === 'analytics'\"\n (click)=\"changeTab('analytics')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'analytics'\">\n <i class=\"fas fa-chart-line\"></i>\n <span>Analytics</span>\n </button>\n </div>\n </div>\n\n <!-- Tab Content -->\n <div class=\"tab-content\">\n <!-- Overview Tab -->\n <div class=\"overview-tab\" *ngIf=\"activeTab === 'overview'\">\n <!-- Basic Information -->\n <div class=\"info-section\">\n <h3><i class=\"fas fa-info-circle\"></i> Test Information</h3>\n <div class=\"info-grid\">\n <div class=\"info-item\">\n <div class=\"info-label\">Name</div>\n <div class=\"info-value\">{{ record.Name }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Type</div>\n <div class=\"info-value\">{{ record.Type || 'N/A' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Status</div>\n <div class=\"info-value\">\n <span class=\"status-badge-inline\" [ngClass]=\"getStatusClass()\">{{ record.Status }}</span>\n </div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Priority</div>\n <div class=\"info-value\">{{ record.Priority || 'N/A' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Estimated Duration</div>\n <div class=\"info-value\">{{ record.EstimatedDurationSeconds ? formatDuration(record.EstimatedDurationSeconds) : 'N/A' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Estimated Cost</div>\n <div class=\"info-value\">{{ record.EstimatedCostUSD ? formatCost(record.EstimatedCostUSD) : 'N/A' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Repeat Count</div>\n <div class=\"info-value\">{{ record.RepeatCount || 1 }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Max Execution Time</div>\n <div class=\"info-value\">{{ formatTimeout(record.MaxExecutionTimeMS) }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Created</div>\n <div class=\"info-value\">{{ record.__mj_CreatedAt | date:'medium' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Updated</div>\n <div class=\"info-value\">{{ record.__mj_UpdatedAt | date:'medium' }}</div>\n </div>\n </div>\n </div>\n\n <!-- JSON Data Views -->\n <div class=\"json-section\">\n <h3><i class=\"fas fa-code\"></i> Test Definition</h3>\n <div class=\"json-tabs\">\n <button class=\"json-tab\"\n [class.active]=\"activeJsonView === 'input'\"\n (click)=\"setJsonView('input')\">\n <i class=\"fas fa-sign-in-alt\"></i>\n Input Definition\n </button>\n <button class=\"json-tab\"\n [class.active]=\"activeJsonView === 'expected'\"\n (click)=\"setJsonView('expected')\">\n <i class=\"fas fa-check-double\"></i>\n Expected Outcomes\n </button>\n <button class=\"json-tab\"\n [class.active]=\"activeJsonView === 'config'\"\n (click)=\"setJsonView('config')\">\n <i class=\"fas fa-cog\"></i>\n Configuration\n </button>\n <button class=\"json-tab\"\n [class.active]=\"activeJsonView === 'tags'\"\n (click)=\"setJsonView('tags')\">\n <i class=\"fas fa-tags\"></i>\n Tags\n </button>\n </div>\n <div class=\"code-editor-container\">\n <mj-code-editor\n [value]=\"getJsonData()\"\n language=\"json\"\n [readonly]=\"true\"\n [toolbar]=\"jsonToolbar\"\n [lineWrapping]=\"true\">\n </mj-code-editor>\n </div>\n </div>\n </div>\n\n <!-- Configuration Tab -->\n <div class=\"config-tab\" *ngIf=\"activeTab === 'config'\">\n <div class=\"config-section\">\n <h3><i class=\"fas fa-cogs\"></i> Execution Settings</h3>\n <div class=\"config-grid\">\n <div class=\"config-item\">\n <label>Priority</label>\n <input type=\"number\" [(ngModel)]=\"record.Priority\" class=\"config-input\" placeholder=\"Lower = Higher Priority\" />\n </div>\n <div class=\"config-item\">\n <label>Repeat Count</label>\n <input type=\"number\" [(ngModel)]=\"record.RepeatCount\" class=\"config-input\" min=\"1\" />\n </div>\n <div class=\"config-item\">\n <label>Estimated Duration (seconds)</label>\n <input type=\"number\" [(ngModel)]=\"record.EstimatedDurationSeconds\" class=\"config-input\" />\n </div>\n <div class=\"config-item\">\n <label>Estimated Cost (USD)</label>\n <input type=\"number\" step=\"0.000001\" [(ngModel)]=\"record.EstimatedCostUSD\" class=\"config-input\" />\n </div>\n <div class=\"config-item full-width\">\n <label>Max Execution Time (ms)</label>\n <input type=\"number\" [(ngModel)]=\"record.MaxExecutionTimeMS\" class=\"config-input\" placeholder=\"Default: 300000 (5 min)\" />\n <span class=\"config-hint\">Leave empty for default 5 minute timeout</span>\n </div>\n </div>\n </div>\n\n <div class=\"config-section\">\n <h3><i class=\"fas fa-sign-in-alt\"></i> Input Definition (JSON)</h3>\n <div class=\"config-editor-container\">\n <mj-code-editor\n [value]=\"record.InputDefinition || ''\"\n language=\"json\"\n [readonly]=\"false\"\n [lineWrapping]=\"true\"\n (change)=\"record.InputDefinition = $event\">\n </mj-code-editor>\n </div>\n </div>\n\n <div class=\"config-section\">\n <h3><i class=\"fas fa-check-double\"></i> Expected Outcomes (JSON)</h3>\n <div class=\"config-editor-container\">\n <mj-code-editor\n [value]=\"record.ExpectedOutcomes || ''\"\n language=\"json\"\n [readonly]=\"false\"\n [lineWrapping]=\"true\"\n (change)=\"record.ExpectedOutcomes = $event\">\n </mj-code-editor>\n </div>\n </div>\n\n <div class=\"config-section\">\n <h3><i class=\"fas fa-cog\"></i> Configuration (JSON)</h3>\n <div class=\"config-editor-container\">\n <mj-code-editor\n [value]=\"record.Configuration || ''\"\n language=\"json\"\n [readonly]=\"false\"\n [lineWrapping]=\"true\"\n (change)=\"record.Configuration = $event\">\n </mj-code-editor>\n </div>\n </div>\n\n <div class=\"config-section\">\n <h3><i class=\"fas fa-tags\"></i> Tags (JSON Array)</h3>\n <div class=\"config-editor-container small\">\n <mj-code-editor\n [value]=\"record.Tags || '[]'\"\n language=\"json\"\n [readonly]=\"false\"\n [lineWrapping]=\"true\"\n (change)=\"record.Tags = $event\">\n </mj-code-editor>\n </div>\n </div>\n </div>\n\n <!-- Test Runs Tab -->\n <div class=\"runs-tab\" *ngIf=\"activeTab === 'runs'\">\n <!-- Loading State -->\n <div class=\"loading-state\" *ngIf=\"loadingRuns\">\n <div class=\"skeleton-list\">\n <div class=\"skeleton-card\" *ngFor=\"let i of [1,2,3,4,5]\">\n <div class=\"skeleton-icon\"></div>\n <div class=\"skeleton-content\">\n <div class=\"skeleton-line wide\"></div>\n <div class=\"skeleton-line narrow\"></div>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Runs List -->\n <div class=\"runs-list\" *ngIf=\"!loadingRuns && testRuns.length > 0\">\n <div class=\"run-item\" *ngFor=\"let run of testRuns\" (click)=\"openTestRun(run.ID)\">\n <div class=\"run-icon\" [style.background-color]=\"getRunStatusColor(run.Status)\">\n <i class=\"fas\"\n [class.fa-check]=\"run.Status === 'Passed'\"\n [class.fa-times]=\"run.Status === 'Failed'\"\n [class.fa-exclamation]=\"run.Status === 'Error'\"\n [class.fa-stopwatch]=\"run.Status === 'Timeout'\"\n [class.fa-spinner]=\"run.Status === 'Running'\"\n [class.fa-clock]=\"run.Status === 'Pending'\"></i>\n </div>\n <div class=\"run-content\">\n <div class=\"run-header\">\n <span class=\"run-id\">Run #{{ run.ID.substring(0, 8) }}</span>\n <span class=\"run-status\" [style.color]=\"getRunStatusColor(run.Status)\">{{ run.Status }}</span>\n </div>\n <div class=\"run-meta\">\n <span><i class=\"fas fa-calendar\"></i> {{ getRelativeTime(run.StartedAt) }}</span>\n <span *ngIf=\"run.DurationSeconds\"><i class=\"fas fa-clock\"></i> {{ formatDuration(run.DurationSeconds) }}</span>\n <span *ngIf=\"run.CostUSD\"><i class=\"fas fa-dollar-sign\"></i> {{ formatCost(run.CostUSD) }}</span>\n <mj-entity-link-pill\n *ngIf=\"run.TargetLogEntityID && run.TargetLogID\"\n [entityName]=\"run.TargetLogEntity\"\n [recordId]=\"run.TargetLogID\">\n </mj-entity-link-pill>\n </div>\n <!-- Evaluation indicators -->\n <div class=\"run-eval-stack\">\n <!-- Status indicator -->\n <span class=\"eval-pill status-pill\" *ngIf=\"evalPreferences.showExecution\"\n [ngClass]=\"'status-' + run.Status.toLowerCase()\"\n [title]=\"getStatusTooltip(run.Status)\">\n <i class=\"fas\"\n [class.fa-check]=\"run.Status === 'Passed'\"\n [class.fa-times]=\"run.Status === 'Failed'\"\n [class.fa-exclamation]=\"run.Status === 'Error'\"\n [class.fa-hourglass-end]=\"run.Status === 'Timeout'\"\n [class.fa-forward]=\"run.Status === 'Skipped'\"\n [class.fa-spinner]=\"run.Status === 'Running'\"\n [class.fa-clock]=\"run.Status === 'Pending'\"></i>\n <span>{{ run.Status }}</span>\n </span>\n <!-- Human feedback indicator -->\n <ng-container *ngIf=\"evalPreferences.showHuman\">\n <span class=\"eval-pill human-pill no-feedback\" *ngIf=\"!getFeedbackForRun(run.ID)?.Rating\"\n title=\"Human Review: No rating submitted yet\">\n <i class=\"fas fa-user-slash\"></i>\n </span>\n <span class=\"eval-pill human-pill has-feedback\" *ngIf=\"getFeedbackForRun(run.ID)?.Rating as rating\"\n [class.rating-low]=\"rating <= 4\"\n [class.rating-medium]=\"rating >= 5 && rating <= 6\"\n [class.rating-good]=\"rating >= 7 && rating <= 8\"\n [class.rating-excellent]=\"rating >= 9\"\n [title]=\"getHumanTooltip(rating, getFeedbackForRun(run.ID)?.CorrectionSummary || getFeedbackForRun(run.ID)?.Comments || null)\">\n <i class=\"fas fa-user\"></i>\n <span>{{ rating }}</span>\n </span>\n </ng-container>\n <!-- Auto score indicator -->\n <ng-container *ngIf=\"evalPreferences.showAuto\">\n <span class=\"eval-pill auto-pill no-score\" *ngIf=\"run.Score == null\"\n title=\"Auto Score: No automated score available\">\n <i class=\"fas fa-robot\"></i>\n </span>\n <span class=\"eval-pill auto-pill has-score\" *ngIf=\"run.Score != null\"\n [class.score-low]=\"run.Score < 0.5\"\n [class.score-medium]=\"run.Score >= 0.5 && run.Score < 0.7\"\n [class.score-good]=\"run.Score >= 0.7 && run.Score < 0.85\"\n [class.score-excellent]=\"run.Score >= 0.85\"\n [title]=\"'Auto Score: ' + (run.Score * 100).toFixed(0) + '% automated evaluation'\">\n <i class=\"fas fa-robot\"></i>\n <span>{{ (run.Score * 100).toFixed(0) }}%</span>\n </span>\n </ng-container>\n </div>\n <div class=\"run-tags\" *ngIf=\"getRunTags(run).length > 0\">\n <span class=\"run-tag\" *ngFor=\"let tag of getRunTags(run).slice(0, 3)\">{{ tag }}</span>\n <span class=\"run-tag-more\" *ngIf=\"getRunTags(run).length > 3\">+{{ getRunTags(run).length - 3 }}</span>\n </div>\n </div>\n <i class=\"fas fa-chevron-right\"></i>\n </div>\n </div>\n\n <!-- Empty State -->\n <div class=\"empty-state\" *ngIf=\"testRunsLoaded && !loadingRuns && testRuns.length === 0\">\n <div class=\"empty-icon\">\n <i class=\"fas fa-play-circle\"></i>\n </div>\n <h4>No Test Runs Yet</h4>\n <p>Run this test to see execution history and results here.</p>\n <button kendoButton (click)=\"runTest()\" themeColor=\"primary\">\n <i class=\"fas fa-play\"></i> Run Test Now\n </button>\n </div>\n </div>\n\n <!-- Test Suites Tab -->\n <div class=\"suites-tab\" *ngIf=\"activeTab === 'suites'\">\n <!-- Loading State -->\n <div class=\"loading-state\" *ngIf=\"loadingSuites\">\n <div class=\"skeleton-list\">\n <div class=\"skeleton-card\" *ngFor=\"let i of [1,2,3]\">\n <div class=\"skeleton-icon\"></div>\n <div class=\"skeleton-content\">\n <div class=\"skeleton-line wide\"></div>\n <div class=\"skeleton-line narrow\"></div>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Suites List -->\n <div class=\"suites-list\" *ngIf=\"!loadingSuites && suiteTests.length > 0\">\n <div class=\"suite-item\" *ngFor=\"let suiteTest of suiteTests\" (click)=\"openTestSuite(suiteTest.SuiteID)\">\n <div class=\"suite-icon\">\n <i class=\"fas fa-layer-group\"></i>\n </div>\n <div class=\"suite-content\">\n <div class=\"suite-name\">{{ suiteTest.Suite }}</div>\n <div class=\"suite-meta\">\n <span><i class=\"fas fa-sort-numeric-up\"></i> Sequence: {{ suiteTest.Sequence }}</span>\n <span *ngIf=\"suiteTest.Status\"><i class=\"fas fa-info-circle\"></i> {{ suiteTest.Status }}</span>\n </div>\n </div>\n <i class=\"fas fa-chevron-right\"></i>\n </div>\n </div>\n\n <!-- Empty State -->\n <div class=\"empty-state\" *ngIf=\"suiteTestsLoaded && !loadingSuites && suiteTests.length === 0\">\n <div class=\"empty-icon\">\n <i class=\"fas fa-folder-open\"></i>\n </div>\n <h4>Not Part of Any Suite</h4>\n <p>This test is not included in any test suites. Add it to a suite to run it with other tests.</p>\n </div>\n </div>\n\n <!-- Analytics Tab -->\n <div class=\"history-tab\" *ngIf=\"activeTab === 'analytics'\">\n <!-- Loading State -->\n <div class=\"loading-state\" *ngIf=\"loadingHistory\">\n <mj-loading text=\"Loading history...\"></mj-loading>\n </div>\n\n <!-- History Content -->\n <div class=\"history-content\" *ngIf=\"!loadingHistory && historyLoaded\">\n <!-- Filters -->\n <div class=\"history-filters\">\n <div class=\"time-range-filters\">\n <span class=\"filter-label\">Time Range:</span>\n <button class=\"filter-btn\"\n [class.active]=\"historyTimeRange === '7d'\"\n (click)=\"setHistoryTimeRange('7d')\">7 Days</button>\n <button class=\"filter-btn\"\n [class.active]=\"historyTimeRange === '30d'\"\n (click)=\"setHistoryTimeRange('30d')\">30 Days</button>\n <button class=\"filter-btn\"\n [class.active]=\"historyTimeRange === '90d'\"\n (click)=\"setHistoryTimeRange('90d')\">90 Days</button>\n <button class=\"filter-btn\"\n [class.active]=\"historyTimeRange === 'all'\"\n (click)=\"setHistoryTimeRange('all')\">All Time</button>\n </div>\n <div class=\"history-actions\">\n <button kendoButton (click)=\"exportHistoryToCSV()\" [disabled]=\"historyData.length === 0\">\n <i class=\"fas fa-download\"></i> Export CSV\n </button>\n </div>\n </div>\n\n <!-- KPI Cards -->\n <div class=\"history-kpi-cards\" *ngIf=\"historyData.length > 0\">\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\">\n <i class=\"fas fa-play-circle\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{ getTotalRuns() }}</div>\n <div class=\"kpi-label\">Total Runs</div>\n </div>\n </div>\n <div class=\"kpi-card\" *ngIf=\"evalPreferences.showExecution\">\n <div class=\"kpi-icon pass-rate\">\n <i class=\"fas fa-percentage\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">\n {{ getOverallPassRate().toFixed(1) }}%\n <i class=\"fas trend-icon\"\n [class.fa-arrow-up]=\"getPassRateTrend() === 'up'\"\n [class.fa-arrow-down]=\"getPassRateTrend() === 'down'\"\n [class.fa-minus]=\"getPassRateTrend() === 'stable'\"\n [class.trend-up]=\"getPassRateTrend() === 'up'\"\n [class.trend-down]=\"getPassRateTrend() === 'down'\"></i>\n </div>\n <div class=\"kpi-label\">Pass Rate</div>\n </div>\n </div>\n <div class=\"kpi-card\" *ngIf=\"evalPreferences.showAuto\">\n <div class=\"kpi-icon\">\n <i class=\"fas fa-star\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{ (getOverallAvgScore() * 100).toFixed(1) }}%</div>\n <div class=\"kpi-label\">Avg Score</div>\n </div>\n </div>\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\">\n <i class=\"fas fa-clock\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{ formatDuration(getOverallAvgDuration()) }}</div>\n <div class=\"kpi-label\">Avg Duration</div>\n </div>\n </div>\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\">\n <i class=\"fas fa-dollar-sign\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{ formatCost(getOverallAvgCost()) }}</div>\n <div class=\"kpi-label\">Avg Cost</div>\n </div>\n </div>\n </div>\n\n <!-- Daily History Table -->\n <div class=\"history-section\" *ngIf=\"historyData.length > 0\">\n <h3><i class=\"fas fa-calendar-alt\"></i> Daily Performance</h3>\n <div class=\"history-table-container\">\n <table class=\"history-table\">\n <thead>\n <tr>\n <th>Date</th>\n <th>Runs</th>\n <th *ngIf=\"evalPreferences.showExecution\">Passed</th>\n <th *ngIf=\"evalPreferences.showExecution\">Failed</th>\n <th *ngIf=\"evalPreferences.showExecution\">Pass Rate</th>\n <th *ngIf=\"evalPreferences.showAuto\">Avg Score</th>\n <th>Avg Duration</th>\n <th>Avg Cost</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let day of historyData\">\n <td class=\"date-cell\">{{ day.date | date:'mediumDate' }}</td>\n <td class=\"runs-cell\">{{ day.runCount }}</td>\n <td class=\"passed-cell\" *ngIf=\"evalPreferences.showExecution\">{{ day.passCount }}</td>\n <td class=\"failed-cell\" *ngIf=\"evalPreferences.showExecution\">{{ day.failCount }}</td>\n <td class=\"pass-rate-cell\" *ngIf=\"evalPreferences.showExecution\">\n <div class=\"pass-rate-bar\">\n <div class=\"pass-rate-fill\" [style.width.%]=\"day.passRate\"></div>\n <span class=\"pass-rate-text\">{{ day.passRate.toFixed(1) }}%</span>\n </div>\n </td>\n <td class=\"score-cell\" *ngIf=\"evalPreferences.showAuto\">{{ (day.avgScore * 100).toFixed(1) }}%</td>\n <td class=\"duration-cell\">{{ formatDuration(day.avgDuration) }}</td>\n <td class=\"cost-cell\">{{ formatCost(day.avgCost) }}</td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n\n <!-- Suite Performance -->\n <div class=\"history-section\" *ngIf=\"suitePerformance.length > 0\">\n <h3><i class=\"fas fa-layer-group\"></i> Performance by Suite</h3>\n <div class=\"suite-performance-list\">\n <div class=\"suite-perf-card\" *ngFor=\"let suite of suitePerformance\" (click)=\"openSuiteFromHistory(suite.suiteId)\">\n <div class=\"suite-perf-header\">\n <div class=\"suite-perf-name\">{{ suite.suiteName }}</div>\n <div class=\"suite-perf-tags\" *ngIf=\"suite.tags.length > 0\">\n <span class=\"tag-mini\" *ngFor=\"let tag of suite.tags.slice(0, 3)\">{{ tag }}</span>\n <span class=\"tag-more\" *ngIf=\"suite.tags.length > 3\">+{{ suite.tags.length - 3 }}</span>\n </div>\n </div>\n <div class=\"suite-perf-stats\">\n <div class=\"suite-stat\">\n <span class=\"stat-value\">{{ suite.totalRuns }}</span>\n <span class=\"stat-label\">Runs</span>\n </div>\n <div class=\"suite-stat\" *ngIf=\"evalPreferences.showExecution\">\n <span class=\"stat-value pass-rate\" [class.high]=\"suite.passRate >= 80\" [class.low]=\"suite.passRate < 50\">\n {{ suite.passRate.toFixed(1) }}%\n </span>\n <span class=\"stat-label\">Pass Rate</span>\n </div>\n <div class=\"suite-stat\" *ngIf=\"evalPreferences.showAuto\">\n <span class=\"stat-value\">{{ (suite.avgScore * 100).toFixed(1) }}%</span>\n <span class=\"stat-label\">Avg Score</span>\n </div>\n <div class=\"suite-stat\">\n <span class=\"stat-value\">{{ formatDuration(suite.avgDuration) }}</span>\n <span class=\"stat-label\">Avg Duration</span>\n </div>\n <div class=\"suite-stat\">\n <span class=\"stat-value\">{{ formatCost(suite.avgCost) }}</span>\n <span class=\"stat-label\">Avg Cost</span>\n </div>\n <div class=\"suite-stat\" *ngIf=\"suite.lastRun\">\n <span class=\"stat-value\">{{ getRelativeTime(suite.lastRun) }}</span>\n <span class=\"stat-label\">Last Run</span>\n </div>\n </div>\n <i class=\"fas fa-chevron-right suite-perf-arrow\"></i>\n </div>\n </div>\n </div>\n\n <!-- Empty State -->\n <div class=\"empty-state\" *ngIf=\"historyData.length === 0\">\n <div class=\"empty-icon\">\n <i class=\"fas fa-chart-line\"></i>\n </div>\n <h4>No History Available</h4>\n <p>Run this test to start building history and analytics data.</p>\n <button kendoButton (click)=\"runTest()\" themeColor=\"primary\">\n <i class=\"fas fa-play\"></i> Run Test Now\n </button>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Keyboard Shortcuts Toggle Button -->\n <button class=\"shortcuts-toggle\" (click)=\"toggleShortcuts()\" [title]=\"showShortcuts ? 'Hide keyboard shortcuts' : 'Show keyboard shortcuts'\">\n <i class=\"fas fa-keyboard\"></i>\n </button>\n\n <!-- Keyboard Shortcuts Hint (Desktop Only) -->\n <div class=\"keyboard-shortcuts\" *ngIf=\"showShortcuts\">\n <div class=\"shortcuts-header\">\n <i class=\"fas fa-keyboard\"></i>\n Shortcuts\n <button class=\"shortcuts-close\" (click)=\"toggleShortcuts()\" title=\"Hide shortcuts\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n <div class=\"shortcut-list\">\n <div class=\"shortcut-item\">\n <span>Refresh</span>\n <span class=\"shortcut-keys\"><kbd>Cmd</kbd><kbd>R</kbd></span>\n </div>\n <div class=\"shortcut-item\">\n <span>Run Test</span>\n <span class=\"shortcut-keys\"><kbd>Cmd</kbd><kbd>Enter</kbd></span>\n </div>\n <div class=\"shortcut-item\">\n <span>Switch Tabs</span>\n <span class=\"shortcut-keys\"><kbd>1</kbd>-<kbd>5</kbd></span>\n </div>\n </div>\n </div>\n</div>\n", styles: ["/* ===========================\n Test Form - World-Class UX\n Premium Test Definition Styles\n =========================== */\n\n/* CSS Custom Properties for Theming - using :host for Angular encapsulation */\n:host {\n --test-primary: #2563eb;\n --test-primary-light: #3b82f6;\n --test-primary-dark: #1d4ed8;\n --test-success: #10b981;\n --test-success-light: #d1fae5;\n --test-error: #ef4444;\n --test-error-light: #fee2e2;\n --test-warning: #f59e0b;\n --test-warning-light: #fef3c7;\n --test-disabled: #6b7280;\n --test-bg: #f8fafc;\n --test-surface: #ffffff;\n --test-border: #e2e8f0;\n --test-text: #1e293b;\n --test-text-secondary: #64748b;\n --test-text-muted: #94a3b8;\n --test-radius-sm: 6px;\n --test-radius-md: 10px;\n --test-radius-lg: 16px;\n --test-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);\n --test-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n --test-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n --test-transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n display: block;\n height: 100%;\n}\n\n/* Base Container */\n.test-form {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: var(--test-bg);\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n/* ===========================\n Header Section\n =========================== */\n.test-header {\n background: var(--test-surface);\n border-bottom: 1px solid var(--test-border);\n padding: 20px;\n}\n\n.header-content {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-bottom: 16px;\n gap: 16px;\n}\n\n.header-left {\n display: flex;\n gap: 16px;\n flex: 1;\n min-width: 0;\n}\n\n/* Test Icon */\n.test-icon {\n width: 56px;\n height: 56px;\n border-radius: var(--test-radius-md);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 24px;\n flex-shrink: 0;\n box-shadow: var(--test-shadow-md);\n transition: var(--test-transition);\n}\n\n.test-icon:hover {\n transform: scale(1.05);\n}\n\n/* Test Info */\n.test-info {\n flex: 1;\n min-width: 0;\n}\n\n.test-info h1 {\n margin: 0 0 8px 0;\n font-size: clamp(18px, 4vw, 24px);\n font-weight: 700;\n color: var(--test-text);\n line-height: 1.2;\n word-wrap: break-word;\n}\n\n.test-meta {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n/* Status Badge */\n.status-badge {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 6px 14px;\n border-radius: 20px;\n color: white;\n font-size: 12px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.status-badge.status-active { background: linear-gradient(135deg, var(--test-success) 0%, #059669 100%); }\n.status-badge.status-disabled { background: linear-gradient(135deg, var(--test-disabled) 0%, #4b5563 100%); }\n.status-badge.status-pending { background: linear-gradient(135deg, var(--test-warning) 0%, #d97706 100%); }\n\n.status-badge-inline {\n display: inline-flex;\n align-items: center;\n padding: 2px 10px;\n border-radius: 10px;\n color: white;\n font-size: 11px;\n font-weight: 600;\n}\n\n.status-badge-inline.status-active { background: var(--test-success); }\n.status-badge-inline.status-disabled { background: var(--test-disabled); }\n.status-badge-inline.status-pending { background: var(--test-warning); }\n\n.test-type {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-size: 14px;\n color: var(--test-text-secondary);\n padding: 4px 10px;\n background: var(--test-bg);\n border-radius: var(--test-radius-sm);\n}\n\n.header-actions {\n display: flex;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.header-actions button {\n white-space: nowrap;\n}\n\n/* Test Description */\n.test-description {\n padding: 16px;\n background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);\n border-radius: var(--test-radius-md);\n margin-bottom: 16px;\n border: 1px solid var(--test-border);\n}\n\n.test-description p {\n margin: 0;\n color: var(--test-text-secondary);\n line-height: 1.6;\n font-size: 14px;\n}\n\n/* ===========================\n Metrics Bar\n =========================== */\n.metrics-bar {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\n gap: 12px;\n}\n\n.metric-card {\n background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n padding: 14px;\n text-align: center;\n transition: var(--test-transition);\n}\n\n.metric-card:hover {\n transform: translateY(-2px);\n box-shadow: var(--test-shadow-md);\n}\n\n.metric-label {\n font-size: 10px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n margin-bottom: 6px;\n}\n\n.metric-value {\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n}\n\n/* Progress bar in metric card */\n.metric-progress {\n margin-top: 8px;\n height: 4px;\n background: var(--test-border);\n border-radius: 2px;\n overflow: hidden;\n}\n\n.metric-progress-fill {\n height: 100%;\n background: linear-gradient(90deg, var(--test-success) 0%, #34d399 100%);\n border-radius: 2px;\n transition: width 0.5s ease-out;\n}\n\n/* ===========================\n Tabs Navigation\n =========================== */\n.tabs-container {\n background: var(--test-surface);\n border-bottom: 1px solid var(--test-border);\n position: sticky;\n top: 0;\n z-index: 10;\n}\n\n.tabs {\n display: flex;\n padding: 0 20px;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n\n.tabs::-webkit-scrollbar {\n display: none;\n}\n\n.tab {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 14px 18px;\n border: none;\n background: transparent;\n border-bottom: 3px solid transparent;\n color: var(--test-text-secondary);\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: var(--test-transition);\n white-space: nowrap;\n}\n\n.tab:hover {\n color: var(--test-primary);\n background: rgba(37, 99, 235, 0.05);\n}\n\n.tab.active {\n color: var(--test-primary);\n border-bottom-color: var(--test-primary);\n font-weight: 600;\n}\n\n.tab i {\n font-size: 15px;\n}\n\n.tab-badge {\n background: var(--test-border);\n color: var(--test-text-secondary);\n padding: 2px 8px;\n border-radius: 10px;\n font-size: 11px;\n font-weight: 600;\n transition: var(--test-transition);\n}\n\n.tab.active .tab-badge {\n background: rgba(37, 99, 235, 0.15);\n color: var(--test-primary);\n}\n\n.tab-shortcut {\n font-size: 10px;\n color: var(--test-text-muted);\n background: var(--test-bg);\n padding: 2px 6px;\n border-radius: 4px;\n font-weight: 600;\n margin-left: 4px;\n}\n\n/* ===========================\n Tab Content Area\n =========================== */\n.tab-content {\n flex: 1;\n overflow-y: auto;\n padding: 20px;\n scroll-behavior: smooth;\n}\n\n/* ===========================\n Overview Tab\n =========================== */\n.overview-tab {\n display: flex;\n flex-direction: column;\n gap: 20px;\n animation: fadeIn 0.3s ease-out;\n}\n\n@keyframes fadeIn {\n from { opacity: 0; transform: translateY(10px); }\n to { opacity: 1; transform: translateY(0); }\n}\n\n/* Info Section */\n.info-section {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.info-section h3 {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.info-section h3 i {\n color: var(--test-primary);\n}\n\n.info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 16px;\n}\n\n.info-item {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.info-label {\n font-size: 11px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n}\n\n.info-value {\n font-size: 14px;\n color: var(--test-text);\n word-wrap: break-word;\n font-weight: 500;\n}\n\n/* JSON Section */\n.json-section {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.json-section h3 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.json-section h3 i {\n color: var(--test-primary);\n}\n\n.json-tabs {\n display: flex;\n gap: 4px;\n margin-bottom: 16px;\n background: var(--test-bg);\n border-radius: var(--test-radius-md);\n padding: 4px;\n flex-wrap: wrap;\n}\n\n.json-tab {\n flex: 1;\n min-width: 100px;\n padding: 10px 14px;\n border: none;\n background: transparent;\n color: var(--test-text-secondary);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n border-radius: var(--test-radius-sm);\n transition: var(--test-transition);\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n}\n\n.json-tab:hover {\n color: var(--test-text);\n background: rgba(0, 0, 0, 0.05);\n}\n\n.json-tab.active {\n background: var(--test-surface);\n color: var(--test-primary);\n font-weight: 600;\n box-shadow: var(--test-shadow-sm);\n}\n\n.json-tab i {\n font-size: 12px;\n}\n\n.code-editor-container {\n border-radius: var(--test-radius-md);\n overflow: hidden;\n border: 1px solid var(--test-border);\n min-height: 200px;\n max-height: 400px;\n}\n\n/* ===========================\n Configuration Tab\n =========================== */\n.config-tab {\n display: flex;\n flex-direction: column;\n gap: 20px;\n animation: fadeIn 0.3s ease-out;\n}\n\n.config-section {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.config-section h3 {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.config-section h3 i {\n color: var(--test-primary);\n}\n\n.config-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n gap: 20px;\n}\n\n.config-item {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.config-item.full-width {\n grid-column: 1 / -1;\n}\n\n.config-item label {\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n}\n\n.config-input {\n padding: 10px 14px;\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-sm);\n font-size: 14px;\n transition: var(--test-transition);\n background: var(--test-surface);\n}\n\n.config-input:focus {\n outline: none;\n border-color: var(--test-primary);\n box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);\n}\n\n.config-input::placeholder {\n color: var(--test-text-muted);\n}\n\n.config-hint {\n font-size: 11px;\n color: var(--test-text-muted);\n margin-top: 4px;\n}\n\n.config-editor-container {\n border-radius: var(--test-radius-md);\n overflow: hidden;\n border: 1px solid var(--test-border);\n min-height: 200px;\n}\n\n.config-editor-container.small {\n min-height: 100px;\n max-height: 150px;\n}\n\n/* ===========================\n Runs Tab\n =========================== */\n.runs-tab,\n.suites-tab {\n animation: fadeIn 0.3s ease-out;\n}\n\n/* Loading States & Skeletons */\n.loading-state {\n padding: 0;\n}\n\n.skeleton-list {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.skeleton-card {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 16px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n border: 1px solid var(--test-border);\n}\n\n.skeleton-icon {\n width: 44px;\n height: 44px;\n border-radius: var(--test-radius-md);\n background: linear-gradient(90deg, #e2e8f0 25%, #f1f5f9 50%, #e2e8f0 75%);\n background-size: 200% 100%;\n animation: shimmer 1.5s infinite;\n flex-shrink: 0;\n}\n\n.skeleton-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.skeleton-line {\n height: 14px;\n border-radius: 4px;\n background: linear-gradient(90deg, #e2e8f0 25%, #f1f5f9 50%, #e2e8f0 75%);\n background-size: 200% 100%;\n animation: shimmer 1.5s infinite;\n}\n\n.skeleton-line.wide { width: 70%; }\n.skeleton-line.narrow { width: 40%; }\n\n@keyframes shimmer {\n 0% { background-position: 200% 0; }\n 100% { background-position: -200% 0; }\n}\n\n/* Runs List */\n.runs-list,\n.suites-list {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.run-item,\n.suite-item {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 16px;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.run-item:hover,\n.suite-item:hover {\n background: rgba(37, 99, 235, 0.05);\n border-color: var(--test-primary-light);\n transform: translateX(4px);\n box-shadow: var(--test-shadow-sm);\n}\n\n.run-icon,\n.suite-icon {\n width: 44px;\n height: 44px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--test-radius-md);\n color: white;\n font-size: 18px;\n flex-shrink: 0;\n box-shadow: var(--test-shadow-sm);\n}\n\n.suite-icon {\n background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);\n}\n\n.run-content,\n.suite-content {\n flex: 1;\n min-width: 0;\n}\n\n.run-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 4px;\n}\n\n.run-id {\n font-size: 14px;\n font-weight: 600;\n color: var(--test-text);\n}\n\n.run-status {\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n}\n\n.suite-name {\n font-size: 14px;\n font-weight: 600;\n color: var(--test-text);\n margin-bottom: 4px;\n}\n\n.run-meta,\n.suite-meta {\n display: flex;\n gap: 16px;\n font-size: 12px;\n color: var(--test-text-secondary);\n flex-wrap: wrap;\n}\n\n.run-meta span,\n.suite-meta span {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.run-meta span i,\n.suite-meta span i {\n color: var(--test-text-muted);\n font-size: 11px;\n}\n\n.run-item > i.fa-chevron-right,\n.suite-item > i.fa-chevron-right {\n color: var(--test-text-muted);\n font-size: 14px;\n transition: var(--test-transition);\n}\n\n.run-item:hover > i.fa-chevron-right,\n.suite-item:hover > i.fa-chevron-right {\n color: var(--test-primary);\n transform: translateX(2px);\n}\n\n/* Run Evaluation Stack */\n.run-eval-stack {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-top: 8px;\n flex-wrap: wrap;\n}\n\n/* Evaluation Pills */\n.eval-pill {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border-radius: 16px;\n font-size: 11px;\n font-weight: 600;\n transition: var(--test-transition);\n}\n\n.eval-pill i {\n font-size: 10px;\n}\n\n/* Status pill colors */\n.eval-pill.status-pill.status-passed {\n background: #dcfce7;\n color: #16a34a;\n}\n\n.eval-pill.status-pill.status-failed {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.status-pill.status-error {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.status-pill.status-timeout {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.status-pill.status-skipped,\n.eval-pill.status-pill.status-pending {\n background: #f1f5f9;\n color: #64748b;\n}\n\n.eval-pill.status-pill.status-running {\n background: #dbeafe;\n color: #2563eb;\n}\n\n/* Human feedback pills */\n.eval-pill.human-pill.no-feedback {\n background: #f1f5f9;\n color: #94a3b8;\n padding: 4px 8px;\n}\n\n.eval-pill.human-pill.has-feedback.rating-low {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.human-pill.has-feedback.rating-medium {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.human-pill.has-feedback.rating-good {\n background: #d1fae5;\n color: #059669;\n}\n\n.eval-pill.human-pill.has-feedback.rating-excellent {\n background: #dcfce7;\n color: #16a34a;\n}\n\n/* Auto score pills */\n.eval-pill.auto-pill.no-score {\n background: #f1f5f9;\n color: #94a3b8;\n padding: 4px 8px;\n}\n\n.eval-pill.auto-pill.has-score.score-low {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.auto-pill.has-score.score-medium {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.auto-pill.has-score.score-good {\n background: #d1fae5;\n color: #059669;\n}\n\n.eval-pill.auto-pill.has-score.score-excellent {\n background: #dcfce7;\n color: #16a34a;\n}\n\n/* Run Tags */\n.run-tags {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 8px;\n flex-wrap: wrap;\n}\n\n.run-tag {\n display: inline-flex;\n align-items: center;\n padding: 2px 8px;\n background: rgba(37, 99, 235, 0.1);\n color: var(--test-primary);\n border-radius: 10px;\n font-size: 11px;\n font-weight: 500;\n}\n\n.run-tag-more {\n display: inline-flex;\n align-items: center;\n padding: 2px 8px;\n background: var(--test-border);\n color: var(--test-text-muted);\n border-radius: 10px;\n font-size: 11px;\n font-weight: 500;\n}\n\n/* ===========================\n Empty States\n =========================== */\n.empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 24px;\n text-align: center;\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n}\n\n.empty-icon {\n width: 80px;\n height: 80px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: var(--test-bg);\n border-radius: 50%;\n margin-bottom: 20px;\n}\n\n.empty-icon i {\n font-size: 36px;\n color: var(--test-text-muted);\n}\n\n.empty-state h4 {\n margin: 0 0 8px 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--test-text);\n}\n\n.empty-state p {\n margin: 0 0 20px 0;\n font-size: 14px;\n color: var(--test-text-secondary);\n max-width: 300px;\n}\n\n/* Legacy no-data for backwards compatibility */\n.no-data {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 20px;\n color: var(--test-text-muted);\n text-align: center;\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n}\n\n.no-data i {\n font-size: 48px;\n margin-bottom: 16px;\n opacity: 0.3;\n}\n\n.no-data p {\n margin: 0;\n font-size: 14px;\n}\n\n/* ===========================\n Keyboard Shortcuts Popup\n =========================== */\n/* Keyboard shortcuts toggle button */\n.shortcuts-toggle {\n position: fixed;\n bottom: 20px;\n right: 20px;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n box-shadow: var(--test-shadow-md);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--test-text-secondary);\n font-size: 14px;\n z-index: 99;\n transition: var(--test-transition);\n opacity: 0.7;\n}\n\n.shortcuts-toggle:hover {\n opacity: 1;\n transform: scale(1.1);\n color: var(--test-primary);\n border-color: var(--test-primary);\n}\n\n.keyboard-shortcuts {\n position: fixed;\n bottom: 20px;\n right: 20px;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n padding: 12px 16px;\n box-shadow: var(--test-shadow-lg);\n font-size: 12px;\n color: var(--test-text-secondary);\n z-index: 100;\n max-width: 260px;\n}\n\n.shortcuts-header {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 10px;\n padding-bottom: 8px;\n border-bottom: 1px solid var(--test-border);\n font-weight: 600;\n color: var(--test-text);\n}\n\n.shortcuts-close {\n margin-left: auto;\n background: none;\n border: none;\n cursor: pointer;\n color: var(--test-text-muted);\n font-size: 12px;\n padding: 2px 4px;\n border-radius: 4px;\n transition: var(--test-transition);\n}\n\n.shortcuts-close:hover {\n color: var(--test-text);\n background: var(--test-border);\n}\n\n.shortcut-list {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.shortcut-item {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.shortcut-keys {\n display: flex;\n gap: 4px;\n}\n\n.shortcut-keys kbd {\n background: var(--test-bg);\n border: 1px solid var(--test-border);\n border-radius: 4px;\n padding: 2px 6px;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n font-size: 11px;\n color: var(--test-text);\n}\n\n/* ===========================\n Responsive Design - Tablet\n =========================== */\n@media (max-width: 1024px) {\n .metrics-bar {\n grid-template-columns: repeat(2, 1fr);\n }\n\n .info-grid {\n grid-template-columns: repeat(2, 1fr);\n }\n\n .config-grid {\n grid-template-columns: 1fr;\n }\n\n .keyboard-shortcuts, .shortcuts-toggle {\n display: none;\n }\n}\n\n/* ===========================\n Responsive Design - Mobile\n =========================== */\n@media (max-width: 768px) {\n .test-form {\n height: auto;\n min-height: 100%;\n }\n\n .test-header {\n padding: 16px;\n }\n\n .header-content {\n flex-direction: column;\n gap: 16px;\n }\n\n .header-left {\n width: 100%;\n }\n\n .test-icon {\n width: 48px;\n height: 48px;\n font-size: 20px;\n }\n\n .test-info h1 {\n font-size: 18px;\n }\n\n .test-meta {\n gap: 8px;\n }\n\n .status-badge {\n padding: 4px 10px;\n font-size: 11px;\n }\n\n .header-actions {\n width: 100%;\n justify-content: stretch;\n }\n\n .header-actions button {\n flex: 1;\n }\n\n .metrics-bar {\n grid-template-columns: repeat(2, 1fr);\n gap: 10px;\n }\n\n .metric-card {\n padding: 12px;\n }\n\n .metric-value {\n font-size: 16px;\n }\n\n .tabs {\n padding: 0 12px;\n }\n\n .tab {\n padding: 12px 14px;\n font-size: 13px;\n gap: 6px;\n }\n\n .tab i {\n font-size: 14px;\n }\n\n .tab-shortcut {\n display: none;\n }\n\n .tab-content {\n padding: 16px;\n }\n\n .info-section,\n .json-section,\n .config-section {\n padding: 18px;\n }\n\n .info-grid {\n grid-template-columns: 1fr;\n }\n\n .json-tabs {\n flex-direction: column;\n }\n\n .json-tab {\n min-width: 0;\n justify-content: flex-start;\n }\n\n .run-item,\n .suite-item {\n padding: 14px;\n }\n\n .run-icon,\n .suite-icon {\n width: 40px;\n height: 40px;\n font-size: 16px;\n }\n\n .run-meta,\n .suite-meta {\n flex-direction: column;\n gap: 4px;\n }\n\n .empty-state {\n padding: 40px 20px;\n }\n\n .empty-icon {\n width: 64px;\n height: 64px;\n }\n\n .empty-icon i {\n font-size: 28px;\n }\n}\n\n/* ===========================\n Responsive Design - Small Mobile\n =========================== */\n@media (max-width: 480px) {\n .test-header {\n padding: 12px;\n }\n\n .header-left {\n gap: 12px;\n }\n\n .test-icon {\n width: 40px;\n height: 40px;\n font-size: 18px;\n border-radius: 8px;\n }\n\n .test-info h1 {\n font-size: 16px;\n }\n\n .metrics-bar {\n grid-template-columns: 1fr 1fr;\n }\n\n .tabs {\n padding: 0 8px;\n }\n\n .tab {\n padding: 10px 12px;\n font-size: 12px;\n }\n\n .tab-badge {\n display: none;\n }\n\n .tab-content {\n padding: 12px;\n }\n\n .run-header {\n flex-direction: column;\n align-items: flex-start;\n gap: 4px;\n }\n}\n\n/* ===========================\n Touch Device Optimizations\n =========================== */\n@media (hover: none) and (pointer: coarse) {\n .tab,\n .json-tab,\n .run-item,\n .suite-item {\n -webkit-tap-highlight-color: transparent;\n }\n\n .run-item:active,\n .suite-item:active {\n background: rgba(37, 99, 235, 0.1);\n transform: scale(0.98);\n }\n\n .tab:active,\n .json-tab:active {\n background: rgba(37, 99, 235, 0.1);\n }\n\n /* Larger touch targets */\n .tab {\n min-height: 48px;\n }\n\n .run-item,\n .suite-item {\n min-height: 64px;\n }\n}\n\n/* ===========================\n Reduced Motion\n =========================== */\n@media (prefers-reduced-motion: reduce) {\n *,\n *::before,\n *::after {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n }\n\n .skeleton-icon,\n .skeleton-line {\n animation: none;\n background: #e2e8f0;\n }\n}\n\n/* ===========================\n History Tab\n =========================== */\n.history-tab {\n animation: fadeIn 0.3s ease-out;\n}\n\n.history-content {\n display: flex;\n flex-direction: column;\n gap: 24px;\n}\n\n/* History Filters */\n.history-filters {\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n gap: 16px;\n padding: 16px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n box-shadow: var(--test-shadow-sm);\n}\n\n.time-range-filters {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n.filter-label {\n font-size: 13px;\n font-weight: 600;\n color: var(--test-text-secondary);\n margin-right: 4px;\n}\n\n.filter-btn {\n padding: 8px 16px;\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-sm);\n background: var(--test-surface);\n color: var(--test-text-secondary);\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.filter-btn:hover {\n border-color: var(--test-primary-light);\n color: var(--test-primary);\n background: rgba(37, 99, 235, 0.05);\n}\n\n.filter-btn.active {\n background: var(--test-primary);\n color: white;\n border-color: var(--test-primary);\n}\n\n.history-actions {\n display: flex;\n gap: 8px;\n}\n\n/* KPI Cards */\n.history-kpi-cards {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n gap: 16px;\n}\n\n.kpi-card {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 18px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n box-shadow: var(--test-shadow-sm);\n transition: var(--test-transition);\n}\n\n.kpi-card:hover {\n transform: translateY(-2px);\n box-shadow: var(--test-shadow-md);\n}\n\n.kpi-icon {\n width: 48px;\n height: 48px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: linear-gradient(135deg, var(--test-primary) 0%, var(--test-primary-dark) 100%);\n border-radius: var(--test-radius-md);\n color: white;\n font-size: 20px;\n flex-shrink: 0;\n}\n\n.kpi-icon.pass-rate {\n background: linear-gradient(135deg, var(--test-success) 0%, #059669 100%);\n}\n\n.kpi-content {\n flex: 1;\n min-width: 0;\n}\n\n.kpi-value {\n font-size: 22px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.kpi-label {\n font-size: 12px;\n color: var(--test-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-top: 2px;\n}\n\n.trend-icon {\n font-size: 14px;\n}\n\n.trend-icon.trend-up {\n color: var(--test-success);\n}\n\n.trend-icon.trend-down {\n color: var(--test-error);\n}\n\n/* History Section */\n.history-section {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.history-section h3 {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n.history-section h3 i {\n color: var(--test-primary);\n}\n\n/* History Table */\n.history-table-container {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.history-table {\n width: 100%;\n border-collapse: collapse;\n font-size: 14px;\n}\n\n.history-table th,\n.history-table td {\n padding: 12px 16px;\n text-align: left;\n border-bottom: 1px solid var(--test-border);\n}\n\n.history-table th {\n font-size: 11px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n background: var(--test-bg);\n}\n\n.history-table tbody tr:hover {\n background: rgba(37, 99, 235, 0.03);\n}\n\n.date-cell {\n font-weight: 600;\n color: var(--test-text);\n}\n\n.passed-cell {\n color: var(--test-success);\n font-weight: 600;\n}\n\n.failed-cell {\n color: var(--test-error);\n font-weight: 600;\n}\n\n.pass-rate-cell {\n min-width: 120px;\n}\n\n.pass-rate-bar {\n position: relative;\n height: 24px;\n background: var(--test-bg);\n border-radius: 12px;\n overflow: hidden;\n}\n\n.pass-rate-fill {\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n background: linear-gradient(90deg, var(--test-success) 0%, #34d399 100%);\n border-radius: 12px;\n transition: width 0.5s ease-out;\n}\n\n.pass-rate-text {\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n font-size: 11px;\n font-weight: 700;\n color: var(--test-text);\n z-index: 1;\n}\n\n/* Suite Performance List */\n.suite-performance-list {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.suite-perf-card {\n display: flex;\n align-items: center;\n gap: 16px;\n padding: 18px;\n background: var(--test-bg);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.suite-perf-card:hover {\n background: rgba(37, 99, 235, 0.05);\n border-color: var(--test-primary-light);\n transform: translateX(4px);\n}\n\n.suite-perf-header {\n flex: 1;\n min-width: 0;\n}\n\n.suite-perf-name {\n font-size: 15px;\n font-weight: 600;\n color: var(--test-text);\n margin-bottom: 6px;\n}\n\n.suite-perf-tags {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n.tag-mini {\n display: inline-flex;\n padding: 2px 8px;\n background: rgba(37, 99, 235, 0.1);\n color: var(--test-primary);\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n}\n\n.tag-more {\n display: inline-flex;\n padding: 2px 8px;\n background: var(--test-border);\n color: var(--test-text-muted);\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n}\n\n.suite-perf-stats {\n display: flex;\n gap: 24px;\n flex-wrap: wrap;\n}\n\n.suite-stat {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n}\n\n.suite-stat .stat-value {\n font-size: 16px;\n font-weight: 700;\n color: var(--test-text);\n}\n\n.suite-stat .stat-value.pass-rate.high {\n color: var(--test-success);\n}\n\n.suite-stat .stat-value.pass-rate.low {\n color: var(--test-error);\n}\n\n.suite-stat .stat-label {\n font-size: 10px;\n color: var(--test-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.suite-perf-arrow {\n color: var(--test-text-muted);\n font-size: 14px;\n transition: var(--test-transition);\n}\n\n.suite-perf-card:hover .suite-perf-arrow {\n color: var(--test-primary);\n transform: translateX(2px);\n}\n\n/* ===========================\n Print Styles\n =========================== */\n@media print {\n .test-form {\n background: white;\n height: auto;\n }\n\n .header-actions,\n .tabs-container,\n .keyboard-shortcuts {\n display: none !important;\n }\n\n .tab-content {\n overflow: visible;\n padding: 0;\n }\n\n .info-section,\n .json-section,\n .config-section,\n .empty-state {\n break-inside: avoid;\n box-shadow: none;\n border: 1px solid #ddd;\n }\n}\n"] }]
1965
- }], () => [{ type: i0.ElementRef }, { type: i1.SharedService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: i3.TestingDialogService }, { type: i3.EvaluationPreferencesService }, { type: i0.ViewContainerRef }], { handleKeyboardShortcut: [{
2008
+ args: [{ standalone: false, selector: 'mj-test-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"test-form\" kendoDialogContainer>\n <!-- Header Section -->\n <div class=\"test-header\">\n <!-- Breadcrumb Navigation -->\n <nav class=\"breadcrumb\" aria-label=\"Breadcrumb\">\n <ol>\n <li>\n <a href=\"javascript:void(0)\" (click)=\"navigateToTestingDashboard()\">\n <i class=\"fas fa-vial\"></i>\n <span class=\"breadcrumb-text\">Testing</span>\n </a>\n </li>\n <li class=\"current\">\n <i class=\"fas fa-chevron-right separator\"></i>\n <i class=\"fas fa-flask\"></i>\n <span>{{ record.Name }}</span>\n </li>\n </ol>\n </nav>\n\n <div class=\"header-content\">\n <div class=\"header-left\">\n <div class=\"test-icon\" [style.background-color]=\"getStatusColor()\">\n <i class=\"fas fa-flask\"></i>\n </div>\n <div class=\"test-info\">\n <h1>{{ record.Name }}</h1>\n <div class=\"test-meta\">\n <span class=\"status-badge\" [ngClass]=\"getStatusClass()\">\n <i class=\"fas\" [ngClass]=\"getStatusIcon()\"></i>\n {{ record.Status }}\n </span>\n @if (record.Type) {\n <span class=\"test-type\">\n <i class=\"fas fa-tag\"></i>\n {{ record.Type }}\n </span>\n }\n </div>\n </div>\n </div>\n <div class=\"header-actions\">\n <app-evaluation-mode-toggle></app-evaluation-mode-toggle>\n <button kendoButton (click)=\"runTest()\" themeColor=\"primary\">\n <i class=\"fas fa-play\"></i> Run Test\n </button>\n <button kendoButton (click)=\"refresh()\" [disabled]=\"isRefreshing\">\n <i class=\"fas\" [ngClass]=\"isRefreshing ? 'fa-sync fa-spin' : 'fa-sync'\"></i>\n {{ isRefreshing ? 'Refreshing...' : 'Refresh' }}\n </button>\n </div>\n </div>\n\n <!-- Test Description -->\n @if (record.Description) {\n <div class=\"test-description\">\n <p>{{ record.Description }}</p>\n </div>\n }\n\n <!-- Metrics Bar -->\n @if (testRunsLoaded && testRuns.length > 0) {\n <div class=\"metrics-bar\">\n <div class=\"metric-card\">\n <div class=\"metric-label\">Total Runs</div>\n <div class=\"metric-value\">{{ testRuns.length }}</div>\n </div>\n <div class=\"metric-card\">\n <div class=\"metric-label\">Pass Rate</div>\n <div class=\"metric-value\">{{ getPassRate().toFixed(1) }}%</div>\n <div class=\"metric-progress\">\n <div class=\"metric-progress-fill\" [style.width.%]=\"getPassRate()\"></div>\n </div>\n </div>\n <div class=\"metric-card\">\n <div class=\"metric-label\">Avg Cost</div>\n <div class=\"metric-value\">{{ formatCost(getAverageCost()) }}</div>\n </div>\n <div class=\"metric-card\">\n <div class=\"metric-label\">Avg Duration</div>\n <div class=\"metric-value\">{{ formatDuration(getAverageDuration()) }}</div>\n </div>\n </div>\n }\n </div>\n\n <!-- Tabs -->\n <div class=\"tabs-container\">\n <div class=\"tabs\" role=\"tablist\">\n <button class=\"tab\"\n [class.active]=\"activeTab === 'overview'\"\n (click)=\"changeTab('overview')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'overview'\">\n <i class=\"fas fa-th-large\"></i>\n <span>Overview</span>\n </button>\n <button class=\"tab\"\n [class.active]=\"activeTab === 'config'\"\n (click)=\"changeTab('config')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'config'\">\n <i class=\"fas fa-sliders-h\"></i>\n <span>Configuration</span>\n </button>\n <button class=\"tab\"\n [class.active]=\"activeTab === 'runs'\"\n (click)=\"changeTab('runs')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'runs'\">\n <i class=\"fas fa-history\"></i>\n <span>Runs</span>\n @if (testRunsLoaded) {\n <span class=\"tab-badge\">{{ testRuns.length }}</span>\n }\n </button>\n <button class=\"tab\"\n [class.active]=\"activeTab === 'suites'\"\n (click)=\"changeTab('suites')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'suites'\">\n <i class=\"fas fa-layer-group\"></i>\n <span>Test Suites</span>\n @if (suiteTestsLoaded) {\n <span class=\"tab-badge\">{{ suiteTests.length }}</span>\n }\n </button>\n <button class=\"tab\"\n [class.active]=\"activeTab === 'analytics'\"\n (click)=\"changeTab('analytics')\"\n role=\"tab\"\n [attr.aria-selected]=\"activeTab === 'analytics'\">\n <i class=\"fas fa-chart-line\"></i>\n <span>Analytics</span>\n </button>\n </div>\n </div>\n\n <!-- Tab Content -->\n <div class=\"tab-content\">\n <!-- Overview Tab -->\n @if (activeTab === 'overview') {\n <div class=\"overview-tab\">\n <!-- Basic Information -->\n <div class=\"info-section\">\n <h3><i class=\"fas fa-info-circle\"></i> Test Information</h3>\n <div class=\"info-grid\">\n <div class=\"info-item\">\n <div class=\"info-label\">Name</div>\n <div class=\"info-value\">{{ record.Name }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Type</div>\n <div class=\"info-value\">{{ record.Type || 'N/A' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Status</div>\n <div class=\"info-value\">\n <span class=\"status-badge-inline\" [ngClass]=\"getStatusClass()\">{{ record.Status }}</span>\n </div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Priority</div>\n <div class=\"info-value\">{{ record.Priority || 'N/A' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Estimated Duration</div>\n <div class=\"info-value\">{{ record.EstimatedDurationSeconds ? formatDuration(record.EstimatedDurationSeconds) : 'N/A' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Estimated Cost</div>\n <div class=\"info-value\">{{ record.EstimatedCostUSD ? formatCost(record.EstimatedCostUSD) : 'N/A' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Repeat Count</div>\n <div class=\"info-value\">{{ record.RepeatCount || 1 }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Max Execution Time</div>\n <div class=\"info-value\">{{ formatTimeout(record.MaxExecutionTimeMS) }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Created</div>\n <div class=\"info-value\">{{ record.__mj_CreatedAt | date:'medium' }}</div>\n </div>\n <div class=\"info-item\">\n <div class=\"info-label\">Updated</div>\n <div class=\"info-value\">{{ record.__mj_UpdatedAt | date:'medium' }}</div>\n </div>\n </div>\n </div>\n <!-- JSON Data Views -->\n <div class=\"json-section\">\n <h3><i class=\"fas fa-code\"></i> Test Definition</h3>\n <div class=\"json-tabs\">\n <button class=\"json-tab\"\n [class.active]=\"activeJsonView === 'input'\"\n (click)=\"setJsonView('input')\">\n <i class=\"fas fa-sign-in-alt\"></i>\n Input Definition\n </button>\n <button class=\"json-tab\"\n [class.active]=\"activeJsonView === 'expected'\"\n (click)=\"setJsonView('expected')\">\n <i class=\"fas fa-check-double\"></i>\n Expected Outcomes\n </button>\n <button class=\"json-tab\"\n [class.active]=\"activeJsonView === 'config'\"\n (click)=\"setJsonView('config')\">\n <i class=\"fas fa-cog\"></i>\n Configuration\n </button>\n <button class=\"json-tab\"\n [class.active]=\"activeJsonView === 'tags'\"\n (click)=\"setJsonView('tags')\">\n <i class=\"fas fa-tags\"></i>\n Tags\n </button>\n </div>\n <div class=\"code-editor-container\">\n <mj-code-editor\n [value]=\"getJsonData()\"\n language=\"json\"\n [readonly]=\"true\"\n [toolbar]=\"jsonToolbar\"\n [lineWrapping]=\"true\">\n </mj-code-editor>\n </div>\n </div>\n </div>\n }\n\n <!-- Configuration Tab -->\n @if (activeTab === 'config') {\n <div class=\"config-tab\">\n <div class=\"config-section\">\n <h3><i class=\"fas fa-cogs\"></i> Execution Settings</h3>\n <div class=\"config-grid\">\n <div class=\"config-item\">\n <label>Priority</label>\n <input type=\"number\" [(ngModel)]=\"record.Priority\" class=\"config-input\" placeholder=\"Lower = Higher Priority\" />\n </div>\n <div class=\"config-item\">\n <label>Repeat Count</label>\n <input type=\"number\" [(ngModel)]=\"record.RepeatCount\" class=\"config-input\" min=\"1\" />\n </div>\n <div class=\"config-item\">\n <label>Estimated Duration (seconds)</label>\n <input type=\"number\" [(ngModel)]=\"record.EstimatedDurationSeconds\" class=\"config-input\" />\n </div>\n <div class=\"config-item\">\n <label>Estimated Cost (USD)</label>\n <input type=\"number\" step=\"0.000001\" [(ngModel)]=\"record.EstimatedCostUSD\" class=\"config-input\" />\n </div>\n <div class=\"config-item full-width\">\n <label>Max Execution Time (ms)</label>\n <input type=\"number\" [(ngModel)]=\"record.MaxExecutionTimeMS\" class=\"config-input\" placeholder=\"Default: 300000 (5 min)\" />\n <span class=\"config-hint\">Leave empty for default 5 minute timeout</span>\n </div>\n </div>\n </div>\n <div class=\"config-section\">\n <h3><i class=\"fas fa-sign-in-alt\"></i> Input Definition (JSON)</h3>\n <div class=\"config-editor-container\">\n <mj-code-editor\n [value]=\"record.InputDefinition || ''\"\n language=\"json\"\n [readonly]=\"false\"\n [lineWrapping]=\"true\"\n (change)=\"record.InputDefinition = $event\">\n </mj-code-editor>\n </div>\n </div>\n <div class=\"config-section\">\n <h3><i class=\"fas fa-check-double\"></i> Expected Outcomes (JSON)</h3>\n <div class=\"config-editor-container\">\n <mj-code-editor\n [value]=\"record.ExpectedOutcomes || ''\"\n language=\"json\"\n [readonly]=\"false\"\n [lineWrapping]=\"true\"\n (change)=\"record.ExpectedOutcomes = $event\">\n </mj-code-editor>\n </div>\n </div>\n <div class=\"config-section\">\n <h3><i class=\"fas fa-cog\"></i> Configuration (JSON)</h3>\n <div class=\"config-editor-container\">\n <mj-code-editor\n [value]=\"record.Configuration || ''\"\n language=\"json\"\n [readonly]=\"false\"\n [lineWrapping]=\"true\"\n (change)=\"record.Configuration = $event\">\n </mj-code-editor>\n </div>\n </div>\n <div class=\"config-section\">\n <h3><i class=\"fas fa-tags\"></i> Tags (JSON Array)</h3>\n <div class=\"config-editor-container small\">\n <mj-code-editor\n [value]=\"record.Tags || '[]'\"\n language=\"json\"\n [readonly]=\"false\"\n [lineWrapping]=\"true\"\n (change)=\"record.Tags = $event\">\n </mj-code-editor>\n </div>\n </div>\n </div>\n }\n\n <!-- Test Runs Tab -->\n @if (activeTab === 'runs') {\n <div class=\"runs-tab\">\n <!-- Loading State -->\n @if (loadingRuns) {\n <div class=\"loading-state\">\n <div class=\"skeleton-list\">\n @for (i of [1,2,3,4,5]; track i) {\n <div class=\"skeleton-card\">\n <div class=\"skeleton-icon\"></div>\n <div class=\"skeleton-content\">\n <div class=\"skeleton-line wide\"></div>\n <div class=\"skeleton-line narrow\"></div>\n </div>\n </div>\n }\n </div>\n </div>\n }\n <!-- Runs List -->\n @if (!loadingRuns && testRuns.length > 0) {\n <div class=\"runs-list\">\n @for (run of testRuns; track run) {\n <div class=\"run-item\" (click)=\"openTestRun(run.ID)\">\n <div class=\"run-icon\" [style.background-color]=\"getRunStatusColor(run.Status)\">\n <i class=\"fas\"\n [class.fa-check]=\"run.Status === 'Passed'\"\n [class.fa-times]=\"run.Status === 'Failed'\"\n [class.fa-exclamation]=\"run.Status === 'Error'\"\n [class.fa-stopwatch]=\"run.Status === 'Timeout'\"\n [class.fa-spinner]=\"run.Status === 'Running'\"\n [class.fa-clock]=\"run.Status === 'Pending'\"></i>\n </div>\n <div class=\"run-content\">\n <div class=\"run-header\">\n <span class=\"run-id\">Run #{{ run.ID.substring(0, 8) }}</span>\n <span class=\"run-status\" [style.color]=\"getRunStatusColor(run.Status)\">{{ run.Status }}</span>\n </div>\n <div class=\"run-meta\">\n <span><i class=\"fas fa-calendar\"></i> {{ getRelativeTime(run.StartedAt) }}</span>\n @if (run.DurationSeconds) {\n <span><i class=\"fas fa-clock\"></i> {{ formatDuration(run.DurationSeconds) }}</span>\n }\n @if (run.CostUSD) {\n <span><i class=\"fas fa-dollar-sign\"></i> {{ formatCost(run.CostUSD) }}</span>\n }\n @if (run.TargetLogEntityID && run.TargetLogID) {\n <mj-entity-link-pill\n [entityName]=\"run.TargetLogEntity\"\n [recordId]=\"run.TargetLogID\">\n </mj-entity-link-pill>\n }\n </div>\n <!-- Evaluation indicators -->\n <div class=\"run-eval-stack\">\n <!-- Status indicator -->\n @if (evalPreferences.showExecution) {\n <span class=\"eval-pill status-pill\"\n [ngClass]=\"'status-' + run.Status.toLowerCase()\"\n [title]=\"getStatusTooltip(run.Status)\">\n <i class=\"fas\"\n [class.fa-check]=\"run.Status === 'Passed'\"\n [class.fa-times]=\"run.Status === 'Failed'\"\n [class.fa-exclamation]=\"run.Status === 'Error'\"\n [class.fa-hourglass-end]=\"run.Status === 'Timeout'\"\n [class.fa-forward]=\"run.Status === 'Skipped'\"\n [class.fa-spinner]=\"run.Status === 'Running'\"\n [class.fa-clock]=\"run.Status === 'Pending'\"></i>\n <span>{{ run.Status }}</span>\n </span>\n }\n <!-- Human feedback indicator -->\n @if (evalPreferences.showHuman) {\n @if (!getFeedbackForRun(run.ID)?.Rating) {\n <span class=\"eval-pill human-pill no-feedback\"\n title=\"Human Review: No rating submitted yet\">\n <i class=\"fas fa-user-slash\"></i>\n </span>\n }\n @if (getFeedbackForRun(run.ID)?.Rating; as rating) {\n <span class=\"eval-pill human-pill has-feedback\"\n [class.rating-low]=\"rating <= 4\"\n [class.rating-medium]=\"rating >= 5 && rating <= 6\"\n [class.rating-good]=\"rating >= 7 && rating <= 8\"\n [class.rating-excellent]=\"rating >= 9\"\n [title]=\"getHumanTooltip(rating, getFeedbackForRun(run.ID)?.CorrectionSummary || getFeedbackForRun(run.ID)?.Comments || null)\">\n <i class=\"fas fa-user\"></i>\n <span>{{ rating }}</span>\n </span>\n }\n }\n <!-- Auto score indicator -->\n @if (evalPreferences.showAuto) {\n @if (run.Score == null) {\n <span class=\"eval-pill auto-pill no-score\"\n title=\"Auto Score: No automated score available\">\n <i class=\"fas fa-robot\"></i>\n </span>\n }\n @if (run.Score != null) {\n <span class=\"eval-pill auto-pill has-score\"\n [class.score-low]=\"run.Score < 0.5\"\n [class.score-medium]=\"run.Score >= 0.5 && run.Score < 0.7\"\n [class.score-good]=\"run.Score >= 0.7 && run.Score < 0.85\"\n [class.score-excellent]=\"run.Score >= 0.85\"\n [title]=\"'Auto Score: ' + (run.Score * 100).toFixed(0) + '% automated evaluation'\">\n <i class=\"fas fa-robot\"></i>\n <span>{{ (run.Score * 100).toFixed(0) }}%</span>\n </span>\n }\n }\n </div>\n @if (getRunTags(run).length > 0) {\n <div class=\"run-tags\">\n @for (tag of getRunTags(run).slice(0, 3); track tag) {\n <span class=\"run-tag\">{{ tag }}</span>\n }\n @if (getRunTags(run).length > 3) {\n <span class=\"run-tag-more\">+{{ getRunTags(run).length - 3 }}</span>\n }\n </div>\n }\n </div>\n <i class=\"fas fa-chevron-right\"></i>\n </div>\n }\n </div>\n }\n <!-- Empty State -->\n @if (testRunsLoaded && !loadingRuns && testRuns.length === 0) {\n <div class=\"empty-state\">\n <div class=\"empty-icon\">\n <i class=\"fas fa-play-circle\"></i>\n </div>\n <h4>No Test Runs Yet</h4>\n <p>Run this test to see execution history and results here.</p>\n <button kendoButton (click)=\"runTest()\" themeColor=\"primary\">\n <i class=\"fas fa-play\"></i> Run Test Now\n </button>\n </div>\n }\n </div>\n }\n\n <!-- Test Suites Tab -->\n @if (activeTab === 'suites') {\n <div class=\"suites-tab\">\n <!-- Loading State -->\n @if (loadingSuites) {\n <div class=\"loading-state\">\n <div class=\"skeleton-list\">\n @for (i of [1,2,3]; track i) {\n <div class=\"skeleton-card\">\n <div class=\"skeleton-icon\"></div>\n <div class=\"skeleton-content\">\n <div class=\"skeleton-line wide\"></div>\n <div class=\"skeleton-line narrow\"></div>\n </div>\n </div>\n }\n </div>\n </div>\n }\n <!-- Suites List -->\n @if (!loadingSuites && suiteTests.length > 0) {\n <div class=\"suites-list\">\n @for (suiteTest of suiteTests; track suiteTest) {\n <div class=\"suite-item\" (click)=\"openTestSuite(suiteTest.SuiteID)\">\n <div class=\"suite-icon\">\n <i class=\"fas fa-layer-group\"></i>\n </div>\n <div class=\"suite-content\">\n <div class=\"suite-name\">{{ suiteTest.Suite }}</div>\n <div class=\"suite-meta\">\n <span><i class=\"fas fa-sort-numeric-up\"></i> Sequence: {{ suiteTest.Sequence }}</span>\n @if (suiteTest.Status) {\n <span><i class=\"fas fa-info-circle\"></i> {{ suiteTest.Status }}</span>\n }\n </div>\n </div>\n <i class=\"fas fa-chevron-right\"></i>\n </div>\n }\n </div>\n }\n <!-- Empty State -->\n @if (suiteTestsLoaded && !loadingSuites && suiteTests.length === 0) {\n <div class=\"empty-state\">\n <div class=\"empty-icon\">\n <i class=\"fas fa-folder-open\"></i>\n </div>\n <h4>Not Part of Any Suite</h4>\n <p>This test is not included in any test suites. Add it to a suite to run it with other tests.</p>\n </div>\n }\n </div>\n }\n\n <!-- Analytics Tab -->\n @if (activeTab === 'analytics') {\n <div class=\"history-tab\">\n <!-- Loading State -->\n @if (loadingHistory) {\n <div class=\"loading-state\">\n <mj-loading text=\"Loading history...\"></mj-loading>\n </div>\n }\n <!-- History Content -->\n @if (!loadingHistory && historyLoaded) {\n <div class=\"history-content\">\n <!-- Filters -->\n <div class=\"history-filters\">\n <div class=\"time-range-filters\">\n <span class=\"filter-label\">Time Range:</span>\n <button class=\"filter-btn\"\n [class.active]=\"historyTimeRange === '7d'\"\n (click)=\"setHistoryTimeRange('7d')\">7 Days</button>\n <button class=\"filter-btn\"\n [class.active]=\"historyTimeRange === '30d'\"\n (click)=\"setHistoryTimeRange('30d')\">30 Days</button>\n <button class=\"filter-btn\"\n [class.active]=\"historyTimeRange === '90d'\"\n (click)=\"setHistoryTimeRange('90d')\">90 Days</button>\n <button class=\"filter-btn\"\n [class.active]=\"historyTimeRange === 'all'\"\n (click)=\"setHistoryTimeRange('all')\">All Time</button>\n </div>\n <div class=\"history-actions\">\n <button kendoButton (click)=\"exportHistoryToCSV()\" [disabled]=\"historyData.length === 0\">\n <i class=\"fas fa-download\"></i> Export CSV\n </button>\n </div>\n </div>\n <!-- KPI Cards -->\n @if (historyData.length > 0) {\n <div class=\"history-kpi-cards\">\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\">\n <i class=\"fas fa-play-circle\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{ getTotalRuns() }}</div>\n <div class=\"kpi-label\">Total Runs</div>\n </div>\n </div>\n @if (evalPreferences.showExecution) {\n <div class=\"kpi-card\">\n <div class=\"kpi-icon pass-rate\">\n <i class=\"fas fa-percentage\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">\n {{ getOverallPassRate().toFixed(1) }}%\n <i class=\"fas trend-icon\"\n [class.fa-arrow-up]=\"getPassRateTrend() === 'up'\"\n [class.fa-arrow-down]=\"getPassRateTrend() === 'down'\"\n [class.fa-minus]=\"getPassRateTrend() === 'stable'\"\n [class.trend-up]=\"getPassRateTrend() === 'up'\"\n [class.trend-down]=\"getPassRateTrend() === 'down'\"></i>\n </div>\n <div class=\"kpi-label\">Pass Rate</div>\n </div>\n </div>\n }\n @if (evalPreferences.showAuto) {\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\">\n <i class=\"fas fa-star\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{ (getOverallAvgScore() * 100).toFixed(1) }}%</div>\n <div class=\"kpi-label\">Avg Score</div>\n </div>\n </div>\n }\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\">\n <i class=\"fas fa-clock\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{ formatDuration(getOverallAvgDuration()) }}</div>\n <div class=\"kpi-label\">Avg Duration</div>\n </div>\n </div>\n <div class=\"kpi-card\">\n <div class=\"kpi-icon\">\n <i class=\"fas fa-dollar-sign\"></i>\n </div>\n <div class=\"kpi-content\">\n <div class=\"kpi-value\">{{ formatCost(getOverallAvgCost()) }}</div>\n <div class=\"kpi-label\">Avg Cost</div>\n </div>\n </div>\n </div>\n }\n <!-- Daily History Table -->\n @if (historyData.length > 0) {\n <div class=\"history-section\">\n <h3><i class=\"fas fa-calendar-alt\"></i> Daily Performance</h3>\n <div class=\"history-table-container\">\n <table class=\"history-table\">\n <thead>\n <tr>\n <th>Date</th>\n <th>Runs</th>\n @if (evalPreferences.showExecution) {\n <th>Passed</th>\n }\n @if (evalPreferences.showExecution) {\n <th>Failed</th>\n }\n @if (evalPreferences.showExecution) {\n <th>Pass Rate</th>\n }\n @if (evalPreferences.showAuto) {\n <th>Avg Score</th>\n }\n <th>Avg Duration</th>\n <th>Avg Cost</th>\n </tr>\n </thead>\n <tbody>\n @for (day of historyData; track day) {\n <tr>\n <td class=\"date-cell\">{{ day.date | date:'mediumDate' }}</td>\n <td class=\"runs-cell\">{{ day.runCount }}</td>\n @if (evalPreferences.showExecution) {\n <td class=\"passed-cell\">{{ day.passCount }}</td>\n }\n @if (evalPreferences.showExecution) {\n <td class=\"failed-cell\">{{ day.failCount }}</td>\n }\n @if (evalPreferences.showExecution) {\n <td class=\"pass-rate-cell\">\n <div class=\"pass-rate-bar\">\n <div class=\"pass-rate-fill\" [style.width.%]=\"day.passRate\"></div>\n <span class=\"pass-rate-text\">{{ day.passRate.toFixed(1) }}%</span>\n </div>\n </td>\n }\n @if (evalPreferences.showAuto) {\n <td class=\"score-cell\">{{ (day.avgScore * 100).toFixed(1) }}%</td>\n }\n <td class=\"duration-cell\">{{ formatDuration(day.avgDuration) }}</td>\n <td class=\"cost-cell\">{{ formatCost(day.avgCost) }}</td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n </div>\n }\n <!-- Suite Performance -->\n @if (suitePerformance.length > 0) {\n <div class=\"history-section\">\n <h3><i class=\"fas fa-layer-group\"></i> Performance by Suite</h3>\n <div class=\"suite-performance-list\">\n @for (suite of suitePerformance; track suite) {\n <div class=\"suite-perf-card\" (click)=\"openSuiteFromHistory(suite.suiteId)\">\n <div class=\"suite-perf-header\">\n <div class=\"suite-perf-name\">{{ suite.suiteName }}</div>\n @if (suite.tags.length > 0) {\n <div class=\"suite-perf-tags\">\n @for (tag of suite.tags.slice(0, 3); track tag) {\n <span class=\"tag-mini\">{{ tag }}</span>\n }\n @if (suite.tags.length > 3) {\n <span class=\"tag-more\">+{{ suite.tags.length - 3 }}</span>\n }\n </div>\n }\n </div>\n <div class=\"suite-perf-stats\">\n <div class=\"suite-stat\">\n <span class=\"stat-value\">{{ suite.totalRuns }}</span>\n <span class=\"stat-label\">Runs</span>\n </div>\n @if (evalPreferences.showExecution) {\n <div class=\"suite-stat\">\n <span class=\"stat-value pass-rate\" [class.high]=\"suite.passRate >= 80\" [class.low]=\"suite.passRate < 50\">\n {{ suite.passRate.toFixed(1) }}%\n </span>\n <span class=\"stat-label\">Pass Rate</span>\n </div>\n }\n @if (evalPreferences.showAuto) {\n <div class=\"suite-stat\">\n <span class=\"stat-value\">{{ (suite.avgScore * 100).toFixed(1) }}%</span>\n <span class=\"stat-label\">Avg Score</span>\n </div>\n }\n <div class=\"suite-stat\">\n <span class=\"stat-value\">{{ formatDuration(suite.avgDuration) }}</span>\n <span class=\"stat-label\">Avg Duration</span>\n </div>\n <div class=\"suite-stat\">\n <span class=\"stat-value\">{{ formatCost(suite.avgCost) }}</span>\n <span class=\"stat-label\">Avg Cost</span>\n </div>\n @if (suite.lastRun) {\n <div class=\"suite-stat\">\n <span class=\"stat-value\">{{ getRelativeTime(suite.lastRun) }}</span>\n <span class=\"stat-label\">Last Run</span>\n </div>\n }\n </div>\n <i class=\"fas fa-chevron-right suite-perf-arrow\"></i>\n </div>\n }\n </div>\n </div>\n }\n <!-- Empty State -->\n @if (historyData.length === 0) {\n <div class=\"empty-state\">\n <div class=\"empty-icon\">\n <i class=\"fas fa-chart-line\"></i>\n </div>\n <h4>No History Available</h4>\n <p>Run this test to start building history and analytics data.</p>\n <button kendoButton (click)=\"runTest()\" themeColor=\"primary\">\n <i class=\"fas fa-play\"></i> Run Test Now\n </button>\n </div>\n }\n </div>\n }\n </div>\n }\n </div>\n\n <!-- Keyboard Shortcuts Toggle Button -->\n <button class=\"shortcuts-toggle\" (click)=\"toggleShortcuts()\" [title]=\"showShortcuts ? 'Hide keyboard shortcuts' : 'Show keyboard shortcuts'\">\n <i class=\"fas fa-keyboard\"></i>\n </button>\n\n <!-- Keyboard Shortcuts Hint (Desktop Only) -->\n @if (showShortcuts) {\n <div class=\"keyboard-shortcuts\">\n <div class=\"shortcuts-header\">\n <i class=\"fas fa-keyboard\"></i>\n Shortcuts\n <button class=\"shortcuts-close\" (click)=\"toggleShortcuts()\" title=\"Hide shortcuts\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n <div class=\"shortcut-list\">\n <div class=\"shortcut-item\">\n <span>Refresh</span>\n <span class=\"shortcut-keys\"><kbd>Cmd</kbd><kbd>R</kbd></span>\n </div>\n <div class=\"shortcut-item\">\n <span>Run Test</span>\n <span class=\"shortcut-keys\"><kbd>Cmd</kbd><kbd>Enter</kbd></span>\n </div>\n <div class=\"shortcut-item\">\n <span>Switch Tabs</span>\n <span class=\"shortcut-keys\"><kbd>1</kbd>-<kbd>5</kbd></span>\n </div>\n </div>\n </div>\n }\n</div>\n", styles: ["/* ===========================\n Test Form - World-Class UX\n Premium Test Definition Styles\n =========================== */\n\n/* CSS Custom Properties for Theming - using :host for Angular encapsulation */\n:host {\n --test-primary: #2563eb;\n --test-primary-light: #3b82f6;\n --test-primary-dark: #1d4ed8;\n --test-success: #10b981;\n --test-success-light: #d1fae5;\n --test-error: #ef4444;\n --test-error-light: #fee2e2;\n --test-warning: #f59e0b;\n --test-warning-light: #fef3c7;\n --test-disabled: #6b7280;\n --test-bg: #f8fafc;\n --test-surface: #ffffff;\n --test-border: #e2e8f0;\n --test-text: #1e293b;\n --test-text-secondary: #64748b;\n --test-text-muted: #94a3b8;\n --test-radius-sm: 6px;\n --test-radius-md: 10px;\n --test-radius-lg: 16px;\n --test-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);\n --test-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n --test-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n --test-transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n display: block;\n height: 100%;\n}\n\n/* Breadcrumb */\n.breadcrumb {\n margin-bottom: 16px;\n}\n\n.breadcrumb ol {\n display: flex;\n align-items: center;\n gap: 4px;\n list-style: none;\n margin: 0;\n padding: 0;\n font-size: 13px;\n}\n\n.breadcrumb li {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.breadcrumb a {\n color: var(--test-primary);\n text-decoration: none;\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 8px;\n border-radius: 6px;\n transition: background 0.15s;\n}\n\n.breadcrumb a:hover {\n background: rgba(37, 99, 235, 0.1);\n text-decoration: none;\n}\n\n.breadcrumb .separator {\n font-size: 10px;\n color: var(--test-text-muted);\n margin: 0 4px;\n}\n\n.breadcrumb .current {\n color: var(--test-text-secondary);\n font-weight: 500;\n}\n\n.breadcrumb-text {\n max-width: 200px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* Base Container */\n.test-form {\n display: flex;\n flex-direction: column;\n height: 100%;\n background: var(--test-bg);\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n/* ===========================\n Header Section\n =========================== */\n.test-header {\n background: var(--test-surface);\n border-bottom: 1px solid var(--test-border);\n padding: 20px;\n}\n\n.header-content {\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n margin-bottom: 16px;\n gap: 16px;\n}\n\n.header-left {\n display: flex;\n gap: 16px;\n flex: 1;\n min-width: 0;\n}\n\n/* Test Icon */\n.test-icon {\n width: 56px;\n height: 56px;\n border-radius: var(--test-radius-md);\n display: flex;\n align-items: center;\n justify-content: center;\n color: white;\n font-size: 24px;\n flex-shrink: 0;\n box-shadow: var(--test-shadow-md);\n transition: var(--test-transition);\n}\n\n.test-icon:hover {\n transform: scale(1.05);\n}\n\n/* Test Info */\n.test-info {\n flex: 1;\n min-width: 0;\n}\n\n.test-info h1 {\n margin: 0 0 8px 0;\n font-size: clamp(18px, 4vw, 24px);\n font-weight: 700;\n color: var(--test-text);\n line-height: 1.2;\n word-wrap: break-word;\n}\n\n.test-meta {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n/* Status Badge */\n.status-badge {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 6px 14px;\n border-radius: 20px;\n color: white;\n font-size: 12px;\n font-weight: 600;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.status-badge.status-active { background: linear-gradient(135deg, var(--test-success) 0%, #059669 100%); }\n.status-badge.status-disabled { background: linear-gradient(135deg, var(--test-disabled) 0%, #4b5563 100%); }\n.status-badge.status-pending { background: linear-gradient(135deg, var(--test-warning) 0%, #d97706 100%); }\n\n.status-badge-inline {\n display: inline-flex;\n align-items: center;\n padding: 2px 10px;\n border-radius: 10px;\n color: white;\n font-size: 11px;\n font-weight: 600;\n}\n\n.status-badge-inline.status-active { background: var(--test-success); }\n.status-badge-inline.status-disabled { background: var(--test-disabled); }\n.status-badge-inline.status-pending { background: var(--test-warning); }\n\n.test-type {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n font-size: 14px;\n color: var(--test-text-secondary);\n padding: 4px 10px;\n background: var(--test-bg);\n border-radius: var(--test-radius-sm);\n}\n\n.header-actions {\n display: flex;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.header-actions button {\n white-space: nowrap;\n}\n\n/* Test Description */\n.test-description {\n padding: 16px;\n background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);\n border-radius: var(--test-radius-md);\n margin-bottom: 16px;\n border: 1px solid var(--test-border);\n}\n\n.test-description p {\n margin: 0;\n color: var(--test-text-secondary);\n line-height: 1.6;\n font-size: 14px;\n}\n\n/* ===========================\n Metrics Bar\n =========================== */\n.metrics-bar {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\n gap: 12px;\n}\n\n.metric-card {\n background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n padding: 14px;\n text-align: center;\n transition: var(--test-transition);\n}\n\n.metric-card:hover {\n transform: translateY(-2px);\n box-shadow: var(--test-shadow-md);\n}\n\n.metric-label {\n font-size: 10px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n margin-bottom: 6px;\n}\n\n.metric-value {\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n}\n\n/* Progress bar in metric card */\n.metric-progress {\n margin-top: 8px;\n height: 4px;\n background: var(--test-border);\n border-radius: 2px;\n overflow: hidden;\n}\n\n.metric-progress-fill {\n height: 100%;\n background: linear-gradient(90deg, var(--test-success) 0%, #34d399 100%);\n border-radius: 2px;\n transition: width 0.5s ease-out;\n}\n\n/* ===========================\n Tabs Navigation\n =========================== */\n.tabs-container {\n background: var(--test-surface);\n border-bottom: 1px solid var(--test-border);\n position: sticky;\n top: 0;\n z-index: 10;\n}\n\n.tabs {\n display: flex;\n padding: 0 20px;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n scrollbar-width: none;\n -ms-overflow-style: none;\n}\n\n.tabs::-webkit-scrollbar {\n display: none;\n}\n\n.tab {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 14px 18px;\n border: none;\n background: transparent;\n border-bottom: 3px solid transparent;\n color: var(--test-text-secondary);\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n transition: var(--test-transition);\n white-space: nowrap;\n}\n\n.tab:hover {\n color: var(--test-primary);\n background: rgba(37, 99, 235, 0.05);\n}\n\n.tab.active {\n color: var(--test-primary);\n border-bottom-color: var(--test-primary);\n font-weight: 600;\n}\n\n.tab i {\n font-size: 15px;\n}\n\n.tab-badge {\n background: var(--test-border);\n color: var(--test-text-secondary);\n padding: 2px 8px;\n border-radius: 10px;\n font-size: 11px;\n font-weight: 600;\n transition: var(--test-transition);\n}\n\n.tab.active .tab-badge {\n background: rgba(37, 99, 235, 0.15);\n color: var(--test-primary);\n}\n\n.tab-shortcut {\n font-size: 10px;\n color: var(--test-text-muted);\n background: var(--test-bg);\n padding: 2px 6px;\n border-radius: 4px;\n font-weight: 600;\n margin-left: 4px;\n}\n\n/* ===========================\n Tab Content Area\n =========================== */\n.tab-content {\n flex: 1;\n overflow-y: auto;\n padding: 20px;\n scroll-behavior: smooth;\n}\n\n/* ===========================\n Overview Tab\n =========================== */\n.overview-tab {\n display: flex;\n flex-direction: column;\n gap: 20px;\n animation: fadeIn 0.3s ease-out;\n}\n\n@keyframes fadeIn {\n from { opacity: 0; transform: translateY(10px); }\n to { opacity: 1; transform: translateY(0); }\n}\n\n/* Info Section */\n.info-section {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.info-section h3 {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.info-section h3 i {\n color: var(--test-primary);\n}\n\n.info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 16px;\n}\n\n.info-item {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.info-label {\n font-size: 11px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n}\n\n.info-value {\n font-size: 14px;\n color: var(--test-text);\n word-wrap: break-word;\n font-weight: 500;\n}\n\n/* JSON Section */\n.json-section {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.json-section h3 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.json-section h3 i {\n color: var(--test-primary);\n}\n\n.json-tabs {\n display: flex;\n gap: 4px;\n margin-bottom: 16px;\n background: var(--test-bg);\n border-radius: var(--test-radius-md);\n padding: 4px;\n flex-wrap: wrap;\n}\n\n.json-tab {\n flex: 1;\n min-width: 100px;\n padding: 10px 14px;\n border: none;\n background: transparent;\n color: var(--test-text-secondary);\n font-size: 12px;\n font-weight: 500;\n cursor: pointer;\n border-radius: var(--test-radius-sm);\n transition: var(--test-transition);\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 6px;\n}\n\n.json-tab:hover {\n color: var(--test-text);\n background: rgba(0, 0, 0, 0.05);\n}\n\n.json-tab.active {\n background: var(--test-surface);\n color: var(--test-primary);\n font-weight: 600;\n box-shadow: var(--test-shadow-sm);\n}\n\n.json-tab i {\n font-size: 12px;\n}\n\n.code-editor-container {\n border-radius: var(--test-radius-md);\n overflow: hidden;\n border: 1px solid var(--test-border);\n min-height: 200px;\n max-height: 400px;\n}\n\n/* ===========================\n Configuration Tab\n =========================== */\n.config-tab {\n display: flex;\n flex-direction: column;\n gap: 20px;\n animation: fadeIn 0.3s ease-out;\n}\n\n.config-section {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.config-section h3 {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.config-section h3 i {\n color: var(--test-primary);\n}\n\n.config-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\n gap: 20px;\n}\n\n.config-item {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.config-item.full-width {\n grid-column: 1 / -1;\n}\n\n.config-item label {\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n}\n\n.config-input {\n padding: 10px 14px;\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-sm);\n font-size: 14px;\n transition: var(--test-transition);\n background: var(--test-surface);\n}\n\n.config-input:focus {\n outline: none;\n border-color: var(--test-primary);\n box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);\n}\n\n.config-input::placeholder {\n color: var(--test-text-muted);\n}\n\n.config-hint {\n font-size: 11px;\n color: var(--test-text-muted);\n margin-top: 4px;\n}\n\n.config-editor-container {\n border-radius: var(--test-radius-md);\n overflow: hidden;\n border: 1px solid var(--test-border);\n min-height: 200px;\n}\n\n.config-editor-container.small {\n min-height: 100px;\n max-height: 150px;\n}\n\n/* ===========================\n Runs Tab\n =========================== */\n.runs-tab,\n.suites-tab {\n animation: fadeIn 0.3s ease-out;\n}\n\n/* Loading States & Skeletons */\n.loading-state {\n padding: 0;\n}\n\n.skeleton-list {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.skeleton-card {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 16px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n border: 1px solid var(--test-border);\n}\n\n.skeleton-icon {\n width: 44px;\n height: 44px;\n border-radius: var(--test-radius-md);\n background: linear-gradient(90deg, #e2e8f0 25%, #f1f5f9 50%, #e2e8f0 75%);\n background-size: 200% 100%;\n animation: shimmer 1.5s infinite;\n flex-shrink: 0;\n}\n\n.skeleton-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.skeleton-line {\n height: 14px;\n border-radius: 4px;\n background: linear-gradient(90deg, #e2e8f0 25%, #f1f5f9 50%, #e2e8f0 75%);\n background-size: 200% 100%;\n animation: shimmer 1.5s infinite;\n}\n\n.skeleton-line.wide { width: 70%; }\n.skeleton-line.narrow { width: 40%; }\n\n@keyframes shimmer {\n 0% { background-position: 200% 0; }\n 100% { background-position: -200% 0; }\n}\n\n/* Runs List */\n.runs-list,\n.suites-list {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.run-item,\n.suite-item {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 16px;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.run-item:hover,\n.suite-item:hover {\n background: rgba(37, 99, 235, 0.05);\n border-color: var(--test-primary-light);\n transform: translateX(4px);\n box-shadow: var(--test-shadow-sm);\n}\n\n.run-icon,\n.suite-icon {\n width: 44px;\n height: 44px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--test-radius-md);\n color: white;\n font-size: 18px;\n flex-shrink: 0;\n box-shadow: var(--test-shadow-sm);\n}\n\n.suite-icon {\n background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);\n}\n\n.run-content,\n.suite-content {\n flex: 1;\n min-width: 0;\n}\n\n.run-header {\n display: flex;\n align-items: center;\n gap: 12px;\n margin-bottom: 4px;\n}\n\n.run-id {\n font-size: 14px;\n font-weight: 600;\n color: var(--test-text);\n}\n\n.run-status {\n font-size: 12px;\n font-weight: 700;\n text-transform: uppercase;\n}\n\n.suite-name {\n font-size: 14px;\n font-weight: 600;\n color: var(--test-text);\n margin-bottom: 4px;\n}\n\n.run-meta,\n.suite-meta {\n display: flex;\n gap: 16px;\n font-size: 12px;\n color: var(--test-text-secondary);\n flex-wrap: wrap;\n}\n\n.run-meta span,\n.suite-meta span {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.run-meta span i,\n.suite-meta span i {\n color: var(--test-text-muted);\n font-size: 11px;\n}\n\n.run-item > i.fa-chevron-right,\n.suite-item > i.fa-chevron-right {\n color: var(--test-text-muted);\n font-size: 14px;\n transition: var(--test-transition);\n}\n\n.run-item:hover > i.fa-chevron-right,\n.suite-item:hover > i.fa-chevron-right {\n color: var(--test-primary);\n transform: translateX(2px);\n}\n\n/* Run Evaluation Stack */\n.run-eval-stack {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-top: 8px;\n flex-wrap: wrap;\n}\n\n/* Evaluation Pills */\n.eval-pill {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border-radius: 16px;\n font-size: 11px;\n font-weight: 600;\n transition: var(--test-transition);\n}\n\n.eval-pill i {\n font-size: 10px;\n}\n\n/* Status pill colors */\n.eval-pill.status-pill.status-passed {\n background: #dcfce7;\n color: #16a34a;\n}\n\n.eval-pill.status-pill.status-failed {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.status-pill.status-error {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.status-pill.status-timeout {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.status-pill.status-skipped,\n.eval-pill.status-pill.status-pending {\n background: #f1f5f9;\n color: #64748b;\n}\n\n.eval-pill.status-pill.status-running {\n background: #dbeafe;\n color: #2563eb;\n}\n\n/* Human feedback pills */\n.eval-pill.human-pill.no-feedback {\n background: #f1f5f9;\n color: #94a3b8;\n padding: 4px 8px;\n}\n\n.eval-pill.human-pill.has-feedback.rating-low {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.human-pill.has-feedback.rating-medium {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.human-pill.has-feedback.rating-good {\n background: #d1fae5;\n color: #059669;\n}\n\n.eval-pill.human-pill.has-feedback.rating-excellent {\n background: #dcfce7;\n color: #16a34a;\n}\n\n/* Auto score pills */\n.eval-pill.auto-pill.no-score {\n background: #f1f5f9;\n color: #94a3b8;\n padding: 4px 8px;\n}\n\n.eval-pill.auto-pill.has-score.score-low {\n background: #fee2e2;\n color: #dc2626;\n}\n\n.eval-pill.auto-pill.has-score.score-medium {\n background: #fef3c7;\n color: #d97706;\n}\n\n.eval-pill.auto-pill.has-score.score-good {\n background: #d1fae5;\n color: #059669;\n}\n\n.eval-pill.auto-pill.has-score.score-excellent {\n background: #dcfce7;\n color: #16a34a;\n}\n\n/* Run Tags */\n.run-tags {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 8px;\n flex-wrap: wrap;\n}\n\n.run-tag {\n display: inline-flex;\n align-items: center;\n padding: 2px 8px;\n background: rgba(37, 99, 235, 0.1);\n color: var(--test-primary);\n border-radius: 10px;\n font-size: 11px;\n font-weight: 500;\n}\n\n.run-tag-more {\n display: inline-flex;\n align-items: center;\n padding: 2px 8px;\n background: var(--test-border);\n color: var(--test-text-muted);\n border-radius: 10px;\n font-size: 11px;\n font-weight: 500;\n}\n\n/* ===========================\n Empty States\n =========================== */\n.empty-state {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 24px;\n text-align: center;\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n}\n\n.empty-icon {\n width: 80px;\n height: 80px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: var(--test-bg);\n border-radius: 50%;\n margin-bottom: 20px;\n}\n\n.empty-icon i {\n font-size: 36px;\n color: var(--test-text-muted);\n}\n\n.empty-state h4 {\n margin: 0 0 8px 0;\n font-size: 18px;\n font-weight: 600;\n color: var(--test-text);\n}\n\n.empty-state p {\n margin: 0 0 20px 0;\n font-size: 14px;\n color: var(--test-text-secondary);\n max-width: 300px;\n}\n\n/* Legacy no-data for backwards compatibility */\n.no-data {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 60px 20px;\n color: var(--test-text-muted);\n text-align: center;\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n}\n\n.no-data i {\n font-size: 48px;\n margin-bottom: 16px;\n opacity: 0.3;\n}\n\n.no-data p {\n margin: 0;\n font-size: 14px;\n}\n\n/* ===========================\n Keyboard Shortcuts Popup\n =========================== */\n/* Keyboard shortcuts toggle button */\n.shortcuts-toggle {\n position: fixed;\n bottom: 20px;\n right: 20px;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n box-shadow: var(--test-shadow-md);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--test-text-secondary);\n font-size: 14px;\n z-index: 99;\n transition: var(--test-transition);\n opacity: 0.7;\n}\n\n.shortcuts-toggle:hover {\n opacity: 1;\n transform: scale(1.1);\n color: var(--test-primary);\n border-color: var(--test-primary);\n}\n\n.keyboard-shortcuts {\n position: fixed;\n bottom: 20px;\n right: 20px;\n background: var(--test-surface);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n padding: 12px 16px;\n box-shadow: var(--test-shadow-lg);\n font-size: 12px;\n color: var(--test-text-secondary);\n z-index: 100;\n max-width: 260px;\n}\n\n.shortcuts-header {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 10px;\n padding-bottom: 8px;\n border-bottom: 1px solid var(--test-border);\n font-weight: 600;\n color: var(--test-text);\n}\n\n.shortcuts-close {\n margin-left: auto;\n background: none;\n border: none;\n cursor: pointer;\n color: var(--test-text-muted);\n font-size: 12px;\n padding: 2px 4px;\n border-radius: 4px;\n transition: var(--test-transition);\n}\n\n.shortcuts-close:hover {\n color: var(--test-text);\n background: var(--test-border);\n}\n\n.shortcut-list {\n display: flex;\n flex-direction: column;\n gap: 6px;\n}\n\n.shortcut-item {\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\n.shortcut-keys {\n display: flex;\n gap: 4px;\n}\n\n.shortcut-keys kbd {\n background: var(--test-bg);\n border: 1px solid var(--test-border);\n border-radius: 4px;\n padding: 2px 6px;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n font-size: 11px;\n color: var(--test-text);\n}\n\n/* ===========================\n Responsive Design - Tablet\n =========================== */\n@media (max-width: 1024px) {\n .metrics-bar {\n grid-template-columns: repeat(2, 1fr);\n }\n\n .info-grid {\n grid-template-columns: repeat(2, 1fr);\n }\n\n .config-grid {\n grid-template-columns: 1fr;\n }\n\n .keyboard-shortcuts, .shortcuts-toggle {\n display: none;\n }\n}\n\n/* ===========================\n Responsive Design - Mobile\n =========================== */\n@media (max-width: 768px) {\n .test-form {\n height: auto;\n min-height: 100%;\n }\n\n .test-header {\n padding: 16px;\n }\n\n .header-content {\n flex-direction: column;\n gap: 16px;\n }\n\n .header-left {\n width: 100%;\n }\n\n .test-icon {\n width: 48px;\n height: 48px;\n font-size: 20px;\n }\n\n .test-info h1 {\n font-size: 18px;\n }\n\n .test-meta {\n gap: 8px;\n }\n\n .status-badge {\n padding: 4px 10px;\n font-size: 11px;\n }\n\n .header-actions {\n width: 100%;\n justify-content: stretch;\n }\n\n .header-actions button {\n flex: 1;\n }\n\n .metrics-bar {\n grid-template-columns: repeat(2, 1fr);\n gap: 10px;\n }\n\n .metric-card {\n padding: 12px;\n }\n\n .metric-value {\n font-size: 16px;\n }\n\n .tabs {\n padding: 0 12px;\n }\n\n .tab {\n padding: 12px 14px;\n font-size: 13px;\n gap: 6px;\n }\n\n .tab i {\n font-size: 14px;\n }\n\n .tab-shortcut {\n display: none;\n }\n\n .tab-content {\n padding: 16px;\n }\n\n .info-section,\n .json-section,\n .config-section {\n padding: 18px;\n }\n\n .info-grid {\n grid-template-columns: 1fr;\n }\n\n .json-tabs {\n flex-direction: column;\n }\n\n .json-tab {\n min-width: 0;\n justify-content: flex-start;\n }\n\n .run-item,\n .suite-item {\n padding: 14px;\n }\n\n .run-icon,\n .suite-icon {\n width: 40px;\n height: 40px;\n font-size: 16px;\n }\n\n .run-meta,\n .suite-meta {\n flex-direction: column;\n gap: 4px;\n }\n\n .empty-state {\n padding: 40px 20px;\n }\n\n .empty-icon {\n width: 64px;\n height: 64px;\n }\n\n .empty-icon i {\n font-size: 28px;\n }\n}\n\n/* ===========================\n Responsive Design - Small Mobile\n =========================== */\n@media (max-width: 480px) {\n .test-header {\n padding: 12px;\n }\n\n .header-left {\n gap: 12px;\n }\n\n .test-icon {\n width: 40px;\n height: 40px;\n font-size: 18px;\n border-radius: 8px;\n }\n\n .test-info h1 {\n font-size: 16px;\n }\n\n .metrics-bar {\n grid-template-columns: 1fr 1fr;\n }\n\n .tabs {\n padding: 0 8px;\n }\n\n .tab {\n padding: 10px 12px;\n font-size: 12px;\n }\n\n .tab-badge {\n display: none;\n }\n\n .tab-content {\n padding: 12px;\n }\n\n .run-header {\n flex-direction: column;\n align-items: flex-start;\n gap: 4px;\n }\n}\n\n/* ===========================\n Touch Device Optimizations\n =========================== */\n@media (hover: none) and (pointer: coarse) {\n .tab,\n .json-tab,\n .run-item,\n .suite-item {\n -webkit-tap-highlight-color: transparent;\n }\n\n .run-item:active,\n .suite-item:active {\n background: rgba(37, 99, 235, 0.1);\n transform: scale(0.98);\n }\n\n .tab:active,\n .json-tab:active {\n background: rgba(37, 99, 235, 0.1);\n }\n\n /* Larger touch targets */\n .tab {\n min-height: 48px;\n }\n\n .run-item,\n .suite-item {\n min-height: 64px;\n }\n}\n\n/* ===========================\n Reduced Motion\n =========================== */\n@media (prefers-reduced-motion: reduce) {\n *,\n *::before,\n *::after {\n animation-duration: 0.01ms !important;\n animation-iteration-count: 1 !important;\n transition-duration: 0.01ms !important;\n }\n\n .skeleton-icon,\n .skeleton-line {\n animation: none;\n background: #e2e8f0;\n }\n}\n\n/* ===========================\n History Tab\n =========================== */\n.history-tab {\n animation: fadeIn 0.3s ease-out;\n}\n\n.history-content {\n display: flex;\n flex-direction: column;\n gap: 24px;\n}\n\n/* History Filters */\n.history-filters {\n display: flex;\n justify-content: space-between;\n align-items: center;\n flex-wrap: wrap;\n gap: 16px;\n padding: 16px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n box-shadow: var(--test-shadow-sm);\n}\n\n.time-range-filters {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n.filter-label {\n font-size: 13px;\n font-weight: 600;\n color: var(--test-text-secondary);\n margin-right: 4px;\n}\n\n.filter-btn {\n padding: 8px 16px;\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-sm);\n background: var(--test-surface);\n color: var(--test-text-secondary);\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.filter-btn:hover {\n border-color: var(--test-primary-light);\n color: var(--test-primary);\n background: rgba(37, 99, 235, 0.05);\n}\n\n.filter-btn.active {\n background: var(--test-primary);\n color: white;\n border-color: var(--test-primary);\n}\n\n.history-actions {\n display: flex;\n gap: 8px;\n}\n\n/* KPI Cards */\n.history-kpi-cards {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n gap: 16px;\n}\n\n.kpi-card {\n display: flex;\n align-items: center;\n gap: 14px;\n padding: 18px;\n background: var(--test-surface);\n border-radius: var(--test-radius-md);\n box-shadow: var(--test-shadow-sm);\n transition: var(--test-transition);\n}\n\n.kpi-card:hover {\n transform: translateY(-2px);\n box-shadow: var(--test-shadow-md);\n}\n\n.kpi-icon {\n width: 48px;\n height: 48px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: linear-gradient(135deg, var(--test-primary) 0%, var(--test-primary-dark) 100%);\n border-radius: var(--test-radius-md);\n color: white;\n font-size: 20px;\n flex-shrink: 0;\n}\n\n.kpi-icon.pass-rate {\n background: linear-gradient(135deg, var(--test-success) 0%, #059669 100%);\n}\n\n.kpi-content {\n flex: 1;\n min-width: 0;\n}\n\n.kpi-value {\n font-size: 22px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.kpi-label {\n font-size: 12px;\n color: var(--test-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n margin-top: 2px;\n}\n\n.trend-icon {\n font-size: 14px;\n}\n\n.trend-icon.trend-up {\n color: var(--test-success);\n}\n\n.trend-icon.trend-down {\n color: var(--test-error);\n}\n\n/* History Section */\n.history-section {\n background: var(--test-surface);\n border-radius: var(--test-radius-lg);\n padding: 24px;\n box-shadow: var(--test-shadow-sm);\n}\n\n.history-section h3 {\n margin: 0 0 20px 0;\n font-size: 18px;\n font-weight: 700;\n color: var(--test-text);\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n.history-section h3 i {\n color: var(--test-primary);\n}\n\n/* History Table */\n.history-table-container {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.history-table {\n width: 100%;\n border-collapse: collapse;\n font-size: 14px;\n}\n\n.history-table th,\n.history-table td {\n padding: 12px 16px;\n text-align: left;\n border-bottom: 1px solid var(--test-border);\n}\n\n.history-table th {\n font-size: 11px;\n font-weight: 700;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n color: var(--test-text-muted);\n background: var(--test-bg);\n}\n\n.history-table tbody tr:hover {\n background: rgba(37, 99, 235, 0.03);\n}\n\n.date-cell {\n font-weight: 600;\n color: var(--test-text);\n}\n\n.passed-cell {\n color: var(--test-success);\n font-weight: 600;\n}\n\n.failed-cell {\n color: var(--test-error);\n font-weight: 600;\n}\n\n.pass-rate-cell {\n min-width: 120px;\n}\n\n.pass-rate-bar {\n position: relative;\n height: 24px;\n background: var(--test-bg);\n border-radius: 12px;\n overflow: hidden;\n}\n\n.pass-rate-fill {\n position: absolute;\n left: 0;\n top: 0;\n height: 100%;\n background: linear-gradient(90deg, var(--test-success) 0%, #34d399 100%);\n border-radius: 12px;\n transition: width 0.5s ease-out;\n}\n\n.pass-rate-text {\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n font-size: 11px;\n font-weight: 700;\n color: var(--test-text);\n z-index: 1;\n}\n\n/* Suite Performance List */\n.suite-performance-list {\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.suite-perf-card {\n display: flex;\n align-items: center;\n gap: 16px;\n padding: 18px;\n background: var(--test-bg);\n border: 1px solid var(--test-border);\n border-radius: var(--test-radius-md);\n cursor: pointer;\n transition: var(--test-transition);\n}\n\n.suite-perf-card:hover {\n background: rgba(37, 99, 235, 0.05);\n border-color: var(--test-primary-light);\n transform: translateX(4px);\n}\n\n.suite-perf-header {\n flex: 1;\n min-width: 0;\n}\n\n.suite-perf-name {\n font-size: 15px;\n font-weight: 600;\n color: var(--test-text);\n margin-bottom: 6px;\n}\n\n.suite-perf-tags {\n display: flex;\n gap: 6px;\n flex-wrap: wrap;\n}\n\n.tag-mini {\n display: inline-flex;\n padding: 2px 8px;\n background: rgba(37, 99, 235, 0.1);\n color: var(--test-primary);\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n}\n\n.tag-more {\n display: inline-flex;\n padding: 2px 8px;\n background: var(--test-border);\n color: var(--test-text-muted);\n border-radius: 10px;\n font-size: 10px;\n font-weight: 600;\n}\n\n.suite-perf-stats {\n display: flex;\n gap: 24px;\n flex-wrap: wrap;\n}\n\n.suite-stat {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n}\n\n.suite-stat .stat-value {\n font-size: 16px;\n font-weight: 700;\n color: var(--test-text);\n}\n\n.suite-stat .stat-value.pass-rate.high {\n color: var(--test-success);\n}\n\n.suite-stat .stat-value.pass-rate.low {\n color: var(--test-error);\n}\n\n.suite-stat .stat-label {\n font-size: 10px;\n color: var(--test-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.suite-perf-arrow {\n color: var(--test-text-muted);\n font-size: 14px;\n transition: var(--test-transition);\n}\n\n.suite-perf-card:hover .suite-perf-arrow {\n color: var(--test-primary);\n transform: translateX(2px);\n}\n\n/* ===========================\n Print Styles\n =========================== */\n@media print {\n .test-form {\n background: white;\n height: auto;\n }\n\n .header-actions,\n .tabs-container,\n .keyboard-shortcuts {\n display: none !important;\n }\n\n .tab-content {\n overflow: visible;\n padding: 0;\n }\n\n .info-section,\n .json-section,\n .config-section,\n .empty-state {\n break-inside: avoid;\n box-shadow: none;\n border: 1px solid #ddd;\n }\n}\n"] }]
2009
+ }], () => [{ type: i0.ElementRef }, { type: i1.SharedService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: i3.TestingDialogService }, { type: i3.EvaluationPreferencesService }, { type: i0.ViewContainerRef }, { type: i4.ApplicationManager }], { handleKeyboardShortcut: [{
1966
2010
  type: HostListener,
1967
2011
  args: ['document:keydown', ['$event']]
1968
2012
  }] }); })();
1969
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TestFormComponentExtended, { className: "TestFormComponentExtended", filePath: "src/lib/custom/Tests/test-form.component.ts", lineNumber: 61 }); })();
1970
- export function LoadTestFormComponentExtended() {
1971
- // Prevents tree-shaking
1972
- }
1973
- LoadTestFormComponentExtended();
2013
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TestFormComponentExtended, { className: "TestFormComponentExtended", filePath: "src/lib/custom/tests/test-form.component.ts", lineNumber: 63 }); })();
1974
2014
  //# sourceMappingURL=test-form.component.js.map