Offer

The VCardOffer component is a Vue 3 component designed to display investment offers in a card format. It includes details such as the offer name, image, minimum investment, valuation, and funding status. Location: ui-kit/src/components/VCard/VCardOffer.vue

Props

NameTypeDefaultDescription
offerIOfferundefinedThe investment offer object.
fundedBooleanfalseIndicates if the offer is fully funded.
routeNameStringundefinedThe route name for navigation.
linkStringundefinedThe URL to navigate to when the card is clicked.
imageLoadingString'lazy'The loading behavior for the offer image.

Computed Properties

NameTypeDescription
offerImagestringDetermines the offer image URL, falling back to a default image if none is provided.
isDefaultImagebooleanChecks if the default image is being used.
minInvestmentnumberCalculates the minimum investment amount.
amountPercentnumberRetrieves the percentage of the offer that has been funded.
isClosingSoonbooleanDetermines if the offer is close to full funding (above 90%).
isNewbooleanPlaceholder for checking if the offer is new (currently disabled).
tagTextstringReturns the tag text (🔥 Closing Soon or New).
tagBackgroundstringSets the background class for the offer tag.
showTagbooleanDetermines if the offer should display a tag.
infoTagsstring[]A list of predefined offer categories.
minInvestmentValuestringFormats the minimum investment amount as currency.

Example

vue
<script setup lang="ts">
import VOfferCard from 'UiKit/components/VCard/VCardOffer';
</script>

<template>
  <VOfferCard
  :offer="offer"
  :funded="false"
  routeName="offer-details"
  link="/invest/offer-123"
  imageLoading="eager"
/>
</template>

VSectionCardOfferGrid Component

The VSectionCardOfferGrid component is a Vue 3 component used to display a list of offers in a grid format. It features dynamic rendering based on loading state and provides an option to display placeholder cards when data is still being fetched. The component uses VSection for layout and VCardOffer for rendering individual offers.

Props

PropTypeDescription
titleStringThe title displayed at the top of the section.
subTitleStringThe subtitle displayed below the title.
itemsArray (IOffer[])An array of offers to be displayed. Each offer follows the IOffer interface.
buttonHrefStringThe URL that the section's button links to.
buttonTextStringThe text displayed on the section's button.
loadingBooleanA flag indicating whether the section is in loading state or not.

Slots

Slot NameDescription
infoShortContent displayed in the section header's short info area.

Example

vue
<script setup lang="ts">
import VSectionCardOfferGrid from 'UiKit/components/VCard/VSectionCardOfferGrid.vue';

</script>
<template>
  <VSectionCardOfferGrid
      :items="offers"
      :button-href="explore[0].url"
      button-text="View More Offerings"
      title="Invest Now"
      sub-title="Building wealth, securing tomorrow"
      :loading="isGetOffersLoading"
      class="is--paddings"
    />
</template>
Help Ukraine to stop russian aggression