ContentNodeSelector
Select a content node.
This component wraps NodeSelector with component="content-node".
This is a field description.
Example
Section titled “Example”<script> import { ContentNodeSelector } from '@soleil-se/config-svelte';</script>
<ContentNodeSelector name="contentNode" label="Content node" description="This is a field description."/>The following props are inherited from the NodeSelector component.
| Prop | Type | Description |
|---|---|---|
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. |
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.
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 { ContentNodeSelector } from '@soleil-se/config-svelte';</script>
<ContentNodeSelector name="node"> {#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></ContentNodeSelector>