Skip to content
This repository was archived by the owner on Jul 22, 2025. It is now read-only.

Commit 6f38591

Browse files
committed
fixes for enums
1 parent 03343c9 commit 6f38591

File tree

1 file changed

+11
-8
lines changed

1 file changed

+11
-8
lines changed

assets/javascripts/discourse/components/ai-llm-editor-form.gjs

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,10 @@ export default class AiLlmEditorForm extends Component {
4848
name: modelInfo.name,
4949
provider: info.provider,
5050
provider_params: Object.fromEntries(
51-
Object.keys(params).map((key) => [key, null])
51+
Object.entries(params).map(([k, v]) => [
52+
k,
53+
v?.type === "enum" ? v.default : null,
54+
])
5255
),
5356
};
5457
}
@@ -156,12 +159,11 @@ export default class AiLlmEditorForm extends Component {
156159
value = { ...value };
157160
value.values = value.values.map((v) => ({ id: v, name: v }));
158161
}
159-
this.args.model.provider_params[field] =
160-
this.args.model.provider_params[field] || value.default;
162+
161163
acc[field] = {
162164
type: value.type || "text",
163-
values: value.values || undefined,
164-
default: value.default || undefined,
165+
values: value.values || [],
166+
default: value.default ?? undefined,
165167
};
166168
} else {
167169
acc[field] = { type: "text" }; // fallback
@@ -320,7 +322,6 @@ export default class AiLlmEditorForm extends Component {
320322
</form.Field>
321323

322324
<form.Object @name="provider_params" as |object name|>
323-
{{log (this.metaProviderParams data.provider)}}
324325
{{#let
325326
(get (this.metaProviderParams data.provider) name)
326327
as |params|
@@ -333,8 +334,10 @@ export default class AiLlmEditorForm extends Component {
333334
>
334335
{{#if (eq params.type "enum")}}
335336
<field.Select as |select|>
336-
{{#each params.values as |value|}}
337-
<select.Option @value={{value}}>{{value}}</select.Option>
337+
{{#each params.values as |option|}}
338+
<select.Option
339+
@value={{option.id}}
340+
>{{option.name}}</select.Option>
338341
{{/each}}
339342
</field.Select>
340343
{{else if (eq params.type "checkbox")}}

0 commit comments

Comments
 (0)