WIP: Adding Enum button back to AI tools parameters form
This commit is contained in:
parent
5bf61ef9e1
commit
9369d9d0d7
|
@ -32,8 +32,10 @@ export default class AiTool extends RestModel {
|
||||||
|
|
||||||
if (parameter.enum && parameter.enum.length) {
|
if (parameter.enum && parameter.enum.length) {
|
||||||
parameter.enum = new TrackedArray(parameter.enum);
|
parameter.enum = new TrackedArray(parameter.enum);
|
||||||
|
parameter.isEnum = true;
|
||||||
} else {
|
} else {
|
||||||
parameter.enum = null;
|
parameter.enum = null;
|
||||||
|
parameter.isEnum = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return parameter;
|
return parameter;
|
||||||
|
|
|
@ -28,12 +28,13 @@ export default class AiToolEditorForm extends Component {
|
||||||
];
|
];
|
||||||
|
|
||||||
get formData() {
|
get formData() {
|
||||||
|
const parameters = this.args.editingModel.parameters || [];
|
||||||
return {
|
return {
|
||||||
name: this.args.editingModel.name || "",
|
name: this.args.editingModel.name || "",
|
||||||
tool_name: this.args.editingModel.tool_name || "",
|
tool_name: this.args.editingModel.tool_name || "",
|
||||||
description: this.args.editingModel.description || "",
|
description: this.args.editingModel.description || "",
|
||||||
summary: this.args.editingModel.summary || "",
|
summary: this.args.editingModel.summary || "",
|
||||||
parameters: this.args.editingModel.parameters || [],
|
parameters,
|
||||||
script: this.args.editingModel.script || "",
|
script: this.args.editingModel.script || "",
|
||||||
rag_uploads: this.args.editingModel.rag_uploads || [],
|
rag_uploads: this.args.editingModel.rag_uploads || [],
|
||||||
};
|
};
|
||||||
|
@ -109,6 +110,10 @@ export default class AiToolEditorForm extends Component {
|
||||||
return data.parameters[index].type;
|
return data.parameters[index].type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
parameterIsEnum(data, index) {
|
||||||
|
return data.parameters[index].isEnum;
|
||||||
|
}
|
||||||
|
|
||||||
get ragUploadsDescription() {
|
get ragUploadsDescription() {
|
||||||
return this.siteSettings.rag_images_enabled
|
return this.siteSettings.rag_images_enabled
|
||||||
? i18n("discourse_ai.rag.uploads.description_with_images")
|
? i18n("discourse_ai.rag.uploads.description_with_images")
|
||||||
|
@ -229,7 +234,7 @@ export default class AiToolEditorForm extends Component {
|
||||||
</row.Col>
|
</row.Col>
|
||||||
|
|
||||||
<row.Col @size={{4}}>
|
<row.Col @size={{4}}>
|
||||||
<collection.Field @name="enum" @title="Enum" as |field|>
|
<collection.Field @name="isEnum" @title="Enum" as |field|>
|
||||||
<field.Checkbox />
|
<field.Checkbox />
|
||||||
</collection.Field>
|
</collection.Field>
|
||||||
</row.Col>
|
</row.Col>
|
||||||
|
@ -243,6 +248,9 @@ export default class AiToolEditorForm extends Component {
|
||||||
/>
|
/>
|
||||||
</row.Col>
|
</row.Col>
|
||||||
</form.Row>
|
</form.Row>
|
||||||
|
{{#if (this.parameterIsEnum data index)}}
|
||||||
|
I am an enum
|
||||||
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
</form.Collection>
|
</form.Collection>
|
||||||
|
|
||||||
|
@ -252,7 +260,9 @@ export default class AiToolEditorForm extends Component {
|
||||||
@action={{fn
|
@action={{fn
|
||||||
form.addItemToCollection
|
form.addItemToCollection
|
||||||
"parameters"
|
"parameters"
|
||||||
(hash name="" type="string" description="" required=false enum=false)
|
(hash
|
||||||
|
name="" type="string" description="" required=false isEnum=false
|
||||||
|
)
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
@ -299,6 +309,13 @@ export default class AiToolEditorForm extends Component {
|
||||||
class="ai-tool-editor__test-button"
|
class="ai-tool-editor__test-button"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
{{/unless}}
|
||||||
|
|
||||||
|
<form.Submit
|
||||||
|
@label="discourse_ai.tools.save"
|
||||||
|
class="ai-tool-editor__save"
|
||||||
|
/>
|
||||||
|
{{#unless @isNew}}
|
||||||
<form.Button
|
<form.Button
|
||||||
@label="discourse_ai.tools.delete"
|
@label="discourse_ai.tools.delete"
|
||||||
@icon="trash-can"
|
@icon="trash-can"
|
||||||
|
@ -306,11 +323,6 @@ export default class AiToolEditorForm extends Component {
|
||||||
class="btn-danger ai-tool-editor__delete"
|
class="btn-danger ai-tool-editor__delete"
|
||||||
/>
|
/>
|
||||||
{{/unless}}
|
{{/unless}}
|
||||||
|
|
||||||
<form.Submit
|
|
||||||
@label="discourse_ai.tools.save"
|
|
||||||
class="ai-tool-editor__save"
|
|
||||||
/>
|
|
||||||
</form.Actions>
|
</form.Actions>
|
||||||
</Form>
|
</Form>
|
||||||
</template>
|
</template>
|
||||||
|
|
Loading…
Reference in New Issue