Files
mixtape/zero.Web.UI/App/editor/editor-aside.vue
T
2020-10-21 12:10:21 +02:00

79 lines
2.3 KiB
Vue

<template>
<aside v-if="!nested && infos && infos != 'none'" class="editor-infos">
<slot name="info-boxes"></slot>
<div class="ui-box" v-if="isShared" :class="{'is-active': value.isActive }">
<div class="editor-global-flag">
<i class="fth-radio"></i>
<p>
<b>This entity is bound to a parent</b> and automatically synchronised.<br>
<!--<a href="/">Edit parent</a>-->
</p>
</div>
<ui-button type="light small" label="Settings" @click="editBlueprint(value.blueprint)" />
<ui-button type="light small" label="Edit parent" @click="editBlueprint(value.blueprint)" />
</div>
<div class="ui-box editor-active-toggle" v-if="activeToggle" :class="{'is-active': value.isActive }">
<slot name="settings">
<ui-property v-if="activeToggle" label="@ui.active" :is-text="true" class="is-toggle">
<ui-toggle v-model="value.isActive" class="is-primary" :disabled="disabled" />
</ui-property>
</slot>
<slot name="settings-properties"></slot>
</div>
<div class="ui-box is-light" v-if="value.id">
<slot name="infos">
<ui-property v-if="value.id" label="@ui.id" :is-text="true">
{{value.id}}
</ui-property>
<ui-property v-if="value.id && value.lastModifiedDate" label="@ui.modifiedDate" :is-text="true">
<ui-date v-model="value.lastModifiedDate" />
</ui-property>
<ui-property v-if="value.id" label="@ui.createdDate" :is-text="true">
<ui-date v-model="value.createdDate" />
</ui-property>
<slot name="infos-more"></slot>
</slot>
</div>
<slot name="infos-after"></slot>
</aside>
</template>
<script>
export default {
name: 'uiEditorAside',
inject: [ 'meta', 'disabled' ],
props: {
editor: {
type: Object,
required: true
},
value: {
type: Object,
required: true
},
infos: {
type: String,
default: 'aside'
},
activeToggle: {
type: Boolean,
default: true
},
nested: {
type: Boolean,
default: false
},
isPage: {
type: Boolean,
default: false
},
},
data: () => ({
isShared: false
})
}
</script>