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.
ui/src/components/TextBox.vue

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>