render()

in lib/@uncharted/cards/src/components/card/card.js [54:96]


    render() {
        const noImages = !this.data.imageUrl && (this.data.source || this.data.sourceUrl);
        const displayBackCardByDefault = this._config['card.displayBackCardByDefault'];
        const disableFlipping = this._config['card.disableFlipping'];
        const enableBoxShadow = this._config['card.enableBoxShadow'];
        const metaDataFontSize = this._config['card.metadata.fontSize'];
        const metaDataTitleColor = this._config['card.metadata.title.color'];
        const metaDataTitleFontFamily = this._config['card.metadata.title.fontFamily'];
        const metaDataValueColor = this._config['card.metadata.value.color'];
        const metaDataValueFontFamily = this._config['card.metadata.value.fontFamily'];

        const data = Object.assign({
            titleOnly: noImages,
            boxShadow: enableBoxShadow,
            width: this.isExpanded ? this.expandedWidth : this.initialWidth,
            height: this.height,
            expandedWidth: this.expandedWidth,
            cardContentWidth: this.initialWidth,
            isExpanded: this.isExpanded,
            isFlipped: this.isFlipped,
            disableFlipping,
            subtitleDelimiter: this._config.subtitleDelimiter,
            iconUrl: this._getIconUrl(),
            removeFrontCard: disableFlipping && displayBackCardByDefault,
            removeBackCard: disableFlipping && !displayBackCardByDefault,
            tooltip: $('<div/>').html(this.data.summary).text(),
            metaDataFontSize: metaDataFontSize,
            metaDataTitleColor: metaDataTitleColor,
            metaDataTitleFontFamily: metaDataTitleFontFamily,
            metaDataValueColor: metaDataValueColor,
            metaDataValueFontFamily: metaDataValueFontFamily,
        }, this.data);

        this.$element = $(cardTemplate(data));

        this._$cardImage = this.$element.find('.card-image');
        this.headerImage.hasImages() && this._$cardImage.append(this.headerImage.render());

        this.isExpanded && this._renderReaderContent();

        this._registerDomEvents();
        return this.$element;
    }