summaryrefslogtreecommitdiff
path: root/packages/frontend/src/components/DynamicNoteSimple.vue
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2025-04-01 12:49:53 -0400
committerHazelnoot <acomputerdog@gmail.com>2025-04-01 12:49:53 -0400
commit8b5768f8482573a4b1d709214dc762f7e9a7de97 (patch)
tree33eb56ba51b9f24a4708e9e6edb43ff26cc3c8b4 /packages/frontend/src/components/DynamicNoteSimple.vue
parentadd DynamicNoteDetailed.vue (diff)
downloadsharkey-8b5768f8482573a4b1d709214dc762f7e9a7de97.tar.gz
sharkey-8b5768f8482573a4b1d709214dc762f7e9a7de97.tar.bz2
sharkey-8b5768f8482573a4b1d709214dc762f7e9a7de97.zip
add DynamicNoteSimple.vue
Diffstat (limited to 'packages/frontend/src/components/DynamicNoteSimple.vue')
-rw-r--r--packages/frontend/src/components/DynamicNoteSimple.vue48
1 files changed, 48 insertions, 0 deletions
diff --git a/packages/frontend/src/components/DynamicNoteSimple.vue b/packages/frontend/src/components/DynamicNoteSimple.vue
new file mode 100644
index 0000000000..a7713afad1
--- /dev/null
+++ b/packages/frontend/src/components/DynamicNoteSimple.vue
@@ -0,0 +1,48 @@
+<!--
+SPDX-FileCopyrightText: hazelnoot and other Sharkey contributors
+SPDX-License-Identifier: AGPL-3.0-only
+-->
+
+<template>
+<XNoteSimple
+ ref="rootEl"
+ :note="note"
+ :expandAllCws="expandAllCws"
+ :hideFiles="hideFiles"
+ @editScheduledNote="() => emit('editScheduleNote')"
+/>
+</template>
+
+<script setup lang="ts">
+import * as Misskey from 'misskey-js';
+import { computed, defineAsyncComponent, shallowRef } from 'vue';
+import type { ComponentExposed } from 'vue-component-type-helpers';
+import type MkNoteSimple from '@/components/MkNoteSimple.vue';
+import type SkNoteSimple from '@/components/SkNoteSimple.vue';
+import { prefer } from '@/preferences';
+
+const XNoteSimple = computed(() =>
+ defineAsyncComponent<typeof MkNoteSimple | typeof SkNoteSimple>(() =>
+ prefer.r.noteDesign.value === 'misskey'
+ ? import('@/components/MkNoteSimple.vue')
+ : import('@/components/SkNoteSimple.vue'),
+ ),
+);
+
+const rootEl = shallowRef<ComponentExposed<typeof MkNoteSimple | typeof SkNoteSimple>>();
+
+defineExpose({ rootEl });
+
+defineProps<{
+ note: Misskey.entities.Note & {
+ isSchedule?: boolean,
+ scheduledNoteId?: string
+ };
+ expandAllCws?: boolean;
+ hideFiles?: boolean;
+}>();
+
+const emit = defineEmits<{
+ (ev: 'editScheduleNote'): void;
+}>();
+</script>