Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Card

The Card directive lets you render the data in the form of a card component. This directive can be used for various purposes, besides Provider or Location cards. This could hold any HTML content within it.

This Card directive renders a layout primarily for the User to render their custom content on the Card. Unlike the Bootstrap carousel or the Cardlist directive, this Card directive does not have predefined properties that control what is rendered on the Card.

Sample

Snippet

{
    "type": "card",
    "items": [{
            "content": `<h1>main card 1<h1>`,
            "contentUrl": url, 
            "detailView": {
                "content": `<h1> Card detail view 1</h1>`,
                "contentUrl": url 
            }
        },
        {
            "content": `<h1>main card 2<h1>`,
            "contentUrl": url, 
            "detailView": {
                "content": `<h1> Card detail view 2</h1>`,
                "contentUrl": url 
            }
        }
    ],
    "filterButton": false
}

Please add the above snippet in the Chatbot Settings under the directive object.

The Card component will render only one card item with navigation arrows, irrespective of the page screen width. User can use the buttons to navigate to other cards.

Parameters used for Carousel

Property

Description

"type": "card"

This property accepts card as the option to identify this directive as Card.

"items": [{
"content": {...},
"contentUrl": {...},
"detailView": {
"content": {...},
"contentUrl": {...},
}
],

The items property holds an Array of Card data and this is displayed on the Bot. Each Card object can have the below properties.

  • content

  • contentUrl

  • detailView

    • content

    • contentUrl

"content": {}

This property will hold the HTML content to render the main Card data.

Sample:
"content": `<h1> Card ${i+1} </h1> <img src='https://ucarecdn.com/05f649bf-b70b-4cf8-90f7-2588ce404a08/' class='d-block w-100' alt='image'>`

"contentUrl": {}

This property is optional. This can be used to host the content in a template and we must specify the endpoint here. The card will render from that endpoint.

This property take priority over the content property. This is to render the main card.

Sample:

"contentUrl": "http://localhost:3030/oeapi/html"

"detailView": {
"content": {...},
"contentUrl": {...},

}

The property detailView defines the content for the Detail view of the Card.

The properties inside this, namely the content and contentUrl works like the same defined for the main card.

"filterButton": false

The functionality for the Filter page is under development. Please have the property set to false until further change.

Related Articles

  • No labels