@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>
83 lines • 5.91 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { Component, HostBinding, Input, Output, EventEmitter } from '@angular/core';
var CalendarDayOverlay = /** @class */ (function () {
function CalendarDayOverlay() {
this.baseClass = true;
this.days = [];
this.daysChange = new EventEmitter();
this.numberOfDays = 31;
}
/**
* @param {?} size
* @param {?=} startAt
* @return {?}
*/
CalendarDayOverlay.prototype.range = /**
* @param {?} size
* @param {?=} startAt
* @return {?}
*/
function (size, startAt) {
if (startAt === void 0) { startAt = 0; }
return tslib_1.__spread(Array(size).keys()).map((/**
* @param {?} i
* @return {?}
*/
function (i) { return i + startAt; }));
};
/**
* @param {?} day
* @return {?}
*/
CalendarDayOverlay.prototype.toggleDay = /**
* @param {?} day
* @return {?}
*/
function (day) {
/** @type {?} */
var indexOfDay = this.days.indexOf(day);
if (indexOfDay < 0) {
this.days.push(day);
}
else {
this.days.splice(indexOfDay, 1);
}
this.days.sort((/**
* @param {?} a
* @param {?} b
* @return {?}
*/
function (a, b) {
return a - b;
}));
this.daysChange.emit(this.days);
};
CalendarDayOverlay.decorators = [
{ type: Component, args: [{
selector: 'suka-calendar-day-overlay',
template: "\n <div\n *ngFor=\"let day of range(numberOfDays,1)\"\n class=\"calendar-day\"\n (click)=\"toggleDay(day)\"\n [ngClass]=\"{\n 'calendar-day--selected': days.indexOf(day) >= 0\n }\"\n >\n <span class=\"calendar-day__number\">\n {{day}}\n </span>\n </div>\n "
}] }
];
CalendarDayOverlay.propDecorators = {
baseClass: [{ type: HostBinding, args: ['class.calendar-day-picker__overlay',] }],
days: [{ type: Input }],
daysChange: [{ type: Output }]
};
return CalendarDayOverlay;
}());
export { CalendarDayOverlay };
if (false) {
/** @type {?} */
CalendarDayOverlay.prototype.baseClass;
/** @type {?} */
CalendarDayOverlay.prototype.days;
/** @type {?} */
CalendarDayOverlay.prototype.daysChange;
/** @type {?} */
CalendarDayOverlay.prototype.numberOfDays;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItZGF5LW92ZXJsYXkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGt1c2hraS9uZy1zdWthLyIsInNvdXJjZXMiOlsibGliL2NhbGVuZGFyLWRheS1waWNrZXIvY2FsZW5kYXItZGF5LW92ZXJsYXkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFNUY7SUFBQTtRQWtCcUQsY0FBUyxHQUFHLElBQUksQ0FBQztRQUMzRCxTQUFJLEdBQWEsRUFBRSxDQUFDO1FBQ25CLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBQ3BELGlCQUFZLEdBQUcsRUFBRSxDQUFDO0lBcUJwQixDQUFDOzs7Ozs7SUFuQkMsa0NBQUs7Ozs7O0lBQUwsVUFBTSxJQUFJLEVBQUUsT0FBVztRQUFYLHdCQUFBLEVBQUEsV0FBVztRQUNyQixPQUFPLGlCQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxHQUFHOzs7O1FBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLEdBQUcsT0FBTyxFQUFYLENBQVcsRUFBQyxDQUFDO0lBQ3ZELENBQUM7Ozs7O0lBRUQsc0NBQVM7Ozs7SUFBVCxVQUFVLEdBQVc7O1lBQ2IsVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztRQUV6QyxJQUFJLFVBQVUsR0FBRyxDQUFDLEVBQUU7WUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDckI7YUFBTTtZQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUNqQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSTs7Ozs7UUFBQyxVQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2xCLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNmLENBQUMsRUFBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7O2dCQXpDRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsUUFBUSxFQUFFLDZUQWFUO2lCQUNGOzs7NEJBRUUsV0FBVyxTQUFDLG9DQUFvQzt1QkFDaEQsS0FBSzs2QkFDTCxNQUFNOztJQXNCVCx5QkFBQztDQUFBLEFBMUNELElBMENDO1NBekJZLGtCQUFrQjs7O0lBQzdCLHVDQUFvRTs7SUFDcEUsa0NBQTZCOztJQUM3Qix3Q0FBb0Q7O0lBQ3BELDBDQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3N1a2EtY2FsZW5kYXItZGF5LW92ZXJsYXknLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgICpuZ0Zvcj1cImxldCBkYXkgb2YgcmFuZ2UobnVtYmVyT2ZEYXlzLDEpXCJcbiAgICAgIGNsYXNzPVwiY2FsZW5kYXItZGF5XCJcbiAgICAgIChjbGljayk9XCJ0b2dnbGVEYXkoZGF5KVwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdjYWxlbmRhci1kYXktLXNlbGVjdGVkJzogZGF5cy5pbmRleE9mKGRheSkgPj0gMFxuICAgICAgfVwiXG4gICAgPlxuICAgICAgPHNwYW4gY2xhc3M9XCJjYWxlbmRhci1kYXlfX251bWJlclwiPlxuICAgICAgICB7e2RheX19XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gIGBcbn0pXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJEYXlPdmVybGF5IHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jYWxlbmRhci1kYXktcGlja2VyX19vdmVybGF5JykgYmFzZUNsYXNzID0gdHJ1ZTtcbiAgQElucHV0KCkgZGF5czogbnVtYmVyW10gPSBbXTtcbiAgQE91dHB1dCgpIGRheXNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcltdPigpO1xuICBudW1iZXJPZkRheXMgPSAzMTtcblxuICByYW5nZShzaXplLCBzdGFydEF0ID0gMCkge1xuICAgIHJldHVybiBbLi4uQXJyYXkoc2l6ZSkua2V5cygpXS5tYXAoaSA9PiBpICsgc3RhcnRBdCk7XG4gIH1cblxuICB0b2dnbGVEYXkoZGF5OiBudW1iZXIpIHtcbiAgICBjb25zdCBpbmRleE9mRGF5ID0gdGhpcy5kYXlzLmluZGV4T2YoZGF5KTtcblxuICAgIGlmIChpbmRleE9mRGF5IDwgMCkge1xuICAgICAgdGhpcy5kYXlzLnB1c2goZGF5KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kYXlzLnNwbGljZShpbmRleE9mRGF5LCAxKTtcbiAgICB9XG5cbiAgICB0aGlzLmRheXMuc29ydCgoYSwgYikgPT4ge1xuICAgICAgcmV0dXJuIGEgLSBiO1xuICAgIH0pO1xuXG4gICAgdGhpcy5kYXlzQ2hhbmdlLmVtaXQodGhpcy5kYXlzKTtcbiAgfVxufVxuIl19