added button for ccpannotation input

This commit is contained in:
dcore94 2023-05-24 14:49:40 +02:00
parent a387ffb913
commit 947fcd89cb
1 changed files with 38 additions and 2 deletions

View File

@ -143,6 +143,12 @@ class CCPMethodEditorController extends HTMLElement{
</svg> </svg>
` `
#annotation_input_icon = `
<svg viewBox="0 -960 960 960">
<path d="M450-234h60v-129h130v-60H510v-130h-60v130H320v60h130v129ZM220-80q-24 0-42-18t-18-42v-680q0-24 18-42t42-18h361l219 219v521q0 24-18 42t-42 18H220Zm331-554v-186H220v680h520v-494H551ZM220-820v186-186 680-680Z"/>
</svg>
`
constructor(){ constructor(){
super(); super();
this.#boot = document.querySelector("d4s-boot-2") this.#boot = document.querySelector("d4s-boot-2")
@ -443,6 +449,7 @@ class CCPMethodEditorController extends HTMLElement{
<span class="mr-2">Inputs</span> <span class="mr-2">Inputs</span>
</div> </div>
<div class="ccp-toolbar-right"> <div class="ccp-toolbar-right">
${this.renderStandardInputButtons()}
${this.renderPlusButton("add-input")} ${this.renderPlusButton("add-input")}
</div> </div>
</div> </div>
@ -653,6 +660,27 @@ class CCPMethodEditorController extends HTMLElement{
this.renderInputs() this.renderInputs()
}) })
this.#rootdoc.querySelector("button[name=add-ccpannotation]").addEventListener("click", ev=>{
ev.preventDefault()
ev.stopPropagation()
this.#tmp_inputs.push(
{
id : "new_input",
title : "New input",
description : "A new input field",
minOccurs : 1,
maxOccurs : 1,
schema : {
type : "string",
format : null,
contentMediaType : "text/plain",
default : ""
}
}
)
this.renderInputs()
})
this.#rootdoc.querySelector("div[name=input-list]").addEventListener("click", ev=>{ this.#rootdoc.querySelector("div[name=input-list]").addEventListener("click", ev=>{
const evname = ev.target.getAttribute('name') const evname = ev.target.getAttribute('name')
if(evname === "delete-input"){ if(evname === "delete-input"){
@ -840,12 +868,20 @@ class CCPMethodEditorController extends HTMLElement{
` `
} }
renderStandardInputButtons(){
return `
<button name="add-ccpannotation" title="Add annotation input" name="reset" class="btn btn-info ccp-toolbar-button">
${this.#annotation_input_icon}
</button>
`
}
renderStandardOutputButtons(){ renderStandardOutputButtons(){
return ` return `
<button name="add-stdout" title="Add stdout" name="reset" class="btn btn-success ccp-toolbar-button"> <button name="add-stdout" title="Add stdout" class="btn btn-success ccp-toolbar-button">
${this.#output_icon} ${this.#output_icon}
</button> </button>
<button name="add-stderr" title="Add stderr" name="reset" class="btn btn-danger ccp-toolbar-button"> <button name="add-stderr" title="Add stderr" class="btn btn-danger ccp-toolbar-button">
${this.#output_icon} ${this.#output_icon}
</button> </button>
` `