デッキまわりをCompositon API / Setup Sugarに (#8410)

* universal.widgets.vue

* column.vue, antenna-column.vue

* direct-column.vue, list-column.vue

* main-column.vue

* wip

* ✌️

* fix

* ✌️

* ✌️
This commit is contained in:
tamaina 2022-03-21 03:11:14 +09:00 committed by GitHub
parent eb9e6d230f
commit 78736c70f7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 639 additions and 756 deletions

View file

@ -1,53 +1,38 @@
<template>
<XColumn :column="column" :is-stacked="isStacked" :func="{ handler: func, title: $ts.notificationSetting }">
<XColumn :column="column" :is-stacked="isStacked" :func="{ handler: func, title: $ts.notificationSetting }" @parent-focus="$event => emit('parent-focus', $event)">
<template #header><i class="fas fa-bell" style="margin-right: 8px;"></i>{{ column.name }}</template>
<XNotifications :include-types="column.includingTypes"/>
</XColumn>
</template>
<script lang="ts">
import { defineComponent } from 'vue';
<script lang="ts" setup>
import { } from 'vue';
import XColumn from './column.vue';
import XNotifications from '@/components/notifications.vue';
import * as os from '@/os';
import { updateColumn } from './deck-store';
import { Column } from './deck-store';
export default defineComponent({
components: {
XColumn,
XNotifications
},
const props = defineProps<{
column: Column;
isStacked: boolean;
}>();
props: {
column: {
type: Object,
required: true
const emit = defineEmits<{
(e: 'parent-focus', direction: 'up' | 'down' | 'left' | 'right'): void;
}>();
function func() {
os.popup(import('@/components/notification-setting-window.vue'), {
includingTypes: props.column.includingTypes,
}, {
done: async (res) => {
const { includingTypes } = res;
updateColumn(props.column.id, {
includingTypes: includingTypes
});
},
isStacked: {
type: Boolean,
required: true
}
},
data() {
return {
}
},
methods: {
func() {
os.popup(import('@/components/notification-setting-window.vue'), {
includingTypes: this.column.includingTypes,
}, {
done: async (res) => {
const { includingTypes } = res;
updateColumn(this.column.id, {
includingTypes: includingTypes
});
},
}, 'closed');
}
}
});
}, 'closed');
}
</script>