UNPKG

@raphy/ngx-equalizer

Version:

A library to equalize height and width of elements with Angular4+

31 lines (30 loc) 3.71 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ import { Injectable } from '@angular/core'; export class EqualizerService { /** * @param {?} renderer * @param {?} elementRefs * @param {?=} params * @return {?} */ equalize(renderer, elementRefs, params = { property: 'height', reset: true }) { let /** @type {?} */ maxValue = 0; elementRefs.map((elementRef) => { if (params.reset) { renderer.setStyle(elementRef.nativeElement, params.property, 'initial'); } const /** @type {?} */ value = elementRef.nativeElement['offset' + params.property[0].toUpperCase() + params.property.slice(1)]; maxValue = value > maxValue ? value : maxValue; }); elementRefs.map((elementRef) => { renderer.setStyle(elementRef.nativeElement, params.property, maxValue + 'px'); }); } } EqualizerService.decorators = [ { type: Injectable }, ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXF1YWxpemVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AcmFwaHkvbmd4LWVxdWFsaXplci8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9lcXVhbGl6ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFjLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUtsRSxNQUFNOzs7Ozs7O0lBQ0ssUUFBUSxDQUNYLFFBQW1CLEVBQ25CLFdBQXlCLEVBQ3pCLFNBQXlCLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDO1FBRzFELHFCQUFJLFFBQVEsR0FBVyxDQUFDLENBQUM7UUFFekIsV0FBVyxDQUFDLEdBQUcsQ0FDWCxDQUFDLFVBQXNCLEVBQUUsRUFBRTtZQUN2QixFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDZixRQUFRLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQzthQUMzRTtZQUVELHVCQUFNLEtBQUssR0FBVyxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkgsUUFBUSxHQUFHLEtBQUssR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1NBQ2xELENBQ0osQ0FBQztRQUVGLFdBQVcsQ0FBQyxHQUFHLENBQ1gsQ0FBQyxVQUFzQixFQUFFLEVBQUU7WUFDdkIsUUFBUSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDO1NBQ2pGLENBQ0osQ0FBQzs7OztZQXpCVCxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEVxdWFsaXplUGFyYW1zIH0gZnJvbSAnLi4vZXF1YWxpemUtcGFyYW1zJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVxdWFsaXplclNlcnZpY2Uge1xuICAgIHB1YmxpYyBlcXVhbGl6ZShcbiAgICAgICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgZWxlbWVudFJlZnM6IEVsZW1lbnRSZWZbXSxcbiAgICAgICAgcGFyYW1zOiBFcXVhbGl6ZVBhcmFtcyA9IHtwcm9wZXJ0eTogJ2hlaWdodCcsIHJlc2V0OiB0cnVlfVxuICAgICkge1xuXG4gICAgICAgIGxldCBtYXhWYWx1ZTogbnVtYmVyID0gMDtcblxuICAgICAgICBlbGVtZW50UmVmcy5tYXAoXG4gICAgICAgICAgICAoZWxlbWVudFJlZjogRWxlbWVudFJlZikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChwYXJhbXMucmVzZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBwYXJhbXMucHJvcGVydHksICdpbml0aWFsJyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgdmFsdWU6IG51bWJlciA9IGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudFsnb2Zmc2V0JyArIHBhcmFtcy5wcm9wZXJ0eVswXS50b1VwcGVyQ2FzZSgpICsgcGFyYW1zLnByb3BlcnR5LnNsaWNlKDEpXTtcbiAgICAgICAgICAgICAgICBtYXhWYWx1ZSA9IHZhbHVlID4gbWF4VmFsdWUgPyB2YWx1ZSA6IG1heFZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuXG4gICAgICAgIGVsZW1lbnRSZWZzLm1hcChcbiAgICAgICAgICAgIChlbGVtZW50UmVmOiBFbGVtZW50UmVmKSA9PiB7XG4gICAgICAgICAgICAgICAgcmVuZGVyZXIuc2V0U3R5bGUoZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBwYXJhbXMucHJvcGVydHksIG1heFZhbHVlICsgJ3B4Jyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxufVxuIl19