
* Svelte: WIP * WIP * WIP * WIP * WIP * WIP * Finished * Remove redundant code * Fix typo * Re-add routes * Form margin * Mobile nicities * Mobile changed * Increase keepalvie * Update Guild.svelte * Update Whitelabel.svelte * Whitelabel changes
28 lines
737 B
Svelte
28 lines
737 B
Svelte
<label class="form-label">{label}</label>
|
|
<div class="multiselect-super">
|
|
<Select placeholder="Select..." items={panels} optionIdentifier="panel_id" getOptionLabel={labelMapper}
|
|
getSelectionLabel={labelMapper} bind:selectedValue={panelsRaw}
|
|
on:select={update} isMulti={true}/>
|
|
</div>
|
|
|
|
<script>
|
|
import Select from 'svelte-select';
|
|
|
|
export let label;
|
|
export let panels = [];
|
|
export let selected = [];
|
|
|
|
let panelsRaw = [];
|
|
|
|
function labelMapper(panel) {
|
|
return panel.title;
|
|
}
|
|
|
|
function update() {
|
|
if (panelsRaw === undefined) {
|
|
panelsRaw = [];
|
|
}
|
|
|
|
selected = panelsRaw.map((panel) => panel.panel_id);
|
|
}
|
|
</script> |