@kushki/ng-suka
Version:
<p align="center"> <h1 align="center">Suka Components Angular</h1> <p align="center"> An Angular implementation of the Suka Design System </p> </p>
133 lines (130 loc) • 8.22 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, Input, HostBinding, Output, EventEmitter } from '@angular/core';
// tslint:disable-next-line: component-class-suffix
export class Card {
constructor() {
this.primaryFooterAction = new EventEmitter();
this.secondaryFooterAction = new EventEmitter();
this.headerAction = new EventEmitter();
this.cardClass = true;
/**
* Skeleton state.
*/
this.skeleton = false;
this.showFooter = false;
}
/**
* @return {?}
*/
ngOnInit() {
this.showFooter = this.primaryFooterAction.observers.length > 0;
}
/**
* @param {?} $event
* @return {?}
*/
onPrimaryFooterAction($event) {
this.primaryFooterAction.emit($event);
}
/**
* @param {?} $event
* @return {?}
*/
onSecondaryFooterAction($event) {
this.secondaryFooterAction.emit($event);
}
/**
* @param {?} $event
* @return {?}
*/
onHeaderAction($event) {
this.headerAction.emit($event);
}
}
Card.decorators = [
{ type: Component, args: [{
selector: 'suka-card',
template: `
<suka-card-header
*ngIf="title"
(action)="onHeaderAction($event)"
[actionLabel]="headerActionLabel"
[skeleton]="skeleton"
>
{{title}}
</suka-card-header>
<suka-card-section
*ngIf='(sectioned !== false) else elseTpl'
>
<ng-container *ngTemplateOutlet="elseTpl"></ng-container>
</suka-card-section>
<suka-card-footer
*ngIf='!skeleton && showFooter'
(primaryAction)="onPrimaryFooterAction($event)"
[primaryLabel]="primaryFooterActionLabel"
(secondaryAction)="secondaryFooterAction ? onSecondaryFooterAction($event): undefined"
[secondaryLabel]="secondaryFooterActionLabel"
>
</suka-card-footer>
<ng-template #elseTpl><ng-content></ng-content></ng-template>
`
}] }
];
Card.propDecorators = {
title: [{ type: Input }],
sectioned: [{ type: Input }],
primaryFooterActionLabel: [{ type: Input }],
primaryFooterAction: [{ type: Output }],
secondaryFooterActionLabel: [{ type: Input }],
secondaryFooterAction: [{ type: Output }],
headerActionLabel: [{ type: Input }],
headerAction: [{ type: Output }],
cardClass: [{ type: HostBinding, args: ['class.card',] }],
skeleton: [{ type: Input }]
};
if (false) {
/**
* Title content for the card.
* @type {?}
*/
Card.prototype.title;
/**
* Set to `true` to auto-wrap content in section
* @type {?}
*/
Card.prototype.sectioned;
/**
* Primary action in the card footer.
* @type {?}
*/
Card.prototype.primaryFooterActionLabel;
/** @type {?} */
Card.prototype.primaryFooterAction;
/**
* Secondary action in the card footer.
* @type {?}
*/
Card.prototype.secondaryFooterActionLabel;
/** @type {?} */
Card.prototype.secondaryFooterAction;
/**
* Action in the card header.
* @type {?}
*/
Card.prototype.headerActionLabel;
/** @type {?} */
Card.prototype.headerAction;
/** @type {?} */
Card.prototype.cardClass;
/**
* Skeleton state.
* @type {?}
*/
Card.prototype.skeleton;
/** @type {?} */
Card.prototype.showFooter;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Aa3VzaGtpL25nLXN1a2EvIiwic291cmNlcyI6WyJsaWIvY2FyZC9jYXJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFpQzVGLG1EQUFtRDtBQUNuRCxNQUFNLE9BQU8sSUFBSTtJQWhDakI7UUErQ1ksd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQU16QywwQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBTTNDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVqQixjQUFTLEdBQUcsSUFBSSxDQUFDOzs7O1FBS25DLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFMUIsZUFBVSxHQUFHLEtBQUssQ0FBQztJQWlCckIsQ0FBQzs7OztJQWZRLFFBQVE7UUFDYixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNsRSxDQUFDOzs7OztJQUVNLHFCQUFxQixDQUFDLE1BQU07UUFDakMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxDQUFDOzs7OztJQUVNLHVCQUF1QixDQUFDLE1BQU07UUFDbkMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQyxDQUFDOzs7OztJQUVNLGNBQWMsQ0FBQyxNQUFNO1FBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7OztZQXBGRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwQlQ7YUFDRjs7O29CQU9FLEtBQUs7d0JBS0wsS0FBSzt1Q0FLTCxLQUFLO2tDQUNMLE1BQU07eUNBS04sS0FBSztvQ0FDTCxNQUFNO2dDQUtOLEtBQUs7MkJBQ0wsTUFBTTt3QkFFTixXQUFXLFNBQUMsWUFBWTt1QkFLeEIsS0FBSzs7Ozs7OztJQTlCTixxQkFBdUI7Ozs7O0lBS3ZCLHlCQUE0Qjs7Ozs7SUFLNUIsd0NBQTBDOztJQUMxQyxtQ0FBbUQ7Ozs7O0lBS25ELDBDQUE2Qzs7SUFDN0MscUNBQXFEOzs7OztJQUtyRCxpQ0FBbUM7O0lBQ25DLDRCQUE0Qzs7SUFFNUMseUJBQTRDOzs7OztJQUs1Qyx3QkFBMEI7O0lBRTFCLDBCQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEhvc3RCaW5kaW5nLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3N1a2EtY2FyZCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHN1a2EtY2FyZC1oZWFkZXJcbiAgICAgICpuZ0lmPVwidGl0bGVcIlxuICAgICAgKGFjdGlvbik9XCJvbkhlYWRlckFjdGlvbigkZXZlbnQpXCJcbiAgICAgIFthY3Rpb25MYWJlbF09XCJoZWFkZXJBY3Rpb25MYWJlbFwiXG4gICAgICBbc2tlbGV0b25dPVwic2tlbGV0b25cIlxuICAgID5cbiAgICAgIHt7dGl0bGV9fVxuICAgIDwvc3VrYS1jYXJkLWhlYWRlcj5cblxuICAgIDxzdWthLWNhcmQtc2VjdGlvblxuICAgICAgKm5nSWY9JyhzZWN0aW9uZWQgIT09IGZhbHNlKSBlbHNlIGVsc2VUcGwnXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImVsc2VUcGxcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L3N1a2EtY2FyZC1zZWN0aW9uPlxuXG4gICAgPHN1a2EtY2FyZC1mb290ZXJcbiAgICAgICpuZ0lmPSchc2tlbGV0b24gJiYgc2hvd0Zvb3RlcidcbiAgICAgIChwcmltYXJ5QWN0aW9uKT1cIm9uUHJpbWFyeUZvb3RlckFjdGlvbigkZXZlbnQpXCJcbiAgICAgIFtwcmltYXJ5TGFiZWxdPVwicHJpbWFyeUZvb3RlckFjdGlvbkxhYmVsXCJcbiAgICAgIChzZWNvbmRhcnlBY3Rpb24pPVwic2Vjb25kYXJ5Rm9vdGVyQWN0aW9uID8gb25TZWNvbmRhcnlGb290ZXJBY3Rpb24oJGV2ZW50KTogdW5kZWZpbmVkXCJcbiAgICAgIFtzZWNvbmRhcnlMYWJlbF09XCJzZWNvbmRhcnlGb290ZXJBY3Rpb25MYWJlbFwiXG4gICAgPlxuICAgIDwvc3VrYS1jYXJkLWZvb3Rlcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjZWxzZVRwbD48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9uZy10ZW1wbGF0ZT5cbiAgYFxufSlcblxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBjb21wb25lbnQtY2xhc3Mtc3VmZml4XG5leHBvcnQgY2xhc3MgQ2FyZCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiBUaXRsZSBjb250ZW50IGZvciB0aGUgY2FyZC5cbiAgICovXG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNldCB0byBgdHJ1ZWAgdG8gYXV0by13cmFwIGNvbnRlbnQgaW4gc2VjdGlvblxuICAgKi9cbiAgQElucHV0KCkgc2VjdGlvbmVkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQcmltYXJ5IGFjdGlvbiBpbiB0aGUgY2FyZCBmb290ZXIuXG4gICAqL1xuICBASW5wdXQoKSBwcmltYXJ5Rm9vdGVyQWN0aW9uTGFiZWw6IHN0cmluZztcbiAgQE91dHB1dCgpIHByaW1hcnlGb290ZXJBY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIFNlY29uZGFyeSBhY3Rpb24gaW4gdGhlIGNhcmQgZm9vdGVyLlxuICAgKi9cbiAgQElucHV0KCkgIHNlY29uZGFyeUZvb3RlckFjdGlvbkxhYmVsOiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBzZWNvbmRhcnlGb290ZXJBY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIEFjdGlvbiBpbiB0aGUgY2FyZCBoZWFkZXIuXG4gICAqL1xuICBASW5wdXQoKSBoZWFkZXJBY3Rpb25MYWJlbDogc3RyaW5nO1xuICBAT3V0cHV0KCkgaGVhZGVyQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY2FyZCcpIGNhcmRDbGFzcyA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFNrZWxldG9uIHN0YXRlLlxuICAgKi9cbiAgQElucHV0KCkgc2tlbGV0b24gPSBmYWxzZTtcblxuICBzaG93Rm9vdGVyID0gZmFsc2U7XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuc2hvd0Zvb3RlciA9IHRoaXMucHJpbWFyeUZvb3RlckFjdGlvbi5vYnNlcnZlcnMubGVuZ3RoID4gMDtcbiAgfVxuXG4gIHB1YmxpYyBvblByaW1hcnlGb290ZXJBY3Rpb24oJGV2ZW50KSB7XG4gICAgdGhpcy5wcmltYXJ5Rm9vdGVyQWN0aW9uLmVtaXQoJGV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBvblNlY29uZGFyeUZvb3RlckFjdGlvbigkZXZlbnQpIHtcbiAgICB0aGlzLnNlY29uZGFyeUZvb3RlckFjdGlvbi5lbWl0KCRldmVudCk7XG4gIH1cblxuICBwdWJsaWMgb25IZWFkZXJBY3Rpb24oJGV2ZW50KSB7XG4gICAgdGhpcy5oZWFkZXJBY3Rpb24uZW1pdCgkZXZlbnQpO1xuICB9XG59XG4iXX0=