NodeSelector
Generic wrapper for Sitevision input components used for selecting nodes.
This is a field description.
Prefer the specialized wrappers for ordinary usage:
Use NodeSelector when you need to configure the selector component directly.
Example
Section titled “Example”<script> import { NodeSelector } from '@soleil-se/config-svelte';</script>
<NodeSelector name="node" component="content-node" label="Innehåll" />| Prop | Type | Description |
|---|---|---|
componentrequired | string | Sitevision component. |
labelrequired | string | Snippet | Field label, a string or Svelte snippet. |
value$bindable | string | Selected node ID. An initial Sitevision node object from the configuration is normalized to its ID. |
displayName$bindable | string | Display name of the selected node, initialized from the configuration node’s display name or path when available. |
name | string | Configuration key and HTML name attribute. |
types | string | string[] | Restricts selectable node types. |
description | string | Snippet | Description shown below the field, a string or Svelte snippet. |
required | boolean | Set the field as required. Default:false |
disabled | boolean | Disables the field. Default:false |
removable | boolean | Whether the value can be cleared. Default:true |
show | boolean | Shows or hides the selector without destroying it. Default:true |
class | string | CSS class added to the form-group wrapper. |
children | Snippet | Content rendered after the selector and validation message. |
onChange | function | Called on a selection change. |
validate | function | Custom validator. |
Validation
Section titled “Validation”By default, the component applies standard required-field validation. A custom validate prop
replaces that default and returns { success: boolean, message?: string }.
Validation errors are displayed below the component and prevent saving.
See validation for more details.
The selector also reports if a saved node is marked as trashed or removed. Selecting another node clears that flag.
Validation errors are displayed below the selector and prevent saving.
For file-type validation with accept, use FileSelector.
Snippets
Section titled “Snippets”label and description accept text or Svelte snippets.
Default child content is rendered after the selector and validation message.
<script> import { NodeSelector } from '@soleil-se/config-svelte';</script>
<NodeSelector name="node" component="image"> {#snippet label()} Välj <strong>innehåll</strong> {/snippet} {#snippet description()} Innehåll som används i <strong>appen</strong>. {/snippet} <p>Ytterligare information.</p></NodeSelector>