WIP: combobox options

This commit is contained in:
Andrei Prigorshnev 2024-04-02 21:03:35 +04:00
parent 862b44fea9
commit 661f4c3620
No known key found for this signature in database
GPG Key ID: 185E0A5F45783902
2 changed files with 10 additions and 5 deletions

View File

@ -7,6 +7,6 @@
/>
</div>
<Assignment
@assignment={{this.topicAssignment}}
@assignment={{this.selectedAssignment}}
@onSubmit={{this.submit}}
@showValidationErrors={{false}} />

View File

@ -1,20 +1,25 @@
import Component from "@glimmer/component";
import { tracked } from "@glimmer/tracking";
import { action } from "@ember/object";
import { inject as service } from "@ember/service";
export default class TopicAssignments extends Component {
@tracked selectedAssignmentId = 0;
@tracked selectedAssignment;
TOPIC_ID = 0;
get topicAssignment() {
return this.args.assignments[0];
constructor() {
super(...arguments);
this.selectedAssignment = this.args.assignments[0]; // fixme andrei
}
get assignmentOptions() {
return this.args.assignments.map((a) => this.#toComboBoxOption(a));
}
synchronizeAssignment(selectedAssignmentId) {
this.selectedAssignmentId = selectedAssignmentId;
this.selectedAssignment = this.args.assignments[0]; // fixme andrei
}
#toComboBoxOption(assignment) {
if (assignment.type === "Topic") {
return { id: this.TOPIC_ID, name: "Topic" };