{{!
    This file is part of Moodle - http://moodle.org/

    Moodle is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    Moodle is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
}}
{{!
    @template core/local/choicelist

    Default template for a choicelist object.

    Classes required for JS:
    * none

    Context variables required for this template:
    * buttoncontent String - the dropdown trigger button content.
    * choices Array - the status options.

    Example context (json):
    {
        "hasoptions": true,
        "dialogcontent": "Dialog content",
        "options": [
            {
                "optionid": "option1",
                "value": "value1",
                "name": "First option",
                "description": "First option description",
                "hasicon": false,
                "first": true,
                "optionnumber": 1,
                "optionuniqid": "option1uniqid",
                "selected": true
            },
            {
                "optionid": "option2",
                "value": "value2",
                "name": "Second option",
                "description": "Second option description",
                "icon": {
                    "extraclasses": "iconhelp",
                    "attributes": [
                        {"name": "src", "value": "../../../pix/help.svg"},
                        {"name": "alt", "value": "Help icon"}
                    ]
                },
                "hasicon": true,
                "optionnumber": 2,
                "optionuniqid": "option2uniqid"
            },
            {
                "optionid": "option3",
                "value": "value3",
                "name": "Third option",
                "description": "Third option description",
                "icon": {
                    "extraclasses": "iconhelp",
                    "attributes": [
                        {"name": "src", "value": "../../../pix/help.svg"},
                        {"name": "alt", "value": "Help icon"}
                    ]
                },
                "hasicon": true,
                "disabled": true,
                "optionnumber": 3,
                "optionuniqid": "option3uniqid"
            }
        ]
    }
}}
<div class="d-flex flex-column choicelist p-1" role="listbox">
    {{#options}}
        {{> core/local/choicelist/option}}
    {{/options}}
</div>
