parent
4ae7786362
commit
f97c94832a
@ -36,6 +36,7 @@ export default {
|
|||||||
{ text: 'Slider', link: '/components/slider' },
|
{ text: 'Slider', link: '/components/slider' },
|
||||||
{ text: 'Text Inputs', link: '/components/text-inputs' },
|
{ text: 'Text Inputs', link: '/components/text-inputs' },
|
||||||
{ text: 'Search Filter', link: '/components/search-filter' },
|
{ text: 'Search Filter', link: '/components/search-filter' },
|
||||||
|
{ text: 'Toggle', link: '/components/toggle' },
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|||||||
20
docs/components/toggle.md
Normal file
20
docs/components/toggle.md
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
# Toggle
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref } from "vue";
|
||||||
|
|
||||||
|
const value = ref(true)
|
||||||
|
</script>
|
||||||
|
<DemoContainer>
|
||||||
|
<Toggle v-model="value" checked="true" />
|
||||||
|
</DemoContainer>
|
||||||
|
|
||||||
|
```vue
|
||||||
|
<script setup>
|
||||||
|
import { ref } from "vue";
|
||||||
|
|
||||||
|
const value = ref(true)
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<Toggle v-model="value" />
|
||||||
|
```
|
||||||
37
lib/components/base/Toggle.vue
Normal file
37
lib/components/base/Toggle.vue
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
<template>
|
||||||
|
<input
|
||||||
|
:id="id"
|
||||||
|
type="checkbox"
|
||||||
|
class="switch stylized-toggle"
|
||||||
|
:checked="checked"
|
||||||
|
@change="toggle"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
id: {
|
||||||
|
type: String,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
modelValue: {
|
||||||
|
type: Boolean,
|
||||||
|
},
|
||||||
|
checked: {
|
||||||
|
type: Boolean,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
emits: ['update:modelValue'],
|
||||||
|
methods: {
|
||||||
|
toggle() {
|
||||||
|
if (!this.disabled) {
|
||||||
|
this.$emit('update:modelValue', !this.modelValue)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped></style>
|
||||||
@ -16,6 +16,7 @@ export { default as EnvironmentIndicator } from './base/EnvironmentIndicator.vue
|
|||||||
export { default as DropdownSelect } from './base/DropdownSelect.vue'
|
export { default as DropdownSelect } from './base/DropdownSelect.vue'
|
||||||
export { default as FileInput } from './base/FileInput.vue'
|
export { default as FileInput } from './base/FileInput.vue'
|
||||||
export { default as DropArea } from './base/DropArea.vue'
|
export { default as DropArea } from './base/DropArea.vue'
|
||||||
|
export { default as Toggle } from './base/Toggle.vue'
|
||||||
|
|
||||||
export { default as Categories } from './search/Categories.vue'
|
export { default as Categories } from './search/Categories.vue'
|
||||||
export { default as SearchFilter } from './search/SearchFilter.vue'
|
export { default as SearchFilter } from './search/SearchFilter.vue'
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user