Hoppa till innehåll

ListSelector

Wrapper for Sitevision list components

ListSelector

PropTypeDescription
idstringInput ID, generated if no property is provided, for component initialization and input label.
Default: generateId()
namestringName is always required here since SiteVision uses this to initialize the component.
Default: undefined
labelstringField label.
Default: undefined
descriptionstringDescription for the list selector, displayed below the label.
Default: undefined
typestringList component type.
Default: 'page'
valueArray<any>Used if bound to value, falls back to provided values object when name attribute is used.
Default: []
requiredbooleanIf the list is required.
Default: false
disabledbooleanIf the list is disabled.
Default: false
sortablebooleanIf the list is sortable (since Sitevision 9.1).
Default: false
showbooleanShow and hide the component without re-rendering.
Default: true
selectableArray<any>Selectable types.
Default: []

Possible values for type:

  • page
  • file
  • image
  • user
  • userfield

For tags-selector use TagSelector.

<script>
import { Panel, ListSelector } from '@soleil-se/config-svelte';
</script>
<Panel heading="Inställningar">
<ListSelector name="pages" type="page" label="Sidor" />
</Panel>
Advanced
<script>
import { Panel, ListSelector } from '@soleil-se/config-svelte';
import { onSave } from '@soleil-se/config-svelte/utils';
const values = {
pages: '',
...window.CONFIG_VALUES
};
onSave(() => values);
</script>
<Panel heading="Inställningar">
<ListSelector name="pages" bind:value={values.pages} label="Sidor" />
</Panel>

Default slot after list.

<ListSelector name="pages" type="page" label="Sidor" />
<p>Some text.</p>
</ListSelector>

Slot for content in the label element.

<ListSelector name="pages" type="page-list">
{#snippet label()}
Custom <strong>label</strong>
{/snippet}
</ListSelector>

Slot for content in the description element to be used instead of the prop when HTML formatting is needed.

<ListSelector name="pages" type="page-list">
{#snippet description()}
Custom <strong>description</strong>
{/snippet}
</ListSelector>

You can omnit the -list suffix for the type prop.

<ListSelector name="pages" type="page" label="Sidor" />

Filter what types should be selectable. See available types here: https://developer.sitevision.se/docs/webapps/webapps-2/configuration/sitevision-components#Listtypes

Accepts an Array or String.

<ListSelector
name="pages"
type="page-list"
label="Sidor"
selectable="sv:page"
selectable={['sv:page', 'sv:sitePage']}
/>