@addapptables/notifier
Version:
Material notifier library for angular
43 lines • 4.16 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Injectable } from '@angular/core';
import { AbstractStrategy } from './abstract-strategy';
export class TopLeftStrategy extends AbstractStrategy {
/**
* @protected
* @param {?} notifierRef
* @return {?}
*/
getStyleNewNotifier(notifierRef) {
notifierRef.component._state = 'slideInDown';
return { top: `20px`, left: '0px' };
}
/**
* @protected
* @param {?} divNotifier
* @param {?} clientHeight
* @return {?}
*/
getStyleNotifierPosition(divNotifier, clientHeight) {
/** @type {?} */
const lastValueBottom = Number(divNotifier.style.top.replace('px', ''));
return { top: `${clientHeight + lastValueBottom + this.margin}px`, left: '0px' };
}
/**
* @protected
* @param {?} elementChange
* @param {?} clientHeightElementDelete
* @return {?}
*/
getStyleDeleteNotifier(elementChange, clientHeightElementDelete) {
/** @type {?} */
const valueBottomChange = Number(elementChange.style.top.replace('px', ''));
return { top: `${valueBottomChange - clientHeightElementDelete - this.margin}px`, left: '0px' };
}
}
TopLeftStrategy.decorators = [
{ type: Injectable }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wLWxlZnQuc3RyYXRlZ3kuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWRkYXBwdGFibGVzL25vdGlmaWVyLyIsInNvdXJjZXMiOlsibGliL3N0cmF0ZWdpZXMvdG9wLWxlZnQuc3RyYXRlZ3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFJdkQsTUFBTSxPQUFPLGVBQWdCLFNBQVEsZ0JBQWdCOzs7Ozs7SUFFdkMsbUJBQW1CLENBQUMsV0FBd0I7UUFDbEQsV0FBVyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDO1FBQzdDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUN4QyxDQUFDOzs7Ozs7O0lBRVMsd0JBQXdCLENBQUMsV0FBMkIsRUFBRSxZQUFvQjs7Y0FDMUUsZUFBZSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZFLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxZQUFZLEdBQUcsZUFBZSxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDckYsQ0FBQzs7Ozs7OztJQUVTLHNCQUFzQixDQUFDLGFBQTZCLEVBQUUseUJBQWlDOztjQUN2RixpQkFBaUIsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUMzRSxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsaUJBQWlCLEdBQUcseUJBQXlCLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUNwRyxDQUFDOzs7WUFoQkosVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RTdHJhdGVneSB9IGZyb20gJy4vYWJzdHJhY3Qtc3RyYXRlZ3knO1xyXG5pbXBvcnQgeyBOb3RpZmllclJlZiB9IGZyb20gJy4uL25vdGlmaWVyLXJlZic7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUb3BMZWZ0U3RyYXRlZ3kgZXh0ZW5kcyBBYnN0cmFjdFN0cmF0ZWd5IHtcclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0U3R5bGVOZXdOb3RpZmllcihub3RpZmllclJlZjogTm90aWZpZXJSZWYpIHtcclxuICAgICAgICBub3RpZmllclJlZi5jb21wb25lbnQuX3N0YXRlID0gJ3NsaWRlSW5Eb3duJztcclxuICAgICAgICByZXR1cm4geyB0b3A6IGAyMHB4YCwgbGVmdDogJzBweCcgfTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0U3R5bGVOb3RpZmllclBvc2l0aW9uKGRpdk5vdGlmaWVyOiBIVE1MRGl2RWxlbWVudCwgY2xpZW50SGVpZ2h0OiBudW1iZXIpIHtcclxuICAgICAgICBjb25zdCBsYXN0VmFsdWVCb3R0b20gPSBOdW1iZXIoZGl2Tm90aWZpZXIuc3R5bGUudG9wLnJlcGxhY2UoJ3B4JywgJycpKTtcclxuICAgICAgICByZXR1cm4geyB0b3A6IGAke2NsaWVudEhlaWdodCArIGxhc3RWYWx1ZUJvdHRvbSArIHRoaXMubWFyZ2lufXB4YCwgbGVmdDogJzBweCcgfTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0U3R5bGVEZWxldGVOb3RpZmllcihlbGVtZW50Q2hhbmdlOiBIVE1MRGl2RWxlbWVudCwgY2xpZW50SGVpZ2h0RWxlbWVudERlbGV0ZTogbnVtYmVyKSB7XHJcbiAgICAgICAgY29uc3QgdmFsdWVCb3R0b21DaGFuZ2UgPSBOdW1iZXIoZWxlbWVudENoYW5nZS5zdHlsZS50b3AucmVwbGFjZSgncHgnLCAnJykpO1xyXG4gICAgICAgIHJldHVybiB7IHRvcDogYCR7dmFsdWVCb3R0b21DaGFuZ2UgLSBjbGllbnRIZWlnaHRFbGVtZW50RGVsZXRlIC0gdGhpcy5tYXJnaW59cHhgLCBsZWZ0OiAnMHB4JyB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==