DashboardPaymentIncomplete.vue 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <template>
  2. <div class="incomplete-banner q-mx-md q-mb-md" @click="openPayments">
  3. <div class="row items-center no-wrap q-pa-sm q-px-md">
  4. <q-icon name="mdi-alert-outline" size="26px" color="primary" class="q-mr-md" />
  5. <div class="col banner-text text-primary">
  6. {{ $t('dashboard_client.payment_incomplete_title') }}
  7. </div>
  8. <q-btn
  9. unelevated
  10. no-caps
  11. color="primary"
  12. text-color="white"
  13. :label="$t('dashboard_client.payment_incomplete_cta')"
  14. class="q-ml-sm resolver-btn"
  15. />
  16. </div>
  17. </div>
  18. </template>
  19. <script setup>
  20. import { useQuasar } from 'quasar';
  21. import ProfilePaymentsDialog from 'src/components/profile/ProfilePaymentsDialog.vue';
  22. const $q = useQuasar();
  23. const openPayments = () => {
  24. $q.dialog({ component: ProfilePaymentsDialog });
  25. };
  26. </script>
  27. <style lang="scss" scoped>
  28. @use "src/css/quasar.variables.scss";
  29. .incomplete-banner {
  30. border-radius: 12px;
  31. background: $card-incomplete-payments;
  32. cursor: pointer;
  33. }
  34. .banner-text {
  35. font-size: 13px;
  36. font-weight: 500;
  37. line-height: 1.3;
  38. }
  39. .resolver-btn {
  40. border-radius: 20px;
  41. padding: 0px 4px;
  42. font-size: 11px;
  43. white-space: nowrap;
  44. flex-shrink: 0;
  45. }
  46. </style>