KanbanCommentCard.vue 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <template>
  2. <q-card flat bordered class="q-pa-md">
  3. <div style="display: flex; justify-content: space-between; align-items: flex-start; gap: 8px">
  4. <div style="flex: 1">
  5. <div class="text-body2">
  6. <span class="text-weight-medium">Comentário:</span> {{ reply }}
  7. </div>
  8. <div class="text-caption text-grey-6 q-mt-xs">
  9. {{ createdAt }} &mdash; {{ userName }}
  10. </div>
  11. </div>
  12. <div style="display: flex; gap: 4px; flex-shrink: 0">
  13. <q-btn
  14. v-if="canEdit"
  15. flat
  16. dense
  17. round
  18. icon="mdi-pencil-outline"
  19. size="sm"
  20. color="primary"
  21. @click="$emit('edit')"
  22. />
  23. <q-btn
  24. v-if="canDelete"
  25. flat
  26. dense
  27. round
  28. icon="mdi-trash-can-outline"
  29. size="sm"
  30. color="negative"
  31. @click="$emit('delete')"
  32. />
  33. </div>
  34. </div>
  35. </q-card>
  36. </template>
  37. <script setup>
  38. defineEmits(["edit", "delete"]);
  39. defineProps({
  40. canEdit: { type: Boolean, default: false },
  41. canDelete: { type: Boolean, default: false },
  42. reply: {
  43. type: String,
  44. required: true,
  45. },
  46. createdAt: {
  47. type: String,
  48. required: true,
  49. },
  50. userName: {
  51. type: String,
  52. required: true,
  53. },
  54. });
  55. </script>