@memberjunction/ng-core-entity-forms 5.42.0 → 5.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__tests__/model-prediction.logic.test.d.ts +2 -0
- package/dist/__tests__/model-prediction.logic.test.d.ts.map +1 -0
- package/dist/__tests__/model-prediction.logic.test.js +140 -0
- package/dist/__tests__/model-prediction.logic.test.js.map +1 -0
- package/dist/lib/custom/AIAgentSessions/ai-agent-session-form.component.js +79 -105
- package/dist/lib/custom/AIAgentSessions/ai-agent-session-form.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/FlowAgentType/flow-agent-form-section.component.js +7 -10
- package/dist/lib/custom/AIAgents/FlowAgentType/flow-agent-form-section.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/add-action-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/add-action-dialog.component.js +46 -51
- package/dist/lib/custom/AIAgents/add-action-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts +2 -0
- package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js +300 -378
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js +22 -29
- package/dist/lib/custom/AIAgents/create-sub-agent-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.js +15 -17
- package/dist/lib/custom/AIAgents/new-agent-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js +27 -34
- package/dist/lib/custom/AIAgents/prompt-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts +11 -0
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js +48 -47
- package/dist/lib/custom/AIAgents/sub-agent-selector-dialog.component.js.map +1 -1
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js +438 -454
- package/dist/lib/custom/AIPromptRuns/ai-prompt-run-form.component.js.map +1 -1
- package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js +48 -51
- package/dist/lib/custom/AIPromptRuns/chat-message-viewer.component.js.map +1 -1
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js +253 -282
- package/dist/lib/custom/AIPrompts/ai-prompt-form.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-execution-log-form.component.js +24 -33
- package/dist/lib/custom/Actions/action-execution-log-form.component.js.map +1 -1
- package/dist/lib/custom/Actions/action-form.component.js +263 -311
- package/dist/lib/custom/Actions/action-form.component.js.map +1 -1
- package/dist/lib/custom/Entities/entity-form.component.d.ts +6 -0
- package/dist/lib/custom/Entities/entity-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Entities/entity-form.component.js +475 -493
- package/dist/lib/custom/Entities/entity-form.component.js.map +1 -1
- package/dist/lib/custom/Lists/list-form.component.js +122 -173
- package/dist/lib/custom/Lists/list-form.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-form.component.js +190 -248
- package/dist/lib/custom/Queries/query-form.component.js.map +1 -1
- package/dist/lib/custom/Queries/query-run-dialog.component.js +19 -23
- package/dist/lib/custom/Queries/query-run-dialog.component.js.map +1 -1
- package/dist/lib/custom/RecordProcesses/record-process-form.component.d.ts +16 -0
- package/dist/lib/custom/RecordProcesses/record-process-form.component.d.ts.map +1 -0
- package/dist/lib/custom/RecordProcesses/record-process-form.component.js +54 -0
- package/dist/lib/custom/RecordProcesses/record-process-form.component.js.map +1 -0
- package/dist/lib/custom/SearchScopes/searchscopeprovider-form.component.js +23 -24
- package/dist/lib/custom/SearchScopes/searchscopeprovider-form.component.js.map +1 -1
- package/dist/lib/custom/Templates/template-param-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/Templates/template-param-dialog.component.js +25 -46
- package/dist/lib/custom/Templates/template-param-dialog.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-form.component.js +100 -130
- package/dist/lib/custom/Tests/test-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-run-form.component.js +187 -205
- package/dist/lib/custom/Tests/test-run-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.d.ts +8 -0
- package/dist/lib/custom/Tests/test-suite-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.js +412 -489
- package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-run-form.component.js +100 -126
- package/dist/lib/custom/Tests/test-suite-run-form.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js +166 -184
- package/dist/lib/custom/ai-agent-run/ai-agent-run-analytics.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.js +42 -61
- package/dist/lib/custom/ai-agent-run/ai-agent-run-step-detail.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js +8 -17
- package/dist/lib/custom/ai-agent-run/ai-agent-run-timeline.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts +0 -2
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.d.ts.map +1 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js +183 -188
- package/dist/lib/custom/ai-agent-run/ai-agent-run.component.js.map +1 -1
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.d.ts +108 -0
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.d.ts.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.js +665 -0
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.component.js.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.d.ts +94 -0
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.d.ts.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.js +257 -0
- package/dist/lib/custom/ai-agent-run/flow/agent-run-flow.model.js.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/constellation.component.d.ts +38 -0
- package/dist/lib/custom/ai-agent-run/flow/constellation.component.d.ts.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/constellation.component.js +200 -0
- package/dist/lib/custom/ai-agent-run/flow/constellation.component.js.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.d.ts +44 -0
- package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.d.ts.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.js +180 -0
- package/dist/lib/custom/ai-agent-run/flow/flame-cascade.component.js.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.d.ts +12 -0
- package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.d.ts.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.js +46 -0
- package/dist/lib/custom/ai-agent-run/flow/flow-svg.util.js.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/flowchart.component.d.ts +64 -0
- package/dist/lib/custom/ai-agent-run/flow/flowchart.component.d.ts.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/flowchart.component.js +267 -0
- package/dist/lib/custom/ai-agent-run/flow/flowchart.component.js.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/pan-zoom.d.ts +53 -0
- package/dist/lib/custom/ai-agent-run/flow/pan-zoom.d.ts.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/pan-zoom.js +111 -0
- package/dist/lib/custom/ai-agent-run/flow/pan-zoom.js.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.d.ts +42 -0
- package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.d.ts.map +1 -0
- package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.js +193 -0
- package/dist/lib/custom/ai-agent-run/flow/subway-lines.component.js.map +1 -0
- package/dist/lib/custom/custom-forms.module.d.ts +58 -49
- package/dist/lib/custom/custom-forms.module.d.ts.map +1 -1
- package/dist/lib/custom/custom-forms.module.js +64 -16
- package/dist/lib/custom/custom-forms.module.js.map +1 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts +2 -0
- package/dist/lib/custom/shared/entity-selector-dialog.component.d.ts.map +1 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.js +25 -25
- package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js +280 -216
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentChannel/mjaiagentchannel.form.component.js +25 -21
- package/dist/lib/generated/Entities/MJAIAgentChannel/mjaiagentchannel.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentRun/mjaiagentrun.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentRun/mjaiagentrun.form.component.js +68 -14
- package/dist/lib/generated/Entities/MJAIAgentRun/mjaiagentrun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentSession/mjaiagentsession.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentSession/mjaiagentsession.form.component.js +44 -32
- package/dist/lib/generated/Entities/MJAIAgentSession/mjaiagentsession.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentSkill/mjaiagentskill.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJAIAgentSkill/mjaiagentskill.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJAIAgentSkill/mjaiagentskill.form.component.js +66 -0
- package/dist/lib/generated/Entities/MJAIAgentSkill/mjaiagentskill.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJAIPrompt/mjaiprompt.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIPrompt/mjaiprompt.form.component.js +55 -19
- package/dist/lib/generated/Entities/MJAIPrompt/mjaiprompt.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js +28 -10
- package/dist/lib/generated/Entities/MJAIPromptRun/mjaipromptrun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAISkill/mjaiskill.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJAISkill/mjaiskill.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJAISkill/mjaiskill.form.component.js +167 -0
- package/dist/lib/generated/Entities/MJAISkill/mjaiskill.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJAISkillAction/mjaiskillaction.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJAISkillAction/mjaiskillaction.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJAISkillAction/mjaiskillaction.form.component.js +64 -0
- package/dist/lib/generated/Entities/MJAISkillAction/mjaiskillaction.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJAISkillPermission/mjaiskillpermission.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJAISkillPermission/mjaiskillpermission.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJAISkillPermission/mjaiskillpermission.form.component.js +82 -0
- package/dist/lib/generated/Entities/MJAISkillPermission/mjaiskillpermission.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJAISkillSubAgent/mjaiskillsubagent.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJAISkillSubAgent/mjaiskillsubagent.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJAISkillSubAgent/mjaiskillsubagent.form.component.js +64 -0
- package/dist/lib/generated/Entities/MJAISkillSubAgent/mjaiskillsubagent.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJAction/mjaction.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAction/mjaction.form.component.js +35 -17
- package/dist/lib/generated/Entities/MJAction/mjaction.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJApplication/mjapplication.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJApplication/mjapplication.form.component.js +59 -51
- package/dist/lib/generated/Entities/MJApplication/mjapplication.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJCollection/mjcollection.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJCollection/mjcollection.form.component.js +25 -7
- package/dist/lib/generated/Entities/MJCollection/mjcollection.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJCollectionArtifact/mjcollectionartifact.form.component.js +11 -7
- package/dist/lib/generated/Entities/MJCollectionArtifact/mjcollectionartifact.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJConversation/mjconversation.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJConversation/mjconversation.form.component.js +56 -46
- package/dist/lib/generated/Entities/MJConversation/mjconversation.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJConversationDetail/mjconversationdetail.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJConversationDetail/mjconversationdetail.form.component.js +73 -59
- package/dist/lib/generated/Entities/MJConversationDetail/mjconversationdetail.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.js +24 -4
- package/dist/lib/generated/Entities/MJDuplicateRunDetailMatch/mjduplicaterundetailmatch.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js +137 -87
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntityActionInvocation/mjentityactioninvocation.form.component.js +10 -8
- package/dist/lib/generated/Entities/MJEntityActionInvocation/mjentityactioninvocation.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.js +47 -29
- package/dist/lib/generated/Entities/MJEntityDocument/mjentitydocument.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJExperiment/mjexperiment.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJExperiment/mjexperiment.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJExperiment/mjexperiment.form.component.js +99 -0
- package/dist/lib/generated/Entities/MJExperiment/mjexperiment.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJExperimentSession/mjexperimentsession.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJExperimentSession/mjexperimentsession.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJExperimentSession/mjexperimentsession.form.component.js +101 -0
- package/dist/lib/generated/Entities/MJExperimentSession/mjexperimentsession.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJExperimentSessionIteration/mjexperimentsessioniteration.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJExperimentSessionIteration/mjexperimentsessioniteration.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJExperimentSessionIteration/mjexperimentsessioniteration.form.component.js +115 -0
- package/dist/lib/generated/Entities/MJExperimentSessionIteration/mjexperimentsessioniteration.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJFile/mjfile.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJFile/mjfile.form.component.js +63 -9
- package/dist/lib/generated/Entities/MJFile/mjfile.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJFileStorageProvider/mjfilestorageprovider.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJFileStorageProvider/mjfilestorageprovider.form.component.js +32 -14
- package/dist/lib/generated/Entities/MJFileStorageProvider/mjfilestorageprovider.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJMLAlgorithm/mjmlalgorithm.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJMLAlgorithm/mjmlalgorithm.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJMLAlgorithm/mjmlalgorithm.form.component.js +161 -0
- package/dist/lib/generated/Entities/MJMLAlgorithm/mjmlalgorithm.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJMLAlgorithmUseCase/mjmlalgorithmusecase.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJMLAlgorithmUseCase/mjmlalgorithmusecase.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJMLAlgorithmUseCase/mjmlalgorithmusecase.form.component.js +89 -0
- package/dist/lib/generated/Entities/MJMLAlgorithmUseCase/mjmlalgorithmusecase.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJMLAlgorithmUseCaseRanking/mjmlalgorithmusecaseranking.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJMLAlgorithmUseCaseRanking/mjmlalgorithmusecaseranking.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJMLAlgorithmUseCaseRanking/mjmlalgorithmusecaseranking.form.component.js +76 -0
- package/dist/lib/generated/Entities/MJMLAlgorithmUseCaseRanking/mjmlalgorithmusecaseranking.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJMLModel/mjmlmodel.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJMLModel/mjmlmodel.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJMLModel/mjmlmodel.form.component.js +141 -0
- package/dist/lib/generated/Entities/MJMLModel/mjmlmodel.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJMLModelScoringBinding/mjmlmodelscoringbinding.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJMLModelScoringBinding/mjmlmodelscoringbinding.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJMLModelScoringBinding/mjmlmodelscoringbinding.form.component.js +88 -0
- package/dist/lib/generated/Entities/MJMLModelScoringBinding/mjmlmodelscoringbinding.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJMLTrainingPipeline/mjmltrainingpipeline.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJMLTrainingPipeline/mjmltrainingpipeline.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJMLTrainingPipeline/mjmltrainingpipeline.form.component.js +143 -0
- package/dist/lib/generated/Entities/MJMLTrainingPipeline/mjmltrainingpipeline.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJMLTrainingRun/mjmltrainingrun.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJMLTrainingRun/mjmltrainingrun.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJMLTrainingRun/mjmltrainingrun.form.component.js +110 -0
- package/dist/lib/generated/Entities/MJMLTrainingRun/mjmltrainingrun.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJOpenApp/mjopenapp.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJOpenApp/mjopenapp.form.component.js +56 -24
- package/dist/lib/generated/Entities/MJOpenApp/mjopenapp.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJProcessRun/mjprocessrun.form.component.js +19 -17
- package/dist/lib/generated/Entities/MJProcessRun/mjprocessrun.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJRecordProcess/mjrecordprocess.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJRecordProcess/mjrecordprocess.form.component.js +46 -26
- package/dist/lib/generated/Entities/MJRecordProcess/mjrecordprocess.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJRemoteOperation/mjremoteoperation.form.component.js +12 -6
- package/dist/lib/generated/Entities/MJRemoteOperation/mjremoteoperation.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJRole/mjrole.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJRole/mjrole.form.component.js +36 -18
- package/dist/lib/generated/Entities/MJRole/mjrole.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJSchemaInfo/mjschemainfo.form.component.js +8 -6
- package/dist/lib/generated/Entities/MJSchemaInfo/mjschemainfo.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJScopedPromptPart/mjscopedpromptpart.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJScopedPromptPart/mjscopedpromptpart.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJScopedPromptPart/mjscopedpromptpart.form.component.js +78 -0
- package/dist/lib/generated/Entities/MJScopedPromptPart/mjscopedpromptpart.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js +145 -109
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js.map +1 -1
- package/dist/lib/generated/generated-forms.module.d.ts +356 -335
- package/dist/lib/generated/generated-forms.module.d.ts.map +1 -1
- package/dist/lib/generated/generated-forms.module.js +304 -226
- package/dist/lib/generated/generated-forms.module.js.map +1 -1
- package/dist/lib/panels/ai-agents/agent-realtime.panel.js +44 -44
- package/dist/lib/panels/ai-agents/agent-realtime.panel.js.map +1 -1
- package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.d.ts +43 -0
- package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.d.ts.map +1 -0
- package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.js +240 -0
- package/dist/lib/panels/ai-skill-sharing/ai-skill-sharing-panel.component.js.map +1 -0
- package/dist/lib/panels/model-predictions/model-prediction.logic.d.ts +69 -0
- package/dist/lib/panels/model-predictions/model-prediction.logic.d.ts.map +1 -0
- package/dist/lib/panels/model-predictions/model-prediction.logic.js +130 -0
- package/dist/lib/panels/model-predictions/model-prediction.logic.js.map +1 -0
- package/dist/lib/panels/model-predictions/model-prediction.panel.d.ts +83 -0
- package/dist/lib/panels/model-predictions/model-prediction.panel.d.ts.map +1 -0
- package/dist/lib/panels/model-predictions/model-prediction.panel.js +293 -0
- package/dist/lib/panels/model-predictions/model-prediction.panel.js.map +1 -0
- package/package.json +38 -36
- package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.d.ts +0 -82
- package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.d.ts.map +0 -1
- package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js +0 -1033
- package/dist/lib/custom/ai-agent-run/ai-agent-run-visualization.component.js.map +0 -1
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter, ViewChild, ChangeDetectionStrategy, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { FLOW_COLORS, agentOf, agentShortName, shortLabel, activeLeaf, formatDuration } from './agent-run-flow.model';
|
|
3
|
+
import { svgEl, clip, appendIcon, appendTitle } from './flow-svg.util';
|
|
4
|
+
import { PanZoomController } from './pan-zoom';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
const _c0 = ["svg"];
|
|
7
|
+
/**
|
|
8
|
+
* Subway Lines — each agent is a transit line; sub-agents branch off and rejoin.
|
|
9
|
+
* Connectors carry the line's (agent's) colour and brighten as the train passes,
|
|
10
|
+
* so you can follow a sub-agent's route end to end. Stations show the real step
|
|
11
|
+
* icon; labels are abbreviated and angled 30° so dense lines stay readable.
|
|
12
|
+
*/
|
|
13
|
+
export class SubwayLinesComponent {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.nodeSelected = new EventEmitter();
|
|
16
|
+
this._model = null;
|
|
17
|
+
this.built = false;
|
|
18
|
+
this.stations = new Map();
|
|
19
|
+
this.connectors = [];
|
|
20
|
+
this.selectedId = -1;
|
|
21
|
+
this.VW = 1280;
|
|
22
|
+
this.PAD = 188;
|
|
23
|
+
this.TOP = 132;
|
|
24
|
+
this.LINE_GAP = 168;
|
|
25
|
+
this.DWELL = 0.6;
|
|
26
|
+
this.MIN_LABEL_GAP = 40;
|
|
27
|
+
}
|
|
28
|
+
ZoomIn() { this.pz?.ZoomIn(); }
|
|
29
|
+
ZoomOut() { this.pz?.ZoomOut(); }
|
|
30
|
+
FitReset() { this.pz?.Reset(); }
|
|
31
|
+
ReapplyView() { this.pz?.Reapply(); }
|
|
32
|
+
ngOnDestroy() { this.pz?.Detach(); }
|
|
33
|
+
get IW() { return this.VW - this.PAD - 90; }
|
|
34
|
+
SetSelected(id) { this.selectedId = id ?? -1; }
|
|
35
|
+
set Model(m) { this._model = m; this.built = false; this.clear(); }
|
|
36
|
+
Render(p, ts) {
|
|
37
|
+
if (!this._model)
|
|
38
|
+
return;
|
|
39
|
+
if (!this.built) {
|
|
40
|
+
this.build();
|
|
41
|
+
this.built = true;
|
|
42
|
+
}
|
|
43
|
+
this.update(p, ts);
|
|
44
|
+
}
|
|
45
|
+
clear() {
|
|
46
|
+
this.pz?.Detach();
|
|
47
|
+
this.pz = undefined;
|
|
48
|
+
const svg = this.svgRef?.nativeElement;
|
|
49
|
+
if (svg)
|
|
50
|
+
while (svg.firstChild)
|
|
51
|
+
svg.removeChild(svg.firstChild);
|
|
52
|
+
this.stations.clear();
|
|
53
|
+
this.connectors = [];
|
|
54
|
+
}
|
|
55
|
+
build() {
|
|
56
|
+
const svg = this.svgRef.nativeElement;
|
|
57
|
+
const m = this._model;
|
|
58
|
+
const agents = m.nodes.filter(n => n.type === 'agent' || n.type === 'subagent');
|
|
59
|
+
const lineY = new Map();
|
|
60
|
+
agents.forEach((a, i) => lineY.set(a.id, this.TOP + i * this.LINE_GAP));
|
|
61
|
+
const VH = this.TOP + Math.max(1, agents.length) * this.LINE_GAP + 30;
|
|
62
|
+
svg.setAttribute('viewBox', `0 0 ${this.VW} ${VH}`);
|
|
63
|
+
const main = svgEl('g', {}, svg);
|
|
64
|
+
const lineG = svgEl('g', {}, main);
|
|
65
|
+
const connG = svgEl('g', {}, main);
|
|
66
|
+
const stationG = svgEl('g', {}, main);
|
|
67
|
+
const trainG = svgEl('g', {}, main);
|
|
68
|
+
const sx = (l) => this.PAD + l.tmid * this.IW;
|
|
69
|
+
const sy = (l) => lineY.get(agentOf(l).id) ?? this.TOP;
|
|
70
|
+
const radius = (l) => Math.min(17, 8 + Math.sqrt(l.realDur) * 1.4);
|
|
71
|
+
// line backbones + agent labels (left gutter, with the agent's icon)
|
|
72
|
+
for (const a of agents) {
|
|
73
|
+
const kids = m.leaves.filter(l => agentOf(l) === a);
|
|
74
|
+
const y = lineY.get(a.id);
|
|
75
|
+
const col = FLOW_COLORS[a.type];
|
|
76
|
+
if (kids.length) {
|
|
77
|
+
const x0 = Math.min(...kids.map(sx)) - 32, x1 = Math.max(...kids.map(sx)) + 32;
|
|
78
|
+
svgEl('line', { x1: x0, y1: y, x2: x1, y2: y, stroke: col, 'stroke-width': 7, opacity: 0.32, 'stroke-linecap': 'round' }, lineG);
|
|
79
|
+
}
|
|
80
|
+
appendIcon(lineG, 14, y - 11, 22, a.iconClass, a.logoUrl, col);
|
|
81
|
+
svgEl('text', { x: 44, y: y - 6, 'font-size': 13, 'font-weight': 700, fill: col, 'dominant-baseline': 'middle', text: clip(agentShortName(a), 18) }, lineG);
|
|
82
|
+
svgEl('text', { x: 44, y: y + 10, 'font-size': 9.5, 'dominant-baseline': 'middle', class: 'ftxt-muted', text: `${kids.length} step${kids.length === 1 ? '' : 's'} · ${formatDuration(a.realDur)}` }, lineG);
|
|
83
|
+
}
|
|
84
|
+
// connectors carry the destination line's (agent's) colour
|
|
85
|
+
for (let i = 0; i < m.leaves.length - 1; i++) {
|
|
86
|
+
const a = m.leaves[i], b = m.leaves[i + 1];
|
|
87
|
+
const ax = sx(a), ay = sy(a), bx = sx(b), by = sy(b);
|
|
88
|
+
const mx = (ax + bx) / 2;
|
|
89
|
+
const d = ay === by ? `M${ax},${ay} L${bx},${by}` : `M${ax},${ay} L${mx},${ay} L${mx},${by} L${bx},${by}`;
|
|
90
|
+
const path = svgEl('path', { d, fill: 'none', stroke: FLOW_COLORS[agentOf(b).type], 'stroke-width': 3, opacity: 0.14, 'stroke-linejoin': 'round', 'stroke-linecap': 'round' }, connG);
|
|
91
|
+
this.connectors.push({ path, to: b, len: path.getTotalLength() });
|
|
92
|
+
}
|
|
93
|
+
// stations: ring + step icon; angled abbreviated label (thinned when dense)
|
|
94
|
+
let lastLabelX = -1e9;
|
|
95
|
+
m.leaves.forEach((l) => {
|
|
96
|
+
const x = sx(l), y = sy(l), r = radius(l);
|
|
97
|
+
const col = FLOW_COLORS[l.type];
|
|
98
|
+
const grp = svgEl('g', {}, stationG);
|
|
99
|
+
grp.style.color = col;
|
|
100
|
+
grp.style.cursor = 'pointer';
|
|
101
|
+
appendTitle(grp, `${l.name} · ${formatDuration(l.realDur)}`);
|
|
102
|
+
const ring = svgEl('circle', { cx: x, cy: y, r, fill: 'var(--mj-bg-surface)', stroke: col, 'stroke-width': 3.2 }, grp);
|
|
103
|
+
appendIcon(grp, x - r * 0.62, y - r * 0.62, r * 1.24, l.iconClass, l.logoUrl, col);
|
|
104
|
+
const show = (x - lastLabelX >= this.MIN_LABEL_GAP) || l.heat >= 2;
|
|
105
|
+
let lab;
|
|
106
|
+
if (show) {
|
|
107
|
+
lastLabelX = x;
|
|
108
|
+
const lx = x, ly = y - r - 8;
|
|
109
|
+
lab = svgEl('text', {
|
|
110
|
+
x: lx, y: ly, 'font-size': 10.5, 'font-weight': 600, 'text-anchor': 'start',
|
|
111
|
+
transform: `rotate(-30 ${lx} ${ly})`, class: 'ftxt-secondary', opacity: 0.7,
|
|
112
|
+
text: `${clip(shortLabel(l), 22)} · ${formatDuration(l.realDur)}`
|
|
113
|
+
}, grp);
|
|
114
|
+
}
|
|
115
|
+
grp.addEventListener('click', () => { if (!this.pz?.moved)
|
|
116
|
+
this.nodeSelected.emit(l); });
|
|
117
|
+
this.stations.set(l.id, { ring, lab, leaf: l, r, sx: x, sy: y });
|
|
118
|
+
});
|
|
119
|
+
this.trainHalo = svgEl('circle', { r: 17, opacity: 0, class: 'fhand-dot' }, trainG);
|
|
120
|
+
this.train = svgEl('circle', { r: 9, opacity: 0, stroke: 'var(--mj-bg-surface)', 'stroke-width': 2.5 }, trainG);
|
|
121
|
+
this.pz = new PanZoomController(svg, main, 'mj.agentRunFlow.view.subway.v1');
|
|
122
|
+
this.pz.Load();
|
|
123
|
+
this.pz.Attach();
|
|
124
|
+
}
|
|
125
|
+
update(p, ts) {
|
|
126
|
+
const m = this._model;
|
|
127
|
+
this.stations.forEach(({ ring, lab, leaf, r }) => {
|
|
128
|
+
const started = p >= leaf.t0;
|
|
129
|
+
const active = started && p < leaf.t1;
|
|
130
|
+
const selected = leaf.id === this.selectedId;
|
|
131
|
+
ring.setAttribute('class', selected ? 'glow2' : active ? 'glow' + Math.max(1, leaf.heat) : '');
|
|
132
|
+
ring.setAttribute('stroke-width', selected ? '4.5' : '3.2');
|
|
133
|
+
ring.setAttribute('r', String(active ? r + 2 * Math.abs(Math.sin(ts / 220)) : r));
|
|
134
|
+
ring.setAttribute('fill-opacity', started ? '1' : '0.55');
|
|
135
|
+
lab?.setAttribute('opacity', active || selected ? '1' : started ? '0.85' : '0.6');
|
|
136
|
+
});
|
|
137
|
+
this.connectors.forEach(({ path, to }) => {
|
|
138
|
+
const done = p >= to.t1, lit = p >= to.t0;
|
|
139
|
+
path.setAttribute('opacity', done ? '0.7' : lit ? '0.45' : '0.14');
|
|
140
|
+
path.setAttribute('stroke-width', lit ? '3.6' : '3');
|
|
141
|
+
});
|
|
142
|
+
const leaf = activeLeaf(m, p);
|
|
143
|
+
const idx = m.leaves.indexOf(leaf);
|
|
144
|
+
const frac = p >= leaf.t1 ? 1 : Math.max(0, (p - leaf.t0) / (leaf.t1 - leaf.t0));
|
|
145
|
+
const here = this.stations.get(leaf.id);
|
|
146
|
+
let tx = here?.sx ?? 0, ty = here?.sy ?? 0;
|
|
147
|
+
if (here && idx >= 0 && idx < this.connectors.length && frac >= this.DWELL) {
|
|
148
|
+
const conn = this.connectors[idx];
|
|
149
|
+
const lt = (frac - this.DWELL) / (1 - this.DWELL);
|
|
150
|
+
const pt = conn.path.getPointAtLength(lt * conn.len);
|
|
151
|
+
tx = pt.x;
|
|
152
|
+
ty = pt.y;
|
|
153
|
+
}
|
|
154
|
+
const live = p > 0 && p < 1;
|
|
155
|
+
const lineCol = FLOW_COLORS[agentOf(leaf).type];
|
|
156
|
+
if (this.train) {
|
|
157
|
+
this.train.setAttribute('cx', String(tx));
|
|
158
|
+
this.train.setAttribute('cy', String(ty));
|
|
159
|
+
this.train.setAttribute('opacity', live ? '1' : '0');
|
|
160
|
+
this.train.setAttribute('fill', lineCol);
|
|
161
|
+
this.train.setAttribute('class', live ? 'glow2' : '');
|
|
162
|
+
this.train.style.color = lineCol;
|
|
163
|
+
}
|
|
164
|
+
if (this.trainHalo) {
|
|
165
|
+
this.trainHalo.setAttribute('cx', String(tx));
|
|
166
|
+
this.trainHalo.setAttribute('cy', String(ty));
|
|
167
|
+
this.trainHalo.setAttribute('opacity', live ? String(0.16 + 0.08 * Math.sin(ts / 200)) : '0');
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
static { this.ɵfac = function SubwayLinesComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SubwayLinesComponent)(); }; }
|
|
171
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SubwayLinesComponent, selectors: [["mj-agent-flow-subway"]], viewQuery: function SubwayLinesComponent_Query(rf, ctx) { if (rf & 1) {
|
|
172
|
+
i0.ɵɵviewQuery(_c0, 7);
|
|
173
|
+
} if (rf & 2) {
|
|
174
|
+
let _t;
|
|
175
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.svgRef = _t.first);
|
|
176
|
+
} }, inputs: { Model: "Model" }, outputs: { nodeSelected: "nodeSelected" }, standalone: false, decls: 2, vars: 0, consts: [["svg", ""], ["preserveAspectRatio", "xMidYMid meet", 1, "flow-svg"]], template: function SubwayLinesComponent_Template(rf, ctx) { if (rf & 1) {
|
|
177
|
+
i0.ɵɵnamespaceSVG();
|
|
178
|
+
i0.ɵɵelement(0, "svg", 1, 0);
|
|
179
|
+
} }, styles: ["/* Shared chrome for every flow renderer's <svg> host.\n These components use ViewEncapsulation.None so this CSS reaches SVG nodes\n created imperatively via createElementNS (which never receive Angular's\n emulated-encapsulation scoping attribute). Everything is namespaced under\n `.flow-svg` to avoid leaking into the rest of the app. */\n.flow-svg {\n width: 100%;\n height: 100%;\n display: block;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n}\n\n.flow-svg text { fill: var(--mj-text-primary); }\n.flow-svg .ftxt-secondary { fill: var(--mj-text-secondary); }\n.flow-svg .ftxt-muted { fill: var(--mj-text-muted); }\n.flow-svg .ftxt-on { fill: var(--mj-text-inverse); }\n.flow-svg .fgrid { stroke: var(--mj-border-subtle); }\n.flow-svg .fhand { stroke: var(--mj-text-secondary); }\n.flow-svg .fhand-dot { fill: var(--mj-text-primary); }\n.flow-svg .fstar-bg { fill: var(--mj-text-muted); }\n/* outlined label for legibility over edges / busy fields */\n.flow-svg .fhalo { paint-order: stroke; stroke: var(--mj-bg-page); stroke-width: 3.5px; stroke-linejoin: round; }\n\n/* Heat / activity glow tiers \u2014 driven by `currentColor` (the node's category color). */\n.flow-svg .glow1 { filter: drop-shadow(0 0 4px currentColor); }\n.flow-svg .glow2 { filter: drop-shadow(0 0 9px currentColor); }\n.flow-svg .glow3 { filter: drop-shadow(0 0 16px currentColor); }\n"], encapsulation: 2, changeDetection: 0 }); }
|
|
180
|
+
}
|
|
181
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SubwayLinesComponent, [{
|
|
182
|
+
type: Component,
|
|
183
|
+
args: [{ standalone: false, selector: 'mj-agent-flow-subway', template: `<svg #svg class="flow-svg" preserveAspectRatio="xMidYMid meet"></svg>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["/* Shared chrome for every flow renderer's <svg> host.\n These components use ViewEncapsulation.None so this CSS reaches SVG nodes\n created imperatively via createElementNS (which never receive Angular's\n emulated-encapsulation scoping attribute). Everything is namespaced under\n `.flow-svg` to avoid leaking into the rest of the app. */\n.flow-svg {\n width: 100%;\n height: 100%;\n display: block;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n}\n\n.flow-svg text { fill: var(--mj-text-primary); }\n.flow-svg .ftxt-secondary { fill: var(--mj-text-secondary); }\n.flow-svg .ftxt-muted { fill: var(--mj-text-muted); }\n.flow-svg .ftxt-on { fill: var(--mj-text-inverse); }\n.flow-svg .fgrid { stroke: var(--mj-border-subtle); }\n.flow-svg .fhand { stroke: var(--mj-text-secondary); }\n.flow-svg .fhand-dot { fill: var(--mj-text-primary); }\n.flow-svg .fstar-bg { fill: var(--mj-text-muted); }\n/* outlined label for legibility over edges / busy fields */\n.flow-svg .fhalo { paint-order: stroke; stroke: var(--mj-bg-page); stroke-width: 3.5px; stroke-linejoin: round; }\n\n/* Heat / activity glow tiers \u2014 driven by `currentColor` (the node's category color). */\n.flow-svg .glow1 { filter: drop-shadow(0 0 4px currentColor); }\n.flow-svg .glow2 { filter: drop-shadow(0 0 9px currentColor); }\n.flow-svg .glow3 { filter: drop-shadow(0 0 16px currentColor); }\n"] }]
|
|
184
|
+
}], null, { svgRef: [{
|
|
185
|
+
type: ViewChild,
|
|
186
|
+
args: ['svg', { static: true }]
|
|
187
|
+
}], nodeSelected: [{
|
|
188
|
+
type: Output
|
|
189
|
+
}], Model: [{
|
|
190
|
+
type: Input
|
|
191
|
+
}] }); })();
|
|
192
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SubwayLinesComponent, { className: "SubwayLinesComponent", filePath: "src/lib/custom/ai-agent-run/flow/subway-lines.component.ts", lineNumber: 25 }); })();
|
|
193
|
+
//# sourceMappingURL=subway-lines.component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subway-lines.component.js","sourceRoot":"","sources":["../../../../../src/lib/custom/ai-agent-run/flow/subway-lines.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAc,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAa,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACrJ,OAAO,EACgB,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAClG,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;;;AAK/C;;;;;GAKG;AASH,MAAM,OAAO,oBAAoB;IARjC;QAUY,iBAAY,GAAG,IAAI,YAAY,EAAY,CAAC;QAE9C,WAAM,GAAqB,IAAI,CAAC;QAChC,UAAK,GAAG,KAAK,CAAC;QACd,aAAQ,GAAG,IAAI,GAAG,EAAmB,CAAC;QACtC,eAAU,GAAgB,EAAE,CAAC;QAG7B,eAAU,GAAG,CAAC,CAAC,CAAC;QASP,OAAE,GAAG,IAAI,CAAC;QACV,QAAG,GAAG,GAAG,CAAC;QACV,QAAG,GAAG,GAAG,CAAC;QACV,aAAQ,GAAG,GAAG,CAAC;QACf,UAAK,GAAG,GAAG,CAAC;QACZ,kBAAa,GAAG,EAAE,CAAC;KA4IrC;IAvJQ,MAAM,KAAW,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IACrC,OAAO,KAAW,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IACvC,QAAQ,KAAW,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IACtC,WAAW,KAAW,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAClD,WAAW,KAAW,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAQ1C,IAAY,EAAE,KAAa,OAAO,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;IAErD,WAAW,CAAC,EAAiB,IAAU,IAAI,CAAC,UAAU,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3E,IAAa,KAAK,CAAC,CAAmB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAEvF,MAAM,CAAC,CAAS,EAAE,EAAU;QACjC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAAC,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrB,CAAC;IAEO,KAAK;QACX,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC;QACvC,IAAI,GAAG;YAAE,OAAO,GAAG,CAAC,UAAU;gBAAE,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAAC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IAC9C,CAAC;IAEO,KAAK;QACX,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;QACtC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAO,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QAChF,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACtE,GAAG,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QAEpD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAEpC,MAAM,EAAE,GAAG,CAAC,CAAW,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACxD,MAAM,EAAE,GAAG,CAAC,CAAW,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC;QACjE,MAAM,MAAM,GAAG,CAAC,CAAW,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;QAE7E,qEAAqE;QACrE,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACpD,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;gBAC/E,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;YACnI,CAAC;YACD,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC/D,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,mBAAmB,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAC5J,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,mBAAmB,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,QAAQ,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QAC9M,CAAC;QAED,2DAA2D;QAC3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3C,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;YACrD,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YACzB,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;YAC1G,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,KAAK,CAAuB,CAAC;YAC5M,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAG,IAAkC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QACnG,CAAC;QAED,4EAA4E;QAC5E,IAAI,UAAU,GAAG,CAAC,GAAG,CAAC;QACtB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACrB,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;YACpC,GAAmD,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC;YACtE,GAAmD,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;YAC9E,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,MAAM,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC7D,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;YACvH,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAEnF,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,UAAU,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;YACnE,IAAI,GAA2B,CAAC;YAChC,IAAI,IAAI,EAAE,CAAC;gBACT,UAAU,GAAG,CAAC,CAAC;gBACf,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC7B,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE;oBAClB,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO;oBAC3E,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG;oBAC3E,IAAI,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;iBACpE,EAAE,GAAG,CAAC,CAAC;YACV,CAAC;YACD,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK;gBAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC;QACpF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,sBAAsB,EAAE,cAAc,EAAE,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;QAEhH,IAAI,CAAC,EAAE,GAAG,IAAI,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,gCAAgC,CAAC,CAAC;QAC7E,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;IACnC,CAAC;IAEO,MAAM,CAAC,CAAS,EAAE,EAAU;QAClC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE;YAC/C,MAAM,OAAO,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC;YAC7C,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC/F,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC5D,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClF,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC1D,GAAG,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACpF,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE;YACvC,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACnE,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACjF,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAClD,MAAM,EAAE,GAAI,IAAI,CAAC,IAAkC,CAAC,gBAAgB,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACpF,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACvB,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5B,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YACrF,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrD,IAAI,CAAC,KAAqD,CAAC,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;QACpF,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAC7F,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChG,CAAC;IACH,CAAC;qHAnKU,oBAAoB;oEAApB,oBAAoB;;;;;;;YALpB,4BAAqE;;;iFAKrE,oBAAoB;cARhC,SAAS;6BACI,KAAK,YACP,sBAAsB,YACtB,uEAAuE,iBAElE,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM;;kBAG9C,SAAS;mBAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;kBACjC,MAAM;;kBA2BN,KAAK;;kFA7BK,oBAAoB","sourcesContent":["import { Component, ElementRef, Input, Output, EventEmitter, ViewChild, OnDestroy, ChangeDetectionStrategy, ViewEncapsulation } from '@angular/core';\nimport {\n FlowModel, FlowNode, FLOW_COLORS, agentOf, agentShortName, shortLabel, activeLeaf, formatDuration\n} from './agent-run-flow.model';\nimport { svgEl, clip, appendIcon, appendTitle } from './flow-svg.util';\nimport { PanZoomController } from './pan-zoom';\n\ninterface Station { ring: SVGElement; lab?: SVGElement; leaf: FlowNode; r: number; sx: number; sy: number; }\ninterface Connector { path: SVGGraphicsElement; to: FlowNode; len: number; }\n\n/**\n * Subway Lines — each agent is a transit line; sub-agents branch off and rejoin.\n * Connectors carry the line's (agent's) colour and brighten as the train passes,\n * so you can follow a sub-agent's route end to end. Stations show the real step\n * icon; labels are abbreviated and angled 30° so dense lines stay readable.\n */\n@Component({\n standalone: false,\n selector: 'mj-agent-flow-subway',\n template: `<svg #svg class=\"flow-svg\" preserveAspectRatio=\"xMidYMid meet\"></svg>`,\n styleUrls: ['./flow-shared.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SubwayLinesComponent implements OnDestroy {\n @ViewChild('svg', { static: true }) svgRef!: ElementRef<SVGSVGElement>;\n @Output() nodeSelected = new EventEmitter<FlowNode>();\n\n private _model: FlowModel | null = null;\n private built = false;\n private stations = new Map<number, Station>();\n private connectors: Connector[] = [];\n private train?: SVGElement;\n private trainHalo?: SVGElement;\n private selectedId = -1;\n private pz?: PanZoomController;\n\n public ZoomIn(): void { this.pz?.ZoomIn(); }\n public ZoomOut(): void { this.pz?.ZoomOut(); }\n public FitReset(): void { this.pz?.Reset(); }\n public ReapplyView(): void { this.pz?.Reapply(); }\n ngOnDestroy(): void { this.pz?.Detach(); }\n\n private readonly VW = 1280;\n private readonly PAD = 188;\n private readonly TOP = 132;\n private readonly LINE_GAP = 168;\n private readonly DWELL = 0.6;\n private readonly MIN_LABEL_GAP = 40;\n private get IW(): number { return this.VW - this.PAD - 90; }\n\n public SetSelected(id: number | null): void { this.selectedId = id ?? -1; }\n\n @Input() set Model(m: FlowModel | null) { this._model = m; this.built = false; this.clear(); }\n\n public Render(p: number, ts: number): void {\n if (!this._model) return;\n if (!this.built) { this.build(); this.built = true; }\n this.update(p, ts);\n }\n\n private clear(): void {\n this.pz?.Detach(); this.pz = undefined;\n const svg = this.svgRef?.nativeElement;\n if (svg) while (svg.firstChild) svg.removeChild(svg.firstChild);\n this.stations.clear(); this.connectors = [];\n }\n\n private build(): void {\n const svg = this.svgRef.nativeElement;\n const m = this._model!;\n const agents = m.nodes.filter(n => n.type === 'agent' || n.type === 'subagent');\n const lineY = new Map<number, number>();\n agents.forEach((a, i) => lineY.set(a.id, this.TOP + i * this.LINE_GAP));\n const VH = this.TOP + Math.max(1, agents.length) * this.LINE_GAP + 30;\n svg.setAttribute('viewBox', `0 0 ${this.VW} ${VH}`);\n\n const main = svgEl('g', {}, svg);\n const lineG = svgEl('g', {}, main);\n const connG = svgEl('g', {}, main);\n const stationG = svgEl('g', {}, main);\n const trainG = svgEl('g', {}, main);\n\n const sx = (l: FlowNode) => this.PAD + l.tmid * this.IW;\n const sy = (l: FlowNode) => lineY.get(agentOf(l).id) ?? this.TOP;\n const radius = (l: FlowNode) => Math.min(17, 8 + Math.sqrt(l.realDur) * 1.4);\n\n // line backbones + agent labels (left gutter, with the agent's icon)\n for (const a of agents) {\n const kids = m.leaves.filter(l => agentOf(l) === a);\n const y = lineY.get(a.id)!;\n const col = FLOW_COLORS[a.type];\n if (kids.length) {\n const x0 = Math.min(...kids.map(sx)) - 32, x1 = Math.max(...kids.map(sx)) + 32;\n svgEl('line', { x1: x0, y1: y, x2: x1, y2: y, stroke: col, 'stroke-width': 7, opacity: 0.32, 'stroke-linecap': 'round' }, lineG);\n }\n appendIcon(lineG, 14, y - 11, 22, a.iconClass, a.logoUrl, col);\n svgEl('text', { x: 44, y: y - 6, 'font-size': 13, 'font-weight': 700, fill: col, 'dominant-baseline': 'middle', text: clip(agentShortName(a), 18) }, lineG);\n svgEl('text', { x: 44, y: y + 10, 'font-size': 9.5, 'dominant-baseline': 'middle', class: 'ftxt-muted', text: `${kids.length} step${kids.length === 1 ? '' : 's'} · ${formatDuration(a.realDur)}` }, lineG);\n }\n\n // connectors carry the destination line's (agent's) colour\n for (let i = 0; i < m.leaves.length - 1; i++) {\n const a = m.leaves[i], b = m.leaves[i + 1];\n const ax = sx(a), ay = sy(a), bx = sx(b), by = sy(b);\n const mx = (ax + bx) / 2;\n const d = ay === by ? `M${ax},${ay} L${bx},${by}` : `M${ax},${ay} L${mx},${ay} L${mx},${by} L${bx},${by}`;\n const path = svgEl('path', { d, fill: 'none', stroke: FLOW_COLORS[agentOf(b).type], 'stroke-width': 3, opacity: 0.14, 'stroke-linejoin': 'round', 'stroke-linecap': 'round' }, connG) as SVGGraphicsElement;\n this.connectors.push({ path, to: b, len: (path as unknown as SVGPathElement).getTotalLength() });\n }\n\n // stations: ring + step icon; angled abbreviated label (thinned when dense)\n let lastLabelX = -1e9;\n m.leaves.forEach((l) => {\n const x = sx(l), y = sy(l), r = radius(l);\n const col = FLOW_COLORS[l.type];\n const grp = svgEl('g', {}, stationG);\n (grp as SVGElement & { style: CSSStyleDeclaration }).style.color = col;\n (grp as SVGElement & { style: CSSStyleDeclaration }).style.cursor = 'pointer';\n appendTitle(grp, `${l.name} · ${formatDuration(l.realDur)}`);\n const ring = svgEl('circle', { cx: x, cy: y, r, fill: 'var(--mj-bg-surface)', stroke: col, 'stroke-width': 3.2 }, grp);\n appendIcon(grp, x - r * 0.62, y - r * 0.62, r * 1.24, l.iconClass, l.logoUrl, col);\n\n const show = (x - lastLabelX >= this.MIN_LABEL_GAP) || l.heat >= 2;\n let lab: SVGElement | undefined;\n if (show) {\n lastLabelX = x;\n const lx = x, ly = y - r - 8;\n lab = svgEl('text', {\n x: lx, y: ly, 'font-size': 10.5, 'font-weight': 600, 'text-anchor': 'start',\n transform: `rotate(-30 ${lx} ${ly})`, class: 'ftxt-secondary', opacity: 0.7,\n text: `${clip(shortLabel(l), 22)} · ${formatDuration(l.realDur)}`\n }, grp);\n }\n grp.addEventListener('click', () => { if (!this.pz?.moved) this.nodeSelected.emit(l); });\n this.stations.set(l.id, { ring, lab, leaf: l, r, sx: x, sy: y });\n });\n\n this.trainHalo = svgEl('circle', { r: 17, opacity: 0, class: 'fhand-dot' }, trainG);\n this.train = svgEl('circle', { r: 9, opacity: 0, stroke: 'var(--mj-bg-surface)', 'stroke-width': 2.5 }, trainG);\n\n this.pz = new PanZoomController(svg, main, 'mj.agentRunFlow.view.subway.v1');\n this.pz.Load(); this.pz.Attach();\n }\n\n private update(p: number, ts: number): void {\n const m = this._model!;\n this.stations.forEach(({ ring, lab, leaf, r }) => {\n const started = p >= leaf.t0;\n const active = started && p < leaf.t1;\n const selected = leaf.id === this.selectedId;\n ring.setAttribute('class', selected ? 'glow2' : active ? 'glow' + Math.max(1, leaf.heat) : '');\n ring.setAttribute('stroke-width', selected ? '4.5' : '3.2');\n ring.setAttribute('r', String(active ? r + 2 * Math.abs(Math.sin(ts / 220)) : r));\n ring.setAttribute('fill-opacity', started ? '1' : '0.55');\n lab?.setAttribute('opacity', active || selected ? '1' : started ? '0.85' : '0.6');\n });\n this.connectors.forEach(({ path, to }) => {\n const done = p >= to.t1, lit = p >= to.t0;\n path.setAttribute('opacity', done ? '0.7' : lit ? '0.45' : '0.14');\n path.setAttribute('stroke-width', lit ? '3.6' : '3');\n });\n\n const leaf = activeLeaf(m, p);\n const idx = m.leaves.indexOf(leaf);\n const frac = p >= leaf.t1 ? 1 : Math.max(0, (p - leaf.t0) / (leaf.t1 - leaf.t0));\n const here = this.stations.get(leaf.id);\n let tx = here?.sx ?? 0, ty = here?.sy ?? 0;\n if (here && idx >= 0 && idx < this.connectors.length && frac >= this.DWELL) {\n const conn = this.connectors[idx];\n const lt = (frac - this.DWELL) / (1 - this.DWELL);\n const pt = (conn.path as unknown as SVGPathElement).getPointAtLength(lt * conn.len);\n tx = pt.x; ty = pt.y;\n }\n const live = p > 0 && p < 1;\n const lineCol = FLOW_COLORS[agentOf(leaf).type];\n if (this.train) {\n this.train.setAttribute('cx', String(tx)); this.train.setAttribute('cy', String(ty));\n this.train.setAttribute('opacity', live ? '1' : '0');\n this.train.setAttribute('fill', lineCol);\n this.train.setAttribute('class', live ? 'glow2' : '');\n (this.train as SVGElement & { style: CSSStyleDeclaration }).style.color = lineCol;\n }\n if (this.trainHalo) {\n this.trainHalo.setAttribute('cx', String(tx)); this.trainHalo.setAttribute('cy', String(ty));\n this.trainHalo.setAttribute('opacity', live ? String(0.16 + 0.08 * Math.sin(ts / 200)) : '0');\n }\n }\n}\n"]}
|
|
@@ -24,57 +24,66 @@ import * as i22 from "./ai-agent-run/ai-agent-run.component";
|
|
|
24
24
|
import * as i23 from "./ai-agent-run/ai-agent-run-timeline.component";
|
|
25
25
|
import * as i24 from "./ai-agent-run/ai-agent-run-step-node.component";
|
|
26
26
|
import * as i25 from "./ai-agent-run/ai-agent-run-analytics.component";
|
|
27
|
-
import * as i26 from "./ai-agent-run/ai-agent-run-
|
|
28
|
-
import * as i27 from "./ai-agent-run/
|
|
29
|
-
import * as i28 from "./
|
|
30
|
-
import * as i29 from "./
|
|
31
|
-
import * as i30 from "./
|
|
32
|
-
import * as i31 from "./
|
|
33
|
-
import * as i32 from "./
|
|
34
|
-
import * as i33 from "./
|
|
35
|
-
import * as i34 from "./
|
|
36
|
-
import * as i35 from "./Tests/test-run-
|
|
37
|
-
import * as i36 from "./Tests/test-
|
|
38
|
-
import * as i37 from "./Tests/
|
|
39
|
-
import * as i38 from "./
|
|
40
|
-
import * as i39 from "
|
|
41
|
-
import * as i40 from "
|
|
42
|
-
import * as i41 from "./
|
|
43
|
-
import * as i42 from "./
|
|
44
|
-
import * as i43 from "
|
|
45
|
-
import * as i44 from "
|
|
46
|
-
import * as i45 from "
|
|
47
|
-
import * as i46 from "
|
|
48
|
-
import * as i47 from "./
|
|
49
|
-
import * as i48 from "
|
|
50
|
-
import * as i49 from "
|
|
51
|
-
import * as i50 from "
|
|
52
|
-
import * as i51 from "
|
|
53
|
-
import * as i52 from "
|
|
54
|
-
import * as i53 from "
|
|
55
|
-
import * as i54 from "
|
|
56
|
-
import * as i55 from "
|
|
57
|
-
import * as i56 from "@
|
|
58
|
-
import * as i57 from "@
|
|
59
|
-
import * as i58 from "@
|
|
60
|
-
import * as i59 from "
|
|
61
|
-
import * as i60 from "@memberjunction/ng-
|
|
62
|
-
import * as i61 from "@memberjunction/ng-
|
|
63
|
-
import * as i62 from "@memberjunction/ng-
|
|
64
|
-
import * as i63 from "@memberjunction/ng-
|
|
65
|
-
import * as i64 from "@memberjunction/ng-
|
|
66
|
-
import * as i65 from "@memberjunction/ng-
|
|
67
|
-
import * as i66 from "@memberjunction/ng-
|
|
68
|
-
import * as i67 from "@memberjunction/ng-
|
|
69
|
-
import * as i68 from "@memberjunction/ng-
|
|
70
|
-
import * as i69 from "@memberjunction/ng-
|
|
71
|
-
import * as i70 from "@memberjunction/ng-
|
|
72
|
-
import * as i71 from "@memberjunction/ng-
|
|
73
|
-
import * as i72 from "
|
|
74
|
-
import * as i73 from "@memberjunction/ng-
|
|
27
|
+
import * as i26 from "./ai-agent-run/ai-agent-run-step-detail.component";
|
|
28
|
+
import * as i27 from "./ai-agent-run/flow/agent-run-flow.component";
|
|
29
|
+
import * as i28 from "./ai-agent-run/flow/flame-cascade.component";
|
|
30
|
+
import * as i29 from "./ai-agent-run/flow/subway-lines.component";
|
|
31
|
+
import * as i30 from "./ai-agent-run/flow/constellation.component";
|
|
32
|
+
import * as i31 from "./ai-agent-run/flow/flowchart.component";
|
|
33
|
+
import * as i32 from "./Queries/query-form.component";
|
|
34
|
+
import * as i33 from "./Queries/query-run-dialog.component";
|
|
35
|
+
import * as i34 from "./AIAgents/FlowAgentType/flow-agent-form-section.component";
|
|
36
|
+
import * as i35 from "./Tests/test-run-form.component";
|
|
37
|
+
import * as i36 from "./Tests/test-form.component";
|
|
38
|
+
import * as i37 from "./Tests/test-suite-run-form.component";
|
|
39
|
+
import * as i38 from "./Tests/test-suite-form.component";
|
|
40
|
+
import * as i39 from "./Tests/test-run-feedback-form.component";
|
|
41
|
+
import * as i40 from "./Tests/test-rubric-form.component";
|
|
42
|
+
import * as i41 from "./Tests/entity-link-pill.component";
|
|
43
|
+
import * as i42 from "./Lists/list-form.component";
|
|
44
|
+
import * as i43 from "../panels/content-sources/tag-pipeline-configuration.panel";
|
|
45
|
+
import * as i44 from "../panels/content-sources/website-crawler-settings.panel";
|
|
46
|
+
import * as i45 from "../panels/model-predictions/model-prediction.panel";
|
|
47
|
+
import * as i46 from "../panels/ai-skill-sharing/ai-skill-sharing-panel.component";
|
|
48
|
+
import * as i47 from "./SearchScopes/searchscope-form.component";
|
|
49
|
+
import * as i48 from "./SearchScopes/searchscopeprovider-form.component";
|
|
50
|
+
import * as i49 from "./AIAgentSessions/ai-agent-session-form.component";
|
|
51
|
+
import * as i50 from "./AIAgentChannels/ai-agent-channel-form.component";
|
|
52
|
+
import * as i51 from "./BridgeProviders/bridge-provider-form.component";
|
|
53
|
+
import * as i52 from "./SessionBridges/session-bridge-form.component";
|
|
54
|
+
import * as i53 from "./BridgeAgentIdentities/bridge-agent-identity-form.component";
|
|
55
|
+
import * as i54 from "../panels/ai-agents/agent-realtime.panel";
|
|
56
|
+
import * as i55 from "./RecordProcesses/record-process-form.component";
|
|
57
|
+
import * as i56 from "@angular/common";
|
|
58
|
+
import * as i57 from "@angular/forms";
|
|
59
|
+
import * as i58 from "@angular/cdk/drag-drop";
|
|
60
|
+
import * as i59 from "ag-grid-angular";
|
|
61
|
+
import * as i60 from "@memberjunction/ng-ui-components";
|
|
62
|
+
import * as i61 from "@memberjunction/ng-link-directives";
|
|
63
|
+
import * as i62 from "@memberjunction/ng-join-grid";
|
|
64
|
+
import * as i63 from "@memberjunction/ng-base-forms";
|
|
65
|
+
import * as i64 from "@memberjunction/ng-tabstrip";
|
|
66
|
+
import * as i65 from "@memberjunction/ng-code-editor";
|
|
67
|
+
import * as i66 from "@memberjunction/ng-deep-diff";
|
|
68
|
+
import * as i67 from "@memberjunction/ng-ai-test-harness";
|
|
69
|
+
import * as i68 from "@memberjunction/ng-action-gallery";
|
|
70
|
+
import * as i69 from "@memberjunction/ng-testing";
|
|
71
|
+
import * as i70 from "@memberjunction/ng-flow-editor";
|
|
72
|
+
import * as i71 from "@memberjunction/ng-shared-generic";
|
|
73
|
+
import * as i72 from "@memberjunction/ng-entity-relationship-diagram";
|
|
74
|
+
import * as i73 from "@memberjunction/ng-list-management";
|
|
75
|
+
import * as i74 from "@memberjunction/ng-actions";
|
|
76
|
+
import * as i75 from "@memberjunction/ng-agents";
|
|
77
|
+
import * as i76 from "@memberjunction/ng-entity-viewer";
|
|
78
|
+
import * as i77 from "@memberjunction/ng-markdown";
|
|
79
|
+
import * as i78 from "@memberjunction/ng-trees";
|
|
80
|
+
import * as i79 from "angular-split";
|
|
81
|
+
import * as i80 from "@memberjunction/ng-search";
|
|
82
|
+
import * as i81 from "@memberjunction/ng-record-process-studio";
|
|
83
|
+
import * as i82 from "@memberjunction/ng-resource-permissions";
|
|
75
84
|
export declare class MemberJunctionCoreEntityFormsModule {
|
|
76
85
|
static ɵfac: i0.ɵɵFactoryDeclaration<MemberJunctionCoreEntityFormsModule, never>;
|
|
77
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<MemberJunctionCoreEntityFormsModule, [typeof i1.MJEntityFormComponentExtended, typeof i2.MJEntityActionFormComponentExtended, typeof i3.MJTemplateFormComponentExtended, typeof i4.TemplateParamDialogComponent, typeof i5.TemplateParamsGridComponent, typeof i6.TemplateEditorComponent, typeof i7.MJAIPromptFormComponentExtended, typeof i8.MJAIAgentFormComponentExtended, typeof i9.NewAgentDialogComponent, typeof i10.AddActionDialogComponent, typeof i11.PromptSelectorDialogComponent, typeof i12.AgentPromptAdvancedSettingsDialogComponent, typeof i13.SubAgentAdvancedSettingsDialogComponent, typeof i14.SubAgentSelectorDialogComponent, typeof i15.CreatePromptDialogComponent, typeof i16.CreateSubAgentDialogComponent, typeof i17.EntitySelectorDialogComponent, typeof i18.MJAIPromptRunFormComponentExtended, typeof i19.ChatMessageViewerComponent, typeof i20.MJActionFormComponentExtended, typeof i21.MJActionExecutionLogFormComponentExtended, typeof i22.MJAIAgentRunFormComponentExtended, typeof i23.AIAgentRunTimelineComponent, typeof i24.AIAgentRunStepNodeComponent, typeof i25.AIAgentRunAnalyticsComponent, typeof i26.
|
|
86
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<MemberJunctionCoreEntityFormsModule, [typeof i1.MJEntityFormComponentExtended, typeof i2.MJEntityActionFormComponentExtended, typeof i3.MJTemplateFormComponentExtended, typeof i4.TemplateParamDialogComponent, typeof i5.TemplateParamsGridComponent, typeof i6.TemplateEditorComponent, typeof i7.MJAIPromptFormComponentExtended, typeof i8.MJAIAgentFormComponentExtended, typeof i9.NewAgentDialogComponent, typeof i10.AddActionDialogComponent, typeof i11.PromptSelectorDialogComponent, typeof i12.AgentPromptAdvancedSettingsDialogComponent, typeof i13.SubAgentAdvancedSettingsDialogComponent, typeof i14.SubAgentSelectorDialogComponent, typeof i15.CreatePromptDialogComponent, typeof i16.CreateSubAgentDialogComponent, typeof i17.EntitySelectorDialogComponent, typeof i18.MJAIPromptRunFormComponentExtended, typeof i19.ChatMessageViewerComponent, typeof i20.MJActionFormComponentExtended, typeof i21.MJActionExecutionLogFormComponentExtended, typeof i22.MJAIAgentRunFormComponentExtended, typeof i23.AIAgentRunTimelineComponent, typeof i24.AIAgentRunStepNodeComponent, typeof i25.AIAgentRunAnalyticsComponent, typeof i26.AIAgentRunStepDetailComponent, typeof i27.AIAgentRunFlowComponent, typeof i28.FlameCascadeComponent, typeof i29.SubwayLinesComponent, typeof i30.ConstellationComponent, typeof i31.FlowchartComponent, typeof i32.MJQueryFormComponentExtended, typeof i33.QueryRunDialogComponent, typeof i34.FlowAgentFormSectionComponent, typeof i35.MJTestRunFormComponentExtended, typeof i36.MJTestFormComponentExtended, typeof i37.MJTestSuiteRunFormComponentExtended, typeof i38.MJTestSuiteFormComponentExtended, typeof i39.MJTestRunFeedbackFormComponentExtended, typeof i40.MJTestRubricFormComponentExtended, typeof i41.EntityLinkPillComponent, typeof i42.MJListFormComponentExtended, typeof i43.TagPipelineConfigurationPanel, typeof i44.WebsiteCrawlerSettingsPanel, typeof i45.ModelPredictionPanel, typeof i46.AISkillSharingPanel, typeof i47.MJSearchScopeFormComponentExtended, typeof i48.MJSearchScopeProviderFormComponentExtended, typeof i49.MJAIAgentSessionFormComponentExtended, typeof i50.MJAIAgentChannelFormComponentExtended, typeof i51.MJAIBridgeProviderFormComponentExtended, typeof i52.MJAIAgentSessionBridgeFormComponentExtended, typeof i53.MJAIBridgeAgentIdentityFormComponentExtended, typeof i54.AgentRealtimePanel, typeof i55.RecordProcessFormComponentExtended], [typeof i56.CommonModule, typeof i57.FormsModule, typeof i57.ReactiveFormsModule, typeof i58.DragDropModule, typeof i59.AgGridModule, typeof i60.MJEmptyStateComponent, typeof i60.MJAlertComponent, typeof i60.MJButtonDirective, typeof i60.MJAccordionModule, typeof i60.MJDropdownComponent, typeof i60.MJComboboxComponent, typeof i60.MJSwitchComponent, typeof i60.MJDialogComponent, typeof i60.MJDialogTitlebarComponent, typeof i60.MJDialogActionsComponent, typeof i60.MJNumericInputComponent, typeof i60.MJWindowComponent, typeof i60.MJWindowTitlebarComponent, typeof i60.MJProgressBarComponent, typeof i61.LinkDirectivesModule, typeof i62.JoinGridModule, typeof i63.BaseFormsModule, typeof i64.MJTabStripModule, typeof i65.CodeEditorModule, typeof i66.DeepDiffModule, typeof i67.AITestHarnessModule, typeof i68.ActionGalleryModule, typeof i69.TestingModule, typeof i70.FlowEditorModule, typeof i71.SharedGenericModule, typeof i72.EntityRelationshipDiagramModule, typeof i73.ListManagementModule, typeof i74.ActionsModule, typeof i75.AgentsModule, typeof i76.EntityViewerModule, typeof i77.MarkdownModule, typeof i78.NgTreesModule, typeof i79.AngularSplitModule, typeof i60.MjSlidePanelComponent, typeof i63.MjFormDialogComponent, typeof i80.SearchModule, typeof i81.RecordProcessEditorComponent, typeof i82.ResourcePermissionsModule], [typeof i1.MJEntityFormComponentExtended, typeof i2.MJEntityActionFormComponentExtended, typeof i3.MJTemplateFormComponentExtended, typeof i6.TemplateEditorComponent, typeof i7.MJAIPromptFormComponentExtended, typeof i8.MJAIAgentFormComponentExtended, typeof i18.MJAIPromptRunFormComponentExtended, typeof i19.ChatMessageViewerComponent, typeof i20.MJActionFormComponentExtended, typeof i21.MJActionExecutionLogFormComponentExtended, typeof i22.MJAIAgentRunFormComponentExtended, typeof i23.AIAgentRunTimelineComponent, typeof i24.AIAgentRunStepNodeComponent, typeof i25.AIAgentRunAnalyticsComponent, typeof i32.MJQueryFormComponentExtended, typeof i34.FlowAgentFormSectionComponent, typeof i35.MJTestRunFormComponentExtended, typeof i36.MJTestFormComponentExtended, typeof i37.MJTestSuiteRunFormComponentExtended, typeof i38.MJTestSuiteFormComponentExtended, typeof i39.MJTestRunFeedbackFormComponentExtended, typeof i40.MJTestRubricFormComponentExtended, typeof i41.EntityLinkPillComponent, typeof i42.MJListFormComponentExtended, typeof i43.TagPipelineConfigurationPanel, typeof i44.WebsiteCrawlerSettingsPanel, typeof i45.ModelPredictionPanel, typeof i46.AISkillSharingPanel, typeof i47.MJSearchScopeFormComponentExtended, typeof i48.MJSearchScopeProviderFormComponentExtended, typeof i49.MJAIAgentSessionFormComponentExtended, typeof i50.MJAIAgentChannelFormComponentExtended, typeof i51.MJAIBridgeProviderFormComponentExtended, typeof i52.MJAIAgentSessionBridgeFormComponentExtended, typeof i53.MJAIBridgeAgentIdentityFormComponentExtended, typeof i54.AgentRealtimePanel, typeof i74.ActionsModule, typeof i55.RecordProcessFormComponentExtended]>;
|
|
78
87
|
static ɵinj: i0.ɵɵInjectorDeclaration<MemberJunctionCoreEntityFormsModule>;
|
|
79
88
|
}
|
|
80
89
|
//# sourceMappingURL=custom-forms.module.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-forms.module.d.ts","sourceRoot":"","sources":["../../../src/lib/custom/custom-forms.module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"custom-forms.module.d.ts","sourceRoot":"","sources":["../../../src/lib/custom/custom-forms.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqGA,qBAsJa,mCAAmC;yCAAnC,mCAAmC;0CAAnC,mCAAmC;0CAAnC,mCAAmC;CAAI"}
|
|
@@ -2,7 +2,7 @@ import { NgModule } from "@angular/core";
|
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
4
|
import { DragDropModule } from '@angular/cdk/drag-drop';
|
|
5
|
-
import { MJButtonDirective,
|
|
5
|
+
import { MJButtonDirective, MJAccordionModule, MJDropdownComponent, MJComboboxComponent, MJSwitchComponent, MJDialogComponent, MJDialogTitlebarComponent, MJDialogActionsComponent, MJNumericInputComponent, MJWindowComponent, MJWindowTitlebarComponent, MJProgressBarComponent, MjSlidePanelComponent, MJEmptyStateComponent, MJAlertComponent } from '@memberjunction/ng-ui-components';
|
|
6
6
|
import { AngularSplitModule } from 'angular-split';
|
|
7
7
|
import { AgGridModule } from 'ag-grid-angular';
|
|
8
8
|
import { BaseFormsModule, MjFormDialogComponent } from '@memberjunction/ng-base-forms';
|
|
@@ -47,8 +47,12 @@ import { MJAIAgentRunFormComponentExtended } from "./ai-agent-run/ai-agent-run.c
|
|
|
47
47
|
import { AIAgentRunTimelineComponent } from "./ai-agent-run/ai-agent-run-timeline.component";
|
|
48
48
|
import { AIAgentRunStepNodeComponent } from "./ai-agent-run/ai-agent-run-step-node.component";
|
|
49
49
|
import { AIAgentRunAnalyticsComponent } from "./ai-agent-run/ai-agent-run-analytics.component";
|
|
50
|
-
import { AIAgentRunVisualizationComponent } from "./ai-agent-run/ai-agent-run-visualization.component";
|
|
51
50
|
import { AIAgentRunStepDetailComponent } from "./ai-agent-run/ai-agent-run-step-detail.component";
|
|
51
|
+
import { AIAgentRunFlowComponent } from "./ai-agent-run/flow/agent-run-flow.component";
|
|
52
|
+
import { FlameCascadeComponent } from "./ai-agent-run/flow/flame-cascade.component";
|
|
53
|
+
import { SubwayLinesComponent } from "./ai-agent-run/flow/subway-lines.component";
|
|
54
|
+
import { ConstellationComponent } from "./ai-agent-run/flow/constellation.component";
|
|
55
|
+
import { FlowchartComponent } from "./ai-agent-run/flow/flowchart.component";
|
|
52
56
|
import { MJQueryFormComponentExtended } from "./Queries/query-form.component";
|
|
53
57
|
import { QueryRunDialogComponent } from "./Queries/query-run-dialog.component";
|
|
54
58
|
import { FlowAgentFormSectionComponent } from "./AIAgents/FlowAgentType/flow-agent-form-section.component";
|
|
@@ -78,10 +82,22 @@ import { MJAIAgentChannelFormComponentExtended } from "./AIAgentChannels/ai-agen
|
|
|
78
82
|
// Realtime Bridges — custom Extended forms (Pattern 2) for the three major bridge entities.
|
|
79
83
|
import { MJAIBridgeProviderFormComponentExtended } from "./BridgeProviders/bridge-provider-form.component";
|
|
80
84
|
import { MJAIAgentSessionBridgeFormComponentExtended } from "./SessionBridges/session-bridge-form.component";
|
|
85
|
+
import { RecordProcessFormComponentExtended } from "./RecordProcesses/record-process-form.component";
|
|
86
|
+
import { RecordProcessEditorComponent } from "@memberjunction/ng-record-process-studio";
|
|
81
87
|
import { MJAIBridgeAgentIdentityFormComponentExtended } from "./BridgeAgentIdentities/bridge-agent-identity-form.component";
|
|
82
88
|
// AI Agent "Realtime" panel (Pattern 1 — BaseFormPanel slot). Imported so the
|
|
83
89
|
// @RegisterClassEx decorator runs at module load (Angular tree-shaking guard).
|
|
84
90
|
import { AgentRealtimePanel } from "../panels/ai-agents/agent-realtime.panel";
|
|
91
|
+
// Model Predictions — an ENTITY-AGNOSTIC BaseFormPanel (Pattern 1) registered
|
|
92
|
+
// against the '*' wildcard entity, so it mounts on every entity form and
|
|
93
|
+
// self-hides unless that entity has an active MJ: ML Model Scoring Binding.
|
|
94
|
+
// Imported here so the @RegisterClassEx decorator runs at module load.
|
|
95
|
+
import { ModelPredictionPanel } from "../panels/model-predictions/model-prediction.panel";
|
|
96
|
+
// AI Skills sharing/portability panel (Pattern 1 — BaseFormPanel slot): Share
|
|
97
|
+
// dialog + SKILL.md export/import actions, mounted on the generated MJ: AI
|
|
98
|
+
// Skills form. Imported so the @RegisterClassEx decorator runs at module load.
|
|
99
|
+
import { AISkillSharingPanel } from "../panels/ai-skill-sharing/ai-skill-sharing-panel.component";
|
|
100
|
+
import { ResourcePermissionsModule } from "@memberjunction/ng-resource-permissions";
|
|
85
101
|
import * as i0 from "@angular/core";
|
|
86
102
|
import * as i1 from "@angular/common";
|
|
87
103
|
import * as i2 from "@memberjunction/ng-shared-generic";
|
|
@@ -96,7 +112,9 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
96
112
|
ReactiveFormsModule,
|
|
97
113
|
DragDropModule,
|
|
98
114
|
AgGridModule,
|
|
99
|
-
|
|
115
|
+
MJEmptyStateComponent,
|
|
116
|
+
MJAlertComponent,
|
|
117
|
+
MJAccordionModule,
|
|
100
118
|
MJDropdownComponent,
|
|
101
119
|
MJComboboxComponent,
|
|
102
120
|
MJSwitchComponent,
|
|
@@ -128,7 +146,9 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
128
146
|
AngularSplitModule,
|
|
129
147
|
MjSlidePanelComponent,
|
|
130
148
|
MjFormDialogComponent,
|
|
131
|
-
SearchModule,
|
|
149
|
+
SearchModule,
|
|
150
|
+
RecordProcessEditorComponent,
|
|
151
|
+
ResourcePermissionsModule, ActionsModule] }); }
|
|
132
152
|
}
|
|
133
153
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MemberJunctionCoreEntityFormsModule, [{
|
|
134
154
|
type: NgModule,
|
|
@@ -159,8 +179,12 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
159
179
|
AIAgentRunTimelineComponent,
|
|
160
180
|
AIAgentRunStepNodeComponent,
|
|
161
181
|
AIAgentRunAnalyticsComponent,
|
|
162
|
-
AIAgentRunVisualizationComponent,
|
|
163
182
|
AIAgentRunStepDetailComponent,
|
|
183
|
+
AIAgentRunFlowComponent,
|
|
184
|
+
FlameCascadeComponent,
|
|
185
|
+
SubwayLinesComponent,
|
|
186
|
+
ConstellationComponent,
|
|
187
|
+
FlowchartComponent,
|
|
164
188
|
MJQueryFormComponentExtended,
|
|
165
189
|
QueryRunDialogComponent,
|
|
166
190
|
FlowAgentFormSectionComponent,
|
|
@@ -175,6 +199,9 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
175
199
|
// ContentSource-specific BaseFormPanel slot components (no custom form override).
|
|
176
200
|
TagPipelineConfigurationPanel,
|
|
177
201
|
WebsiteCrawlerSettingsPanel,
|
|
202
|
+
// Entity-agnostic ('*') Model Predictions panel — mounts on every form, self-hides when N/A.
|
|
203
|
+
ModelPredictionPanel,
|
|
204
|
+
AISkillSharingPanel,
|
|
178
205
|
MJSearchScopeFormComponentExtended,
|
|
179
206
|
MJSearchScopeProviderFormComponentExtended,
|
|
180
207
|
MJAIAgentSessionFormComponentExtended,
|
|
@@ -183,6 +210,7 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
183
210
|
MJAIAgentSessionBridgeFormComponentExtended,
|
|
184
211
|
MJAIBridgeAgentIdentityFormComponentExtended,
|
|
185
212
|
AgentRealtimePanel,
|
|
213
|
+
RecordProcessFormComponentExtended,
|
|
186
214
|
],
|
|
187
215
|
imports: [
|
|
188
216
|
CommonModule,
|
|
@@ -190,9 +218,10 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
190
218
|
ReactiveFormsModule,
|
|
191
219
|
DragDropModule,
|
|
192
220
|
AgGridModule,
|
|
221
|
+
MJEmptyStateComponent,
|
|
222
|
+
MJAlertComponent,
|
|
193
223
|
MJButtonDirective,
|
|
194
|
-
|
|
195
|
-
MJAccordionTitleDirective,
|
|
224
|
+
MJAccordionModule,
|
|
196
225
|
MJDropdownComponent,
|
|
197
226
|
MJComboboxComponent,
|
|
198
227
|
MJSwitchComponent,
|
|
@@ -224,7 +253,9 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
224
253
|
AngularSplitModule,
|
|
225
254
|
MjSlidePanelComponent,
|
|
226
255
|
MjFormDialogComponent,
|
|
227
|
-
SearchModule
|
|
256
|
+
SearchModule,
|
|
257
|
+
RecordProcessEditorComponent,
|
|
258
|
+
ResourcePermissionsModule
|
|
228
259
|
],
|
|
229
260
|
exports: [
|
|
230
261
|
MJEntityFormComponentExtended,
|
|
@@ -253,6 +284,8 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
253
284
|
MJListFormComponentExtended,
|
|
254
285
|
TagPipelineConfigurationPanel,
|
|
255
286
|
WebsiteCrawlerSettingsPanel,
|
|
287
|
+
ModelPredictionPanel,
|
|
288
|
+
AISkillSharingPanel,
|
|
256
289
|
MJSearchScopeFormComponentExtended,
|
|
257
290
|
MJSearchScopeProviderFormComponentExtended,
|
|
258
291
|
MJAIAgentSessionFormComponentExtended,
|
|
@@ -261,7 +294,8 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
261
294
|
MJAIAgentSessionBridgeFormComponentExtended,
|
|
262
295
|
MJAIBridgeAgentIdentityFormComponentExtended,
|
|
263
296
|
AgentRealtimePanel,
|
|
264
|
-
ActionsModule
|
|
297
|
+
ActionsModule,
|
|
298
|
+
RecordProcessFormComponentExtended
|
|
265
299
|
],
|
|
266
300
|
providers: [
|
|
267
301
|
NewAgentDialogService,
|
|
@@ -294,8 +328,12 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
294
328
|
AIAgentRunTimelineComponent,
|
|
295
329
|
AIAgentRunStepNodeComponent,
|
|
296
330
|
AIAgentRunAnalyticsComponent,
|
|
297
|
-
AIAgentRunVisualizationComponent,
|
|
298
331
|
AIAgentRunStepDetailComponent,
|
|
332
|
+
AIAgentRunFlowComponent,
|
|
333
|
+
FlameCascadeComponent,
|
|
334
|
+
SubwayLinesComponent,
|
|
335
|
+
ConstellationComponent,
|
|
336
|
+
FlowchartComponent,
|
|
299
337
|
MJQueryFormComponentExtended,
|
|
300
338
|
QueryRunDialogComponent,
|
|
301
339
|
FlowAgentFormSectionComponent,
|
|
@@ -310,6 +348,9 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
310
348
|
// ContentSource-specific BaseFormPanel slot components (no custom form override).
|
|
311
349
|
TagPipelineConfigurationPanel,
|
|
312
350
|
WebsiteCrawlerSettingsPanel,
|
|
351
|
+
// Entity-agnostic ('*') Model Predictions panel — mounts on every form, self-hides when N/A.
|
|
352
|
+
ModelPredictionPanel,
|
|
353
|
+
AISkillSharingPanel,
|
|
313
354
|
MJSearchScopeFormComponentExtended,
|
|
314
355
|
MJSearchScopeProviderFormComponentExtended,
|
|
315
356
|
MJAIAgentSessionFormComponentExtended,
|
|
@@ -317,14 +358,16 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
317
358
|
MJAIBridgeProviderFormComponentExtended,
|
|
318
359
|
MJAIAgentSessionBridgeFormComponentExtended,
|
|
319
360
|
MJAIBridgeAgentIdentityFormComponentExtended,
|
|
320
|
-
AgentRealtimePanel
|
|
361
|
+
AgentRealtimePanel,
|
|
362
|
+
RecordProcessFormComponentExtended], imports: [CommonModule,
|
|
321
363
|
FormsModule,
|
|
322
364
|
ReactiveFormsModule,
|
|
323
365
|
DragDropModule,
|
|
324
366
|
AgGridModule,
|
|
367
|
+
MJEmptyStateComponent,
|
|
368
|
+
MJAlertComponent,
|
|
325
369
|
MJButtonDirective,
|
|
326
|
-
|
|
327
|
-
MJAccordionTitleDirective,
|
|
370
|
+
MJAccordionModule,
|
|
328
371
|
MJDropdownComponent,
|
|
329
372
|
MJComboboxComponent,
|
|
330
373
|
MJSwitchComponent,
|
|
@@ -356,7 +399,9 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
356
399
|
AngularSplitModule,
|
|
357
400
|
MjSlidePanelComponent,
|
|
358
401
|
MjFormDialogComponent,
|
|
359
|
-
SearchModule
|
|
402
|
+
SearchModule,
|
|
403
|
+
RecordProcessEditorComponent,
|
|
404
|
+
ResourcePermissionsModule], exports: [MJEntityFormComponentExtended,
|
|
360
405
|
MJEntityActionFormComponentExtended,
|
|
361
406
|
MJTemplateFormComponentExtended,
|
|
362
407
|
TemplateEditorComponent,
|
|
@@ -382,6 +427,8 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
382
427
|
MJListFormComponentExtended,
|
|
383
428
|
TagPipelineConfigurationPanel,
|
|
384
429
|
WebsiteCrawlerSettingsPanel,
|
|
430
|
+
ModelPredictionPanel,
|
|
431
|
+
AISkillSharingPanel,
|
|
385
432
|
MJSearchScopeFormComponentExtended,
|
|
386
433
|
MJSearchScopeProviderFormComponentExtended,
|
|
387
434
|
MJAIAgentSessionFormComponentExtended,
|
|
@@ -390,7 +437,8 @@ export class MemberJunctionCoreEntityFormsModule {
|
|
|
390
437
|
MJAIAgentSessionBridgeFormComponentExtended,
|
|
391
438
|
MJAIBridgeAgentIdentityFormComponentExtended,
|
|
392
439
|
AgentRealtimePanel,
|
|
393
|
-
ActionsModule
|
|
394
|
-
|
|
440
|
+
ActionsModule,
|
|
441
|
+
RecordProcessFormComponentExtended] }); })();
|
|
442
|
+
i0.ɵɵsetComponentScope(AIAgentRunTimelineComponent, [i1.NgTemplateOutlet, MJEmptyStateComponent, i2.LoadingComponent, AIAgentRunTimelineComponent,
|
|
395
443
|
AIAgentRunStepNodeComponent], [i1.AsyncPipe]);
|
|
396
444
|
//# sourceMappingURL=custom-forms.module.js.map
|