parent
ca0a7f70aa
commit
5679e9d2d2
@ -1,7 +1,7 @@
|
||||
{
|
||||
"/js/vue/Authentication/app.js": "/js/vue/Authentication/app.js?id=c9ebdffec50d82145867",
|
||||
"/js/vue/Home/app.js": "/js/vue/Home/app.js?id=e2cd567ef427a1285194",
|
||||
"/js/vue/Modules/CRM/app.js": "/js/vue/Modules/CRM/app.js?id=21ca2c0fd50704c54125",
|
||||
"/js/vue/Modules/Reservation/app.js": "/js/vue/Modules/Reservation/app.js?id=ecddb140ee87bb6dfc7c",
|
||||
"/js/vue/User/app.js": "/js/vue/User/app.js?id=ba20da8154c5c04c0dd6"
|
||||
"/js/vue/Authentication/app.js": "/js/vue/Authentication/app.js",
|
||||
"/js/vue/Home/app.js": "/js/vue/Home/app.js",
|
||||
"/js/vue/Modules/CRM/app.js": "/js/vue/Modules/CRM/app.js",
|
||||
"/js/vue/Modules/Reservation/app.js": "/js/vue/Modules/Reservation/app.js",
|
||||
"/js/vue/User/app.js": "/js/vue/User/app.js"
|
||||
}
|
||||
|
@ -0,0 +1,22 @@
|
||||
<template>
|
||||
<div>
|
||||
<v-checkbox
|
||||
:class="element.width"
|
||||
:label="element.label"
|
||||
:hibt="element.hint"
|
||||
:color="element.color"
|
||||
:append-icon="element.append_icon"
|
||||
:prepend-icon="element.prepend_icon"
|
||||
multiple="true"
|
||||
></v-checkbox>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props:{
|
||||
element:{
|
||||
type: Object
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
@ -0,0 +1,9 @@
|
||||
<template>
|
||||
<div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import Factory from '../FactoryPattern'
|
||||
export default {};
|
||||
</script>
|
@ -0,0 +1,22 @@
|
||||
<template>
|
||||
<div>
|
||||
<v-text-field
|
||||
:label="element.label"
|
||||
:placeholder="element.placeholder"
|
||||
:hint="element.hint"
|
||||
:color="element.color"
|
||||
:append-icon="element.append_icon"
|
||||
:prepend-icon="element.prepend_icon"
|
||||
:class="element.width"
|
||||
></v-text-field>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props:{
|
||||
element:{
|
||||
type: Object
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
@ -0,0 +1,23 @@
|
||||
<template>
|
||||
<div>
|
||||
<v-radio-group>
|
||||
<v-radio
|
||||
:class="element.width"
|
||||
:label="element.label"
|
||||
:hibt="element.hint"
|
||||
:color="element.color"
|
||||
:append-icon="element.append_icon"
|
||||
:prepend-icon="element.prepend_icon"
|
||||
></v-radio>
|
||||
</v-radio-group>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props:{
|
||||
element:{
|
||||
type: Object
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
@ -0,0 +1,23 @@
|
||||
<template>
|
||||
<div>
|
||||
<v-autocomplete
|
||||
:label="element.label"
|
||||
:placeholder="element.placeholder"
|
||||
:hint="element.hint"
|
||||
:color="element.color"
|
||||
:append-icon="element.append_icon"
|
||||
:prepend-icon="element.prepend_icon"
|
||||
:class="element.width"
|
||||
:multiple="element.multiple"
|
||||
></v-autocomplete>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props:{
|
||||
element:{
|
||||
type: Object
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
@ -0,0 +1,21 @@
|
||||
<template>
|
||||
<div>
|
||||
<v-switch
|
||||
:class="element.width"
|
||||
:label="element.label"
|
||||
:hibt="element.hint"
|
||||
:color="element.color"
|
||||
:append-icon="element.append_icon"
|
||||
:prepend-icon="element.prepend_icon"
|
||||
></v-switch>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props:{
|
||||
element:{
|
||||
type: Object
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
@ -0,0 +1,22 @@
|
||||
<template>
|
||||
<div>
|
||||
<v-textarea
|
||||
:label="element.label"
|
||||
:placeholder="element.placeholder"
|
||||
:hint="element.hint"
|
||||
:color="element.color"
|
||||
:append-icon="element.append_icon"
|
||||
:prepend-icon="element.prepend_icon"
|
||||
:class="element.width"
|
||||
></v-textarea>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props:{
|
||||
element:{
|
||||
type: Object
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
@ -0,0 +1,26 @@
|
||||
<template>
|
||||
<div>
|
||||
<component v-bind:is="element.type" :options="element" ></component>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import Vue from 'vue'
|
||||
|
||||
const requireElement = require.context('./Elements', true, /\.vue$/);
|
||||
requireElement.keys().forEach(fileName => {
|
||||
// Replace ./ and .vue
|
||||
const elementName = fileName.replace(/(\.\/|\.vue)/g, '')
|
||||
Vue.component(elementName,
|
||||
() => import(`./Elements/${elementName}.vue`)
|
||||
)
|
||||
});
|
||||
|
||||
export default {
|
||||
props:{
|
||||
element:{
|
||||
type: Object,
|
||||
required: true
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
@ -0,0 +1,34 @@
|
||||
<template>
|
||||
<div>
|
||||
<element-factory v-for="(element, key) in elements" :element="element" :key="key"></element-factory>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import Factory from './FactoryPattern'
|
||||
export default {
|
||||
components:{
|
||||
'element-factory' : Factory
|
||||
},
|
||||
data: () => ({
|
||||
elements:[
|
||||
{type:"wm-input", },
|
||||
{type: "wm-form", children: [
|
||||
{type:"wm-select", },
|
||||
{type:"wm-form", children: [
|
||||
{type: "wm-input"},
|
||||
{type: "wm-checkbox"},
|
||||
]},
|
||||
{type:"wm-input", },
|
||||
]},
|
||||
{type:"wm-select", },
|
||||
{type:"wm-checkbox", },
|
||||
]
|
||||
}),
|
||||
props:{
|
||||
// elements: {
|
||||
// type: Array,
|
||||
// required: true
|
||||
// }
|
||||
}
|
||||
}
|
||||
</script>
|
Loading…
Reference in new issue