1
0
Fork 0
mirror of https://gitlab.com/bramw/baserow.git synced 2025-04-25 05:21:30 +00:00
bramw_baserow/web-frontend/modules/builder/components/page/PageHeader.vue
2023-05-11 15:27:17 +00:00

51 lines
1.3 KiB
Vue

<template>
<header class="layout__col-2-1 header header--space-between">
<PageHeaderMenuItems :page="page" />
<DeviceSelector
:device-type-selected="deviceTypeSelected"
@selected="actionSetDeviceTypeSelected"
/>
<PageActions :page="page" />
</header>
</template>
<script>
import DeviceSelector from '@baserow/modules/builder/components/page/DeviceSelector'
import PageHeaderMenuItems from '@baserow/modules/builder/components/page/PageHeaderMenuItems'
import PageActions from '@baserow/modules/builder/components/page/PageActions'
import { mapActions, mapGetters } from 'vuex'
export default {
name: 'PageHeader',
components: {
PageHeaderMenuItems,
DeviceSelector,
PageActions,
},
props: {
page: {
type: Object,
required: true,
},
},
computed: {
...mapGetters({ deviceTypeSelected: 'page/getDeviceTypeSelected' }),
deviceTypes() {
return Object.values(this.$registry.getOrderedList('device'))
},
},
created() {
if (this.deviceTypeSelected === null) {
this.$store.dispatch(
'page/setDeviceTypeSelected',
this.deviceTypes[0].getType()
)
}
},
methods: {
...mapActions({
actionSetDeviceTypeSelected: 'page/setDeviceTypeSelected',
}),
},
}
</script>