mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2026-04-06 01:25:38 +00:00
109 lines
18 KiB
JavaScript
109 lines
18 KiB
JavaScript
import{_ as l}from"./plugin-vue_export-helper-DlAUqK2U.js";import{c as i,a as n,b as a,d as e,o as p}from"./app-UjmrCZP8.js";const t={};function d(c,s){return p(),i("div",null,s[0]||(s[0]=[n(`<h2 id="basic-usage" tabindex="-1"><a class="header-anchor" href="#basic-usage"><span>Basic usage</span></a></h2><div class="language- line-numbers-mode" data-highlighter="shiki" data-ext="" data-title="" style="--shiki-light:#383A42;--shiki-dark:#abb2bf;--shiki-light-bg:#FAFAFA;--shiki-dark-bg:#282c34;"><pre class="shiki shiki-themes one-light one-dark-pro vp-code"><code><span class="line"><span><ds-select :options="['blue', 'red', 'green']" /></span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div></div></div><h2 id="usage-with-label" tabindex="-1"><a class="header-anchor" href="#usage-with-label"><span>Usage with label</span></a></h2><div class="language- line-numbers-mode" data-highlighter="shiki" data-ext="" data-title="" style="--shiki-light:#383A42;--shiki-dark:#abb2bf;--shiki-light-bg:#FAFAFA;--shiki-dark-bg:#282c34;"><pre class="shiki shiki-themes one-light one-dark-pro vp-code"><code><span class="line"><span><ds-select</span></span>
|
|
<span class="line"><span> label="Color"</span></span>
|
|
<span class="line"><span> :options="['blue', 'red', 'green']" /></span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="bind-to-a-value" tabindex="-1"><a class="header-anchor" href="#bind-to-a-value"><span>Bind to a value</span></a></h2><p>Use v-model to bind a value to the select input.</p><div class="language- line-numbers-mode" data-highlighter="shiki" data-ext="" data-title="" style="--shiki-light:#383A42;--shiki-dark:#abb2bf;--shiki-light-bg:#FAFAFA;--shiki-dark-bg:#282c34;"><pre class="shiki shiki-themes one-light one-dark-pro vp-code"><code><span class="line"><span><template></span></span>
|
|
<span class="line"><span> <div></span></span>
|
|
<span class="line"><span> <ds-select</span></span>
|
|
<span class="line"><span> v-model="color"</span></span>
|
|
<span class="line"><span> :options="['blue', 'red', 'green']"</span></span>
|
|
<span class="line"><span> placeholder="Color ..."></ds-select></span></span>
|
|
<span class="line"><span> <ds-text>Your color: {{ color }}</ds-text></span></span>
|
|
<span class="line"><span> </div></span></span>
|
|
<span class="line"><span></template></span></span>
|
|
<span class="line"><span><script></span></span>
|
|
<span class="line"><span> export default {</span></span>
|
|
<span class="line"><span> data() {</span></span>
|
|
<span class="line"><span> return {</span></span>
|
|
<span class="line"><span> color: 'blue'</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span></script></span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="multiselect" tabindex="-1"><a class="header-anchor" href="#multiselect"><span>Multiselect</span></a></h2><p>Use the multiple prop to allow the user selecting multiple values.</p><div class="language- line-numbers-mode" data-highlighter="shiki" data-ext="" data-title="" style="--shiki-light:#383A42;--shiki-dark:#abb2bf;--shiki-light-bg:#FAFAFA;--shiki-dark-bg:#282c34;"><pre class="shiki shiki-themes one-light one-dark-pro vp-code"><code><span class="line"><span><template></span></span>
|
|
<span class="line"><span> <div></span></span>
|
|
<span class="line"><span> <ds-select</span></span>
|
|
<span class="line"><span> v-model="color"</span></span>
|
|
<span class="line"><span> :options="['blue', 'red', 'green']"</span></span>
|
|
<span class="line"><span> placeholder="Color ..."</span></span>
|
|
<span class="line"><span> multiple></ds-select></span></span>
|
|
<span class="line"><span> <ds-text>Your colors: {{ color }}</ds-text></span></span>
|
|
<span class="line"><span> </div></span></span>
|
|
<span class="line"><span></template></span></span>
|
|
<span class="line"><span><script></span></span>
|
|
<span class="line"><span> export default {</span></span>
|
|
<span class="line"><span> data() {</span></span>
|
|
<span class="line"><span> return {</span></span>
|
|
<span class="line"><span> color: ['blue', 'red']</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span></script></span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="options-as-objects" tabindex="-1"><a class="header-anchor" href="#options-as-objects"><span>Options as objects</span></a></h2><p>Options can be objects. You can define which property to show as the label by defining label-prop. Defaults to "label".</p><div class="language- line-numbers-mode" data-highlighter="shiki" data-ext="" data-title="" style="--shiki-light:#383A42;--shiki-dark:#abb2bf;--shiki-light-bg:#FAFAFA;--shiki-dark-bg:#282c34;"><pre class="shiki shiki-themes one-light one-dark-pro vp-code"><code><span class="line"><span><template></span></span>
|
|
<span class="line"><span> <div></span></span>
|
|
<span class="line"><span> <ds-select</span></span>
|
|
<span class="line"><span> v-model="color"</span></span>
|
|
<span class="line"><span> :options="colorOptions"</span></span>
|
|
<span class="line"><span> placeholder="Color ..."></ds-select></span></span>
|
|
<span class="line"><span> <ds-text>Selected color: {{ color }}</ds-text></span></span>
|
|
<span class="line"><span> <ds-select</span></span>
|
|
<span class="line"><span> v-model="colors"</span></span>
|
|
<span class="line"><span> :options="colorOptions"</span></span>
|
|
<span class="line"><span> placeholder="Colors ..."</span></span>
|
|
<span class="line"><span> multiple></ds-select></span></span>
|
|
<span class="line"><span> <ds-text>Selected colors: {{ colors }}</ds-text></span></span>
|
|
<span class="line"><span> </div></span></span>
|
|
<span class="line"><span></template></span></span>
|
|
<span class="line"><span><script></span></span>
|
|
<span class="line"><span> export default {</span></span>
|
|
<span class="line"><span> data() {</span></span>
|
|
<span class="line"><span> return {</span></span>
|
|
<span class="line"><span> color: null,</span></span>
|
|
<span class="line"><span> colors: [],</span></span>
|
|
<span class="line"><span> colorOptions: [</span></span>
|
|
<span class="line"><span> {</span></span>
|
|
<span class="line"><span> label: 'blue',</span></span>
|
|
<span class="line"><span> value: '#0e17d8'</span></span>
|
|
<span class="line"><span> },</span></span>
|
|
<span class="line"><span> {</span></span>
|
|
<span class="line"><span> label: 'red',</span></span>
|
|
<span class="line"><span> value: '#d80e3f'</span></span>
|
|
<span class="line"><span> },</span></span>
|
|
<span class="line"><span> {</span></span>
|
|
<span class="line"><span> label: 'green',</span></span>
|
|
<span class="line"><span> value: '#0ed853'</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span> ]</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span></script></span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="validation" tabindex="-1"><a class="header-anchor" href="#validation"><span>Validation</span></a></h2>`,14),a("p",null,[e("We use "),a("a",{href:"https://github.com/yiminghe/async-validator",targe:"_blank"},"async-validator schemas"),e(" for validation.")],-1),n(`<p>If you need to validate more than one field it is better to use the form component.</p><div class="language- line-numbers-mode" data-highlighter="shiki" data-ext="" data-title="" style="--shiki-light:#383A42;--shiki-dark:#abb2bf;--shiki-light-bg:#FAFAFA;--shiki-dark-bg:#282c34;"><pre class="shiki shiki-themes one-light one-dark-pro vp-code"><code><span class="line"><span><template></span></span>
|
|
<span class="line"><span> <div></span></span>
|
|
<span class="line"><span> <ds-select</span></span>
|
|
<span class="line"><span> v-model="color"</span></span>
|
|
<span class="line"><span> :options="['blue', 'red', 'green']"</span></span>
|
|
<span class="line"><span> :schema="{type: 'enum', enum: ['green'], message: 'Please choose green :)' }"</span></span>
|
|
<span class="line"><span> placeholder="Color ..." /></span></span>
|
|
<span class="line"><span> </div></span></span>
|
|
<span class="line"><span></template></span></span>
|
|
<span class="line"><span><script></span></span>
|
|
<span class="line"><span> export default {</span></span>
|
|
<span class="line"><span> data() {</span></span>
|
|
<span class="line"><span> return {</span></span>
|
|
<span class="line"><span> color: ''</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span> }</span></span>
|
|
<span class="line"><span></script></span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="select-sizes" tabindex="-1"><a class="header-anchor" href="#select-sizes"><span>Select sizes</span></a></h2><div class="language- line-numbers-mode" data-highlighter="shiki" data-ext="" data-title="" style="--shiki-light:#383A42;--shiki-dark:#abb2bf;--shiki-light-bg:#FAFAFA;--shiki-dark-bg:#282c34;"><pre class="shiki shiki-themes one-light one-dark-pro vp-code"><code><span class="line"><span><ds-select placeholder="Small ..." size="small"></ds-select></span></span>
|
|
<span class="line"><span><ds-select placeholder="Base ..."></ds-select></span></span>
|
|
<span class="line"><span><ds-select placeholder="Large ..." size="large"></ds-select></span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="select-icons" tabindex="-1"><a class="header-anchor" href="#select-icons"><span>Select icons</span></a></h2><p>Add an icon to help the user identify the select fields usage.</p><div class="language- line-numbers-mode" data-highlighter="shiki" data-ext="" data-title="" style="--shiki-light:#383A42;--shiki-dark:#abb2bf;--shiki-light-bg:#FAFAFA;--shiki-dark-bg:#282c34;"><pre class="shiki shiki-themes one-light one-dark-pro vp-code"><code><span class="line"><span><ds-select</span></span>
|
|
<span class="line"><span> placeholder="User ..."</span></span>
|
|
<span class="line"><span> icon="user"></ds-select></span></span>
|
|
<span class="line"><span><ds-select</span></span>
|
|
<span class="line"><span> placeholder="Day ..."</span></span>
|
|
<span class="line"><span> icon="clock"></ds-select></span></span>
|
|
<span class="line"><span><ds-select</span></span>
|
|
<span class="line"><span> placeholder="User ..."</span></span>
|
|
<span class="line"><span> size="small"</span></span>
|
|
<span class="line"><span> icon="user"></ds-select></span></span>
|
|
<span class="line"><span><ds-select</span></span>
|
|
<span class="line"><span> placeholder="User ..."</span></span>
|
|
<span class="line"><span> size="large"</span></span>
|
|
<span class="line"><span> icon="user"></ds-select></span></span></code></pre><div class="line-numbers" aria-hidden="true" style="counter-reset:line-number 0;"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div>`,7)]))}const u=l(t,[["render",d],["__file","demo.html.vue"]]),v=JSON.parse(`{"path":"/styleguide/src/system/components/data-input/Select/demo.html","title":"","lang":"en-US","frontmatter":{},"headers":[{"level":2,"title":"Basic usage","slug":"basic-usage","link":"#basic-usage","children":[]},{"level":2,"title":"Usage with label","slug":"usage-with-label","link":"#usage-with-label","children":[]},{"level":2,"title":"Bind to a value","slug":"bind-to-a-value","link":"#bind-to-a-value","children":[]},{"level":2,"title":"Multiselect","slug":"multiselect","link":"#multiselect","children":[]},{"level":2,"title":"Options as objects","slug":"options-as-objects","link":"#options-as-objects","children":[]},{"level":2,"title":"Validation","slug":"validation","link":"#validation","children":[]},{"level":2,"title":"Select sizes","slug":"select-sizes","link":"#select-sizes","children":[]},{"level":2,"title":"Select icons","slug":"select-icons","link":"#select-icons","children":[]}],"git":{"createdTime":1775422481000,"updatedTime":1775422481000,"contributors":[{"name":"dependabot[bot]","email":"49699333+dependabot[bot]@users.noreply.github.com","commits":1}]},"readingTime":{"minutes":1.18,"words":353},"filePathRelative":"styleguide/src/system/components/data-input/Select/demo.md","localizedDate":"April 5, 2026","excerpt":"<h2>Basic usage</h2>\\n<div class=\\"language- line-numbers-mode\\" data-highlighter=\\"shiki\\" data-ext=\\"\\" data-title=\\"\\" style=\\"--shiki-light:#383A42;--shiki-dark:#abb2bf;--shiki-light-bg:#FAFAFA;--shiki-dark-bg:#282c34\\"><pre class=\\"shiki shiki-themes one-light one-dark-pro vp-code\\"><code><span class=\\"line\\"><span><ds-select :options=\\"['blue', 'red', 'green']\\" /></span></span></code></pre>\\n<div class=\\"line-numbers\\" aria-hidden=\\"true\\" style=\\"counter-reset:line-number 0\\"><div class=\\"line-number\\"></div></div></div>"}`);export{u as comp,v as data};
|