You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.4 KiB
51 lines
1.4 KiB
<script setup lang="ts">
|
|
import { ref } from "vue";
|
|
import { RichTextBox } from "../types.ts";
|
|
|
|
const props = defineProps({
|
|
value: {
|
|
type: RichTextBox,
|
|
},
|
|
// statement: { type: String, required: true },
|
|
// startingX: { type: Number, default: 0 },
|
|
// startingY: { type: Number, default: 0 },
|
|
});
|
|
</script>
|
|
|
|
<template>
|
|
<Draggable
|
|
:grid="[5, 5]"
|
|
:default-position="{ x: props.value.x, y: props.value.y }"
|
|
>
|
|
<div style="display: flex; bottom: 10px; right: 0">
|
|
<q-card flat bordered>
|
|
<q-card-section style="padding: 0">
|
|
<div class="row items-center no-wrap">
|
|
<q-card-section v-html="props.value.text" />
|
|
<div class="col-auto">
|
|
<q-btn color="grey-7" round flat icon="more_vert">
|
|
<q-menu cover auto-close>
|
|
<q-list>
|
|
<q-item clickable>
|
|
<q-item-section @click="() => $emit('edit')"
|
|
>Edit</q-item-section
|
|
>
|
|
</q-item>
|
|
<q-item clickable>
|
|
<q-item-section @click="() => $emit('remove')"
|
|
>Remove</q-item-section
|
|
>
|
|
</q-item>
|
|
</q-list>
|
|
</q-menu>
|
|
</q-btn>
|
|
</div>
|
|
</div>
|
|
</q-card-section>
|
|
</q-card>
|
|
</div>
|
|
</Draggable>
|
|
</template>
|
|
|
|
<style lang="sass" scoped></style>
|