UNPKG

ngx-daterange

Version:
16 lines (14 loc) 40.8 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("moment"),require("moment-range")):"function"==typeof define&&define.amd?define("ngx-daterange",["exports","@angular/core","@angular/common","@angular/forms","moment","moment-range"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["ngx-daterange"]={},e.ng.core,e.ng.common,e.ng.forms,e.momentNs,e.momentRange)}(this,(function(e,t,n,a,i,o){"use strict";function r(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var s=r(i); /*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted. THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ***************************************************************************** */Object.create;function d(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var a,i,o=n.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(a=o.next()).done;)r.push(a.value)}catch(e){i={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return r}function l(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(d(arguments[t]));return e}Object.create;var c=s,p=o.extendMoment(c).range,g=function(){function e(){this.singleCalendar=!1,this.dateChanged=new t.EventEmitter,this.monthChanged=new t.EventEmitter,this.yearChanged=new t.EventEmitter}return Object.defineProperty(e.prototype,"monthText",{get:function(){return c.monthsShort()[this.month]},enumerable:!1,configurable:!0}),e.prototype.ngOnChanges=function(e){var t;if(!this.isLeft){var n=null===(t=null==e?void 0:e.selectedFromDate)||void 0===t?void 0:t.currentValue;if(n){c.isMoment(n)||(n=c(n));var a=n.month(),i=n.year();(i>this.year||i===this.year&&a>this.month)&&(this.month=a,this.year=i)}}this.createCalendarGridData()},e.prototype.getWeekNumbers=function(e){for(var t=[],n=Array.from(e.by("weeks")),a=0;a<n.length;a++){var i=n[a];if(!(a<6))break;t.push(i.week())}return t},e.prototype.getWeeksRange=function(e){for(var t=[],n=0;n<e.length;n++){var a=e[n],i=c([this.year,this.month]).week(a).day(0),o=c([this.year,this.month]).week(a).day(6);a<e[0]&&(i=c([this.year+1,0]).week(a).day(0),o=c([this.year+1,0]).week(a).day(6)),t.push(p(i,o))}return t},e.prototype.createCalendarGridData=function(){var e=this,t=c([this.year,this.month]).startOf("month"),n=c([this.year,this.month]).endOf("month").add(1,"week"),a=p(t,n),i=this.getWeeksRange(this.getWeekNumbers(a)),o=[];null==i||i.map((function(t){var n=[];Array.from(t.by("days")).forEach((function(t){t.isSame(e.minDate,"date")?t=e.minDate:t.isSame(e.maxDate,"date")&&(t=e.maxDate),n.push(t)})),o.push(n)})),this.weekList=o},e.prototype.isDisabled=function(e){return e.isBefore(this.minDate)||e.isAfter(this.maxDate)||e.isBefore(this.selectedFromDate)&&!this.isLeft},e.prototype.isDateAvailable=function(e){return this.isLeft?e.isSameOrBefore(this.selectedToDate,"date")&&!e.isSameOrBefore(this.minDate,"date"):e.isSameOrAfter(this.selectedFromDate,"date")&&!e.isSameOrAfter(this.maxDate,"date")},e.prototype.isSelectedDate=function(e){var t=this.isLeft?this.selectedFromDate:this.selectedToDate;return t&&e.isSame(t,"date")},e.prototype.isDateInRange=function(e){return!(!this.selectedFromDate||!this.selectedToDate)&&p(this.selectedFromDate,this.selectedToDate).contains(e)},e.prototype.isDifferentMonth=function(e){return e.get("month")!==this.month},e.prototype.dateSelected=function(e,t){e.target.classList.contains("disabled")||this.dateChanged.emit({day:t.day,isLeft:this.isLeft}),e.stopPropagation()},e.prototype.monthSelected=function(e,t){this.monthChanged.emit({value:t.value,isLeft:this.isLeft}),e.stopPropagation()},e.prototype.yearSelected=function(e,t){this.yearChanged.emit({value:t.value,isLeft:this.isLeft}),e.stopPropagation()},e}();g.decorators=[{type:t.Component,args:[{changeDetection:t.ChangeDetectionStrategy.OnPush,encapsulation:t.ViewEncapsulation.None,selector:"calendar",template:'<div class="row">\n <div class="col text-center">\n <div class="d-flex align-items-center calendar-pagination {{ icons === \'material\' ? \'material\' : \'\' }}">\n <div>\n <button type="button" class="btn btn-link btn-previous-year" (click)="yearSelected($event, { value: -1 })">\n <i *ngIf="icons === \'material\'" class="material-icons">first_page</i>\n <i *ngIf="icons === \'font-awesome\'" class="fas fa-angle-double-left"></i>\n <img *ngIf="icons === \'default\'" src="data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA0MDcuNDM2IDQwNy40MzYiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQwNy40MzYgNDA3LjQzNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiPgo8Zz4KCTxwb2x5Z29uIHBvaW50cz0iMjY2LjQ1MiwyMS4xNzggMjQ1LjIwNCwwIDQyLjE0OSwyMDMuNzE4IDI0NS4yMDQsNDA3LjQzNiAyNjYuNDUyLDM4Ni4yNTggODQuNTA3LDIwMy43MTggICIgZmlsbD0iIzAwMDAwMCIvPgoJPHBvbHlnb24gcG9pbnRzPSIzNjUuMjg2LDIxLjE3OCAzNDQuMDM4LDAgMTQwLjk4MywyMDMuNzE4IDM0NC4wMzgsNDA3LjQzNiAzNjUuMjg2LDM4Ni4yNTggMTgzLjM0MSwyMDMuNzE4ICAiIGZpbGw9IiMwMDAwMDAiLz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K" />\n </button>\n </div>\n <div>\n <button type="button" class="btn btn-link btn-previous-month" (click)="monthSelected($event, { value: -1 })">\n <i *ngIf="icons === \'material\'" class="material-icons">chevron_left</i>\n <i *ngIf="icons === \'font-awesome\'" class="fas fa-angle-left"></i>\n <img *ngIf="icons === \'default\'" src="data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjE2cHgiIGhlaWdodD0iMTZweCIgdmlld0JveD0iMCAwIDQ0NC41MzEgNDQ0LjUzMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDQ0LjUzMSA0NDQuNTMxOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxnPgoJPHBhdGggZD0iTTIxMy4xMywyMjIuNDA5TDM1MS44OCw4My42NTNjNy4wNS03LjA0MywxMC41NjctMTUuNjU3LDEwLjU2Ny0yNS44NDFjMC0xMC4xODMtMy41MTgtMTguNzkzLTEwLjU2Ny0yNS44MzUgICBsLTIxLjQwOS0yMS40MTZDMzIzLjQzMiwzLjUyMSwzMTQuODE3LDAsMzA0LjYzNywwcy0xOC43OTEsMy41MjEtMjUuODQxLDEwLjU2MUw5Mi42NDksMTk2LjQyNSAgIGMtNy4wNDQsNy4wNDMtMTAuNTY2LDE1LjY1Ni0xMC41NjYsMjUuODQxczMuNTIxLDE4Ljc5MSwxMC41NjYsMjUuODM3bDE4Ni4xNDYsMTg1Ljg2NGM3LjA1LDcuMDQzLDE1LjY2LDEwLjU2NCwyNS44NDEsMTAuNTY0ICAgczE4Ljc5NS0zLjUyMSwyNS44MzQtMTAuNTY0bDIxLjQwOS0yMS40MTJjNy4wNS03LjAzOSwxMC41NjctMTUuNjA0LDEwLjU2Ny0yNS42OTdjMC0xMC4wODUtMy41MTgtMTguNzQ2LTEwLjU2Ny0yNS45NzggICBMMjEzLjEzLDIyMi40MDl6IiBmaWxsPSIjMDAwMDAwIi8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==" />\n </button>\n </div>\n <div class="flex-grow-1 month-year">\n {{ monthText }} {{ year }}\n </div>\n <div>\n <button type="button" class="btn btn-link btn-next-month" (click)="monthSelected($event, { value: 1 })">\n <i *ngIf="icons === \'material\'" class="material-icons">chevron_right</i>\n <i *ngIf="icons === \'font-awesome\'" class="fas fa-angle-right"></i>\n <img *ngIf="icons === \'default\'" src="data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjE2cHgiIGhlaWdodD0iMTZweCIgdmlld0JveD0iMCAwIDQ0NC44MTkgNDQ0LjgxOSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDQ0LjgxOSA0NDQuODE5OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxnPgoJPHBhdGggZD0iTTM1Mi4wMjUsMTk2LjcxMkwxNjUuODg0LDEwLjg0OEMxNTkuMDI5LDMuNjE1LDE1MC40NjksMCwxNDAuMTg3LDBjLTEwLjI4MiwwLTE4Ljg0MiwzLjYxOS0yNS42OTcsMTAuODQ4TDkyLjc5MiwzMi4yNjQgICBjLTcuMDQ0LDcuMDQzLTEwLjU2NiwxNS42MDQtMTAuNTY2LDI1LjY5MmMwLDkuODk3LDMuNTIxLDE4LjU2LDEwLjU2NiwyNS45ODFsMTM4Ljc1MywxMzguNDczTDkyLjc4NiwzNjEuMTY4ICAgYy03LjA0Miw3LjA0My0xMC41NjQsMTUuNjA0LTEwLjU2NCwyNS42OTNjMCw5Ljg5NiwzLjUyMSwxOC41NjIsMTAuNTY0LDI1Ljk4bDIxLjcsMjEuNDEzICAgYzcuMDQzLDcuMDQzLDE1LjYxMiwxMC41NjQsMjUuNjk3LDEwLjU2NGMxMC4wODksMCwxOC42NTYtMy41MjEsMjUuNjk3LTEwLjU2NGwxODYuMTQ1LTE4NS44NjQgICBjNy4wNDYtNy40MjMsMTAuNTcxLTE2LjA4NCwxMC41NzEtMjUuOTgxQzM2Mi41OTcsMjEyLjMyMSwzNTkuMDcxLDIwMy43NTUsMzUyLjAyNSwxOTYuNzEyeiIgZmlsbD0iIzAwMDAwMCIvPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+Cjwvc3ZnPgo=" />\n </button>\n </div>\n <div>\n <button type="button" class="btn btn-link btn-next-year" (click)="yearSelected($event, { value: 1 })">\n <i *ngIf="icons === \'material\'" class="material-icons">last_page</i>\n <i *ngIf="icons === \'font-awesome\'" class="fas fa-angle-double-right"></i>\n <img *ngIf="icons === \'default\'" src="data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeD0iMHB4IiB5PSIwcHgiIHZpZXdCb3g9IjAgMCA0MDcuNDM2IDQwNy40MzYiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQwNy40MzYgNDA3LjQzNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiPgo8Zz4KCTxwb2x5Z29uIHBvaW50cz0iMTYyLjIzMSwwIDE0MC45ODMsMjEuMTc4IDMyMi45MjksMjAzLjcxOCAxNDAuOTgzLDM4Ni4yNTggMTYyLjIzMSw0MDcuNDM2IDM2NS4yODYsMjAzLjcxOCAgIiBmaWxsPSIjMDAwMDAwIi8+Cgk8cG9seWdvbiBwb2ludHM9IjYzLjM5NywwIDQyLjE0OSwyMS4xNzggMjI0LjA5NSwyMDMuNzE4IDQyLjE0OSwzODYuMjU4IDYzLjM5Nyw0MDcuNDM2IDI2Ni40NTIsMjAzLjcxOCAgIiBmaWxsPSIjMDAwMDAwIi8+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPGc+CjwvZz4KPC9zdmc+Cg==" />\n </button>\n </div>\n </div>\n </div>\n</div>\n\n<div class="row">\n <div class="col">\n <table class="table table-borderless mb-0 w-100">\n <thead>\n <tr class="week-days">\n <th>Sun</th>\n <th>Mon</th>\n <th>Tue</th>\n <th>Wed</th>\n <th>Thu</th>\n <th>Fri</th>\n <th>Sat</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor="let week of weekList; let i = index">\n <td *ngFor="let day of weekList[i]" (click)="dateSelected($event, { day: day })" [attr.data-day]="day | date:\'MM-dd-yyyy\'" [ngClass]="{ \'selected\': isSelectedDate(day), \'in-selected-range\': isDateInRange(day), \'disabled\': isDisabled(day), \'different-month\': isDifferentMonth(day) }">\n {{ day.format(\'D\') }}\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n</div>\n',styles:[".calendar.calendar-single .table td.in-selected-range{background-color:transparent}.calendar .calendar-pagination{font-size:16px;margin:.5rem -15px 0}.calendar .calendar-pagination .btn,.calendar .calendar-pagination .btn-link{background-color:transparent;min-width:auto;width:auto}.calendar .calendar-pagination.material .btn.btn-previous-year{padding-right:3px}.calendar .calendar-pagination.material .btn.btn-previous-month{padding-left:0}.calendar .calendar-pagination.material .btn.btn-next-month{padding-right:0}.calendar .calendar-pagination.material .btn.btn-next-year{padding-left:3px}.calendar .calendar-pagination .month-year{font-weight:600}.calendar .week-days{text-transform:uppercase}.calendar .table td,.calendar .table th{border-radius:0;color:#333;font-size:12px;height:36px;line-height:1;padding:0;text-align:center;vertical-align:middle}.calendar .table th{font-weight:400}.calendar .table td{border-radius:5px;cursor:pointer;font-weight:900;max-width:32px;width:32px}.calendar .table td:not(.disabled):not(.selected):hover{background-color:#eee;color:#333}.calendar .table td.selected{color:#fff;font-size:12px}.calendar .table td.selected,.calendar .table td.selected.in-selected-range{background-color:#003d79;border-radius:5px}.calendar .table td.selected.different-month{color:#fff}.calendar .table td.selected:hover{background-color:#003d79}.calendar .table td.in-selected-range{background-color:#dfefff;border-radius:0;font-size:12px}.calendar .table td.disabled{background-color:transparent;color:#666;cursor:not-allowed;font-weight:400}.calendar .table td.different-month{color:#888;font-weight:500}.calendar .table td.different-month.disabled{color:#ccc}"]}]}],g.propDecorators={month:[{type:t.Input}],year:[{type:t.Input}],selectedFromDate:[{type:t.Input}],selectedToDate:[{type:t.Input}],isLeft:[{type:t.Input}],format:[{type:t.Input}],minDate:[{type:t.Input}],maxDate:[{type:t.Input}],singleCalendar:[{type:t.Input}],icons:[{type:t.Input}],dateChanged:[{type:t.Output}],monthChanged:[{type:t.Output}],yearChanged:[{type:t.Output}]};var m="YYYY-MM-DD",u={autoApply:!0,clickOutsideAllowed:!0,disabled:!1,disableInputDisplay:!1,icons:"default",format:m,labelText:"Date Range",maxDate:null,minDate:null,position:"left",preDefinedRanges:[],showResetButton:!0,singleCalendar:!1},f=s,h=0,y=function(){function e(){this.options=u,this.controlName="dateRange",this.instanceId=null,this.fromDate=null,this.toDate=null,this.datepickerReset=new t.EventEmitter,this.rangeSelected=new t.EventEmitter,this.isMobile=!1,this.range="",this.showCalendars=!1,this.displayStyle=!1,this.instanceId||(this.instanceId="dateRangePicker-"+h++)}return Object.defineProperty(e.prototype,"enableApplyButton",{get:function(){var e=!this.options.autoApply&&null!==this.fromDate;return this.options.singleCalendar?e:e&&null!==this.toDate},enumerable:!1,configurable:!0}),e.prototype.handleClick=function(e){var t,n=e.target;if(!this.options.clickOutsideAllowed){var a=[];try{a=e.composedPath().map((function(e){return e.className}))||[""]}catch(n){a=null===(t=e.path)||void 0===t?void 0:t.map((function(e){return e.className}))}var i=!0===this.options.modal?"dateRangePickerModal":"dateRangePicker";(null==a?void 0:a.some((function(e){return"string"==typeof e&&(e&&e.includes(i))})))||this.toggleCalendarVisibility(!1)}n.id===this.instanceId&&this.toggleCalendarVisibility(!this.showCalendars)},e.prototype.ngOnInit=function(){var e=this;navigator&&(navigator.userAgent.match(/Android/i)||navigator.userAgent.match(/webOS/i)||navigator.userAgent.match(/iPhone/i)||navigator.userAgent.match(/iPod/i)||navigator.userAgent.match(/BlackBerry/i)||navigator.userAgent.match(/Windows Phone/i))&&(this.isMobile=!0),this.validateOptionDates(),this.validateInputDates(),this.options.preDefinedRanges&&this.options.preDefinedRanges.length>0&&(this.defaultRanges=this.validateAndAssignPredefinedRanges(this.options.preDefinedRanges));var t=Object.keys(this.options);Object.keys(u).forEach((function(n){t.includes(n)||(e.options[n]=u[n])})),this.updateCalendar(),this.parentFormGroup||(this.parentFormGroup=new a.FormGroup({}));var n=this.formatRangeAsString(),i=new a.FormControl({value:n,disabled:this.options.disableInputDisplay},this.options.validators);this.options.disabled&&i.disable(),this.parentFormGroup.addControl(this.controlName,i),this.setRange()},e.prototype.validateInputDates=function(){if("string"==typeof this.fromDate&&(this.fromDate=f(this.fromDate)),"string"==typeof this.toDate&&(this.toDate=f(this.toDate)),this.fromDate&&this.options.minDate&&this.fromDate.isBefore(this.options.minDate,"date"))throw new RangeError("@Input fromDate is before the specified minDate in options");if(this.toDate&&this.options.maxDate&&this.toDate.isAfter(this.options.maxDate,"date"))throw new RangeError("@Input toDate is after the specified maxDate in options")},e.prototype.validateOptionDates=function(){if(this.options&&this.options.minDate&&this.options.maxDate){if(this.options.minDate.isAfter(this.options.maxDate,"date"))throw new RangeError("minDate specified in options is after the maxDate");if(this.options.maxDate.isBefore(this.options.minDate,"date"))throw new RangeError("maxDate specified in options is before the minDate")}},e.prototype.checkChrome=function(){return window.chrome?"is-chrome":""},e.prototype.toggleCalendarVisibility=function(e){!0===this.options.modal?this.displayStyle=null!==e?!1!==e:!1!==this.showCalendars:this.showCalendars=null!==e?e:!this.showCalendars},e.prototype.setFromToMonthYear=function(e,t){var n=e||this.fromDate||f(),a=t||this.toDate||f();n instanceof f||(n=f(n,m)),a instanceof f||(a=f(a,m)),this.fromMonth=n.get("month"),this.fromYear=n.get("year"),this.toMonth=a.get("month"),this.toYear=a.get("year")},e.prototype.updateCalendar=function(){this.setFromToMonthYear(),this.setRange()},e.prototype.dateChanged=function(e){var t=e.day;e.isLeft?(this.fromDate=t,this.fromDate.isAfter(this.toDate,"date")&&(this.toDate=this.fromDate.clone())):(this.toDate=t,this.toDate.isBefore(this.fromDate,"date")&&(this.fromDate=this.toDate.clone())),this.setFromToMonthYear(this.fromDate,this.toDate),this.options.autoApply&&(this.toDate||this.options.singleCalendar)&&(this.toggleCalendarVisibility(!1),this.setRange(),this.emitRangeSelected())},e.prototype.emitRangeSelected=function(e){e||(e=this.options.singleCalendar?{start:this.fromDate}:{start:this.fromDate,end:this.toDate}),this.rangeSelected.emit(e)},e.prototype.getMoment=function(e){return f(e,this.options.format)},e.prototype.formatRangeAsString=function(){var e="";return this.options.singleCalendar&&this.fromDate?("string"==typeof this.fromDate&&(this.fromDate=f(this.fromDate)),e=this.fromDate.format(this.options.format)):!this.options.singleCalendar&&this.fromDate&&this.toDate&&("string"==typeof this.fromDate&&(this.fromDate=f(this.fromDate)),"string"==typeof this.toDate&&(this.toDate=f(this.toDate)),e=this.fromDate.format(this.options.format)+" - "+this.toDate.format(this.options.format)),e},e.prototype.setRange=function(){var e;if(this.range=this.formatRangeAsString(),this.parentFormGroup){var t=null===(e=this.parentFormGroup)||void 0===e?void 0:e.get(this.controlName);t&&(t.setValue(this.range),t.updateValueAndValidity())}},e.prototype.setDateFromInput=function(e){var t=e.isLeft,n=e.event.target;try{if(n.value){var a=this.getMoment(n.value);a.isBefore(this.options.minDate)||a.isAfter(this.options.maxDate)?(this.fromDate=null,this.toDate=null,n.value="",n.focus()):(t&&!this.fromDate&&(this.fromDate=a),t||this.toDate||(this.toDate=a),this.dateChanged({day:a,isLeft:t}),this.fromDate&&this.toDate&&(this.setFromToMonthYear(this.fromDate,this.toDate),this.options.autoApply||this.emitRangeSelected()))}}catch(e){console.error(e)}},e.prototype.monthChanged=function(e){var t;e.isLeft?(t=f([this.fromYear,this.fromMonth]).add(e.value,"month"),this.fromMonth=null==t?void 0:t.get("month"),this.fromYear=null==t?void 0:t.get("year")):(t=f([this.toYear,this.toMonth]).add(e.value,"month"),this.toMonth=null==t?void 0:t.get("month"),this.toYear=null==t?void 0:t.get("year"))},e.prototype.yearChanged=function(e){var t;e.isLeft?(t=f([this.fromYear,this.fromMonth]).add(e.value,"year"),this.fromMonth=null==t?void 0:t.get("month"),this.fromYear=null==t?void 0:t.get("year")):(t=f([this.toYear,this.toMonth]).add(e.value,"year"),this.toMonth=null==t?void 0:t.get("month"),this.toYear=null==t?void 0:t.get("year"))},e.prototype.close=function(e){this.toggleCalendarVisibility(!1),e.stopPropagation()},e.prototype.reset=function(e){this.fromDate=null,this.toDate=null,this.setRange(),this.datepickerReset.emit(),e.stopPropagation()},e.prototype.apply=function(e){this.toggleCalendarVisibility(!1),this.setRange(),this.emitRangeSelected(),e.stopPropagation()},e.prototype.applyPredefinedRange=function(e){this.setFromToMonthYear(e.definedDateRange.value.start,e.definedDateRange.value.end),this.fromDate=e.definedDateRange.value.start,this.toDate=e.definedDateRange.value.end,this.options.autoApply&&this.apply(e.event)},e.prototype.validateAndAssignPredefinedRanges=function(e){var t=this;return e.filter((function(e){if(e.value.start.isAfter(e.value.end,"date"))throw new RangeError('Pre-defined range "'+e.name+'" start date cannot be after the end date for the range.');if(t.options.minDate&&e.value.start.isBefore(t.options.minDate))throw new RangeError('Pre-defined range "'+e.name+'" start date is before the specified minDate in your options.');if(t.options.maxDate&&e.value.end.isAfter(t.options.maxDate))throw new RangeError('Pre-defined range "'+e.name+'" end date is after the specified maxDate in your options.');return!0}))},e}();y.decorators=[{type:t.Component,args:[{encapsulation:t.ViewEncapsulation.Emulated,selector:"date-range-picker",template:'<div class="dateRangePicker-wrapper" *ngIf="parentFormGroup">\n <div #content>\n <ng-content></ng-content>\n </div>\n <div class="form-group" [formGroup]="parentFormGroup">\n <ng-container *ngIf="content.childNodes.length === 0">\n <label [attr.for]="instanceId">{{ options.labelText }}</label>\n <input [attr.id]="instanceId" class="form-control" type="text" [formControlName]="controlName">\n </ng-container>\n\n <div class="modal" tabindex="-1" role="dialog" [ngClass]="{ \'modal-display\': displayStyle}">\n <div class="modal-dialog modal-dialog-centered" role="document">\n <div class="modal-content">\n <div class="modal-body">\n <div [ngClass]="{\'dateRangePickerModal\': true, \'dateRangePicker-single\': options.singleCalendar, \'is-chrome\': checkChrome(), \'mobile\': isMobile }">\n <div class="container-fluid">\n <div class="row">\n <div class="col">\n \n \x3c!-- Manual Inputs --\x3e\n <manual-inputs [options]="options" [fromDate]="fromDate" [toDate]="toDate" [isMobile]="isMobile" (dateFromInput)="setDateFromInput($event)"></manual-inputs>\n \n \x3c!-- Calendars --\x3e\n <div class="row row-calendars">\n <div [ngClass]="{ \'col-12\': true, \'col-sm-6\': !isMobile && !options.singleCalendar }">\n <calendar [ngClass]="{ \'calendar\': true, \'calendar-single\': options.singleCalendar }" [isLeft]="true" [month]="fromMonth" [year]="fromYear" (monthChanged)=monthChanged($event) (yearChanged)="yearChanged($event)" (dateChanged)="dateChanged($event)" [format]="options.format" [selectedFromDate]="fromDate" [selectedToDate]="toDate" [minDate]="options.minDate" [maxDate]="options.maxDate" [singleCalendar]="options.singleCalendar" [icons]="options.icons"></calendar>\n </div>\n \n <div [ngClass]="{ \'col-12\': true, \'col-sm-6\': !isMobile, \'col__mobile\': isMobile }" *ngIf="!options.singleCalendar">\n <calendar class="calendar" [month]="toMonth" [year]="toYear" [format]="options.format" (dateChanged)="dateChanged($event)" (monthChanged)="monthChanged($event)" (yearChanged)="yearChanged($event)" [selectedFromDate]="fromDate" [selectedToDate]="toDate" [minDate]="options.minDate" [maxDate]="options.maxDate" [icons]="options.icons"></calendar>\n </div>\n </div>\n </div>\n </div>\n \n \x3c!-- Pre-Defined Date Ranges --\x3e\n <predefined-date-ranges [options]="options" [range]="range" [enableApplyButton]="enableApplyButton" (closeEvent)="close($event)" (resetEvent)="reset($event)" (applyEvent)="apply($event)" (predefinedRange)="applyPredefinedRange($event)"></predefined-date-ranges>\n \n </div>\n </div>\n </div>\n <div class="modal-footer">\n <button type="button" class="btn btn-outline-secondary btn-sm" (click)="close($event)">Close</button>\n <button type="button" class="btn btn-outline-secondary btn-sm ml-3" (click)="reset($event)" *ngIf="range && options.showResetButton">Reset</button>\n <button type="button" class="btn btn-primary btn-sm ml-3" [disabled]="!enableApplyButton" (click)="apply($event)" *ngIf="!options.autoApply">Apply</button>\n </div>\n </div>\n </div>\n </div>\n\n \x3c!-- Desktop Browsers --\x3e\n <div [ngClass]="{\'dateRangePicker\': true, \'invisible\': !showCalendars, \'dateRangePicker-single\': options.singleCalendar, \'is-chrome\': checkChrome(), \'open-left\': options.position === \'left\', \'open-right\': options.position === \'right\', \'mobile\': isMobile }">\n <div class="container-fluid">\n <div class="row">\n <div class="col">\n\n \x3c!-- Manual Inputs --\x3e\n <manual-inputs [options]="options" [fromDate]="fromDate" [toDate]="toDate" [isMobile]="isMobile" (dateFromInput)="setDateFromInput($event)"></manual-inputs>\n\n \x3c!-- Calendars --\x3e\n <div class="row row-calendars">\n <div [ngClass]="{ \'col-12\': true, \'col-sm-6\': !isMobile && !options.singleCalendar }">\n <calendar [ngClass]="{ \'calendar\': true, \'calendar-single\': options.singleCalendar }" [isLeft]="true" [month]="fromMonth" [year]="fromYear" (monthChanged)=monthChanged($event) (yearChanged)="yearChanged($event)" (dateChanged)="dateChanged($event)" [format]="options.format" [selectedFromDate]="fromDate" [selectedToDate]="toDate" [minDate]="options.minDate" [maxDate]="options.maxDate" [singleCalendar]="options.singleCalendar" [icons]="options.icons"></calendar>\n </div>\n\n <div [ngClass]="{ \'col-12\': true, \'col-sm-6\': !isMobile, \'col__mobile\': isMobile }" *ngIf="!options.singleCalendar">\n <calendar class="calendar" [month]="toMonth" [year]="toYear" [format]="options.format" (dateChanged)="dateChanged($event)" (monthChanged)="monthChanged($event)" (yearChanged)="yearChanged($event)" [selectedFromDate]="fromDate" [selectedToDate]="toDate" [minDate]="options.minDate" [maxDate]="options.maxDate" [icons]="options.icons"></calendar>\n </div>\n </div>\n </div>\n </div>\n\n \x3c!-- Pre-Defined Date Ranges --\x3e\n <predefined-date-ranges [options]="options" [range]="range" [enableApplyButton]="enableApplyButton" (closeEvent)="close($event)" (resetEvent)="reset($event)" (applyEvent)="apply($event)"></predefined-date-ranges>\n\n </div>\n </div>\n\n </div>\n</div>\n',styles:['.dateRangePicker-wrapper{border:none;position:relative}.dateRangePicker-wrapper input.form-control[disabled]{background-color:#fff}.dateRangePicker-wrapper .modal-body{padding:0!important}.dateRangePicker-wrapper .modal{-webkit-backdrop-filter:brightness(50%);backdrop-filter:brightness(50%)}.dateRangePicker-wrapper .modal-display{display:flex}.dateRangePicker-wrapper .modal-display .modal-dialog{box-shadow:none;display:flex}.dateRangePicker-wrapper .modal-content{border:0;border-radius:8px;box-shadow:0 0 10px 0 rgba(129,139,144,.5);display:flex;width:602px}.dateRangePicker-wrapper .modal-content .modal-footer .btn{width:auto}.dateRangePicker-wrapper .dateRangePickerModal{border-top-left-radius:5px;border-top-right-radius:5px;font-family:Roboto,Helvetica,Arial,sans-serif;overflow:visible;z-index:3000}@media screen and (min-width:576px){.dateRangePicker-wrapper .dateRangePickerModal{min-width:600px}}.dateRangePicker-wrapper .dateRangePickerModal.dateRangePicker-single,.dateRangePicker-wrapper .dateRangePickerModal.mobile{min-width:300px}.dateRangePicker-wrapper .dateRangePickerModal.dateRangePicker-single:after,.dateRangePicker-wrapper .dateRangePickerModal.dateRangePicker-single:before,.dateRangePicker-wrapper .dateRangePickerModal.mobile:after,.dateRangePicker-wrapper .dateRangePickerModal.mobile:before{border-bottom-color:#fff}.dateRangePicker-wrapper .dateRangePickerModal.is-chrome .form-inputs .input-with-icon span{position:relative;top:1px}.dateRangePicker-wrapper .dateRangePickerModal .btn,.dateRangePicker-wrapper .dateRangePickerModal .btn.btn-link{min-width:60px;width:60px}.dateRangePicker-wrapper .dateRangePickerModal .form-inputs{background-color:#6e777c;border-top-left-radius:5px;border-top-right-radius:5px;color:#fff;font-size:16px}.dateRangePicker-wrapper .dateRangePickerModal .form-inputs>.col{min-width:270px;padding:.5rem 15px}.dateRangePicker-wrapper .dateRangePickerModal .form-inputs .input-with-icon{align-content:flex-start;align-items:center!important;display:flex}.dateRangePicker-wrapper .dateRangePickerModal .form-inputs .input-with-icon i{color:#fff;margin-right:.5rem}.dateRangePicker-wrapper .dateRangePickerModal .form-inputs .input-with-icon i.material-icons{top:0}.dateRangePicker-wrapper .dateRangePickerModal .form-inputs .input-with-icon span{line-height:1}.dateRangePicker-wrapper .dateRangePickerModal .form-inputs .form-control{background:none;border:0;color:#fff;display:inline-block;padding:0;width:150px}.dateRangePicker-wrapper .dateRangePickerModal .form-inputs .form-control::-moz-placeholder{color:#fff}.dateRangePicker-wrapper .dateRangePickerModal .form-inputs .form-control::placeholder{color:#fff}.dateRangePicker-wrapper .dateRangePickerModal .row-1s .col__mobile{border-top:1px dotted #ccc;margin-top:1rem}.dateRangePicker-wrapper .dateRangePickerModal:not(.mobile) .form-inputs>div:nth-child(2),.dateRangePicker-wrapper .dateRangePickerModal:not(.mobile) .row-calendars>div:nth-child(2){border-left:2px solid #c6d1d6}.dateRangePicker-wrapper .dateRangePicker{background:#fff;border-radius:9px;box-shadow:0 0 10px 0 rgba(129,139,144,.5);font-family:Roboto,Helvetica,Arial,sans-serif;overflow:visible;position:absolute;top:88px;z-index:3000}@media screen and (min-width:576px){.dateRangePicker-wrapper .dateRangePicker{min-width:600px}}.dateRangePicker-wrapper .dateRangePicker.dateRangePicker-single,.dateRangePicker-wrapper .dateRangePicker.mobile{min-width:300px}.dateRangePicker-wrapper .dateRangePicker.dateRangePicker-single:after,.dateRangePicker-wrapper .dateRangePicker.dateRangePicker-single:before,.dateRangePicker-wrapper .dateRangePicker.mobile:after,.dateRangePicker-wrapper .dateRangePicker.mobile:before{border-bottom-color:#fff}.dateRangePicker-wrapper .dateRangePicker:after,.dateRangePicker-wrapper .dateRangePicker:before{border-bottom:10px solid #6e777c;border-left:10px solid transparent;border-right:10px solid transparent;content:"";height:0;position:absolute;top:-10px;width:0}.dateRangePicker-wrapper .dateRangePicker.open-left{left:0}.dateRangePicker-wrapper .dateRangePicker.open-left:before{left:10px}.dateRangePicker-wrapper .dateRangePicker.open-left:after{display:none}.dateRangePicker-wrapper .dateRangePicker.open-right{right:0}.dateRangePicker-wrapper .dateRangePicker.open-right:before{display:none}.dateRangePicker-wrapper .dateRangePicker.open-right:after{right:10px}.dateRangePicker-wrapper .dateRangePicker.is-chrome .form-inputs .input-with-icon span{position:relative;top:1px}.dateRangePicker-wrapper .dateRangePicker .btn,.dateRangePicker-wrapper .dateRangePicker .btn.btn-link{min-width:auto;width:auto}.dateRangePicker-wrapper .dateRangePicker .form-inputs{background-color:#6e777c;border-top-left-radius:5px;border-top-right-radius:5px;color:#fff;font-size:16px}.dateRangePicker-wrapper .dateRangePicker .form-inputs>.col{min-width:270px;padding:.5rem 15px}.dateRangePicker-wrapper .dateRangePicker .form-inputs .input-with-icon{align-content:flex-start;align-items:center!important;display:flex}.dateRangePicker-wrapper .dateRangePicker .form-inputs .input-with-icon i{color:#fff;margin-right:.5rem}.dateRangePicker-wrapper .dateRangePicker .form-inputs .input-with-icon i.material-icons{top:0}.dateRangePicker-wrapper .dateRangePicker .form-inputs .input-with-icon span{line-height:1}.dateRangePicker-wrapper .dateRangePicker .form-inputs .form-control{background:none;border:0;color:#fff;display:inline-block;padding:0;width:150px}.dateRangePicker-wrapper .dateRangePicker .form-inputs .form-control::-moz-placeholder{color:#fff}.dateRangePicker-wrapper .dateRangePicker .form-inputs .form-control::placeholder{color:#fff}.dateRangePicker-wrapper .dateRangePicker .row-calendars .col__mobile{border-top:1px dotted #ccc;margin-top:1rem}.dateRangePicker-wrapper .dateRangePicker:not(.mobile) .form-inputs>div:nth-child(2),.dateRangePicker-wrapper .dateRangePicker:not(.mobile) .row-calendars>div:nth-child(2){border-left:2px solid #c6d1d6}.dateRangePicker-wrapper i.material-icons{position:relative;top:2px}']}]}],y.ctorParameters=function(){return[]},y.propDecorators={options:[{type:t.Input}],controlName:[{type:t.Input}],instanceId:[{type:t.Input}],parentFormGroup:[{type:t.Input}],fromDate:[{type:t.Input}],toDate:[{type:t.Input}],datepickerReset:[{type:t.Output}],rangeSelected:[{type:t.Output}],handleClick:[{type:t.HostListener,args:["document:click",["$event"]]}]};var D=s,w=function(){function e(){}return e.prototype.transform=function(e,t){var n=e;return n&&!i.isMoment(n)&&(n=D(n)),n?n.format(t):""},e}();w.decorators=[{type:t.Pipe,args:[{name:"formatMomentDate"}]}];var b=function(){function e(){this.fromDate=null,this.toDate=null,this.dateFromInput=new t.EventEmitter}return e.prototype.ngOnInit=function(){},e.prototype.setDateFromInput=function(e,t){void 0===t&&(t=!1),this.dateFromInput.emit({event:e,isLeft:t})},e}();b.decorators=[{type:t.Component,args:[{encapsulation:t.ViewEncapsulation.Emulated,selector:"manual-inputs",template:'<ng-container *ngIf="!isMobile">\n\n\t<div class="row form-inputs mb-0" *ngIf="!options.singleCalendar">\n\t\t<div class="col">\n\t\t\t<div *ngIf="options.icons !== \'default\'">\n\t\t\t\t<div [ngClass]="{ \'d-flex align-items-center input-with-icon\': true, \'material\': options.icons === \'material\' }">\n\t\t\t\t\t<i *ngIf="options.icons === \'material\'" class="material-icons">event</i>\n\t\t\t\t\t<i *ngIf="options.icons === \'font-awesome\'" class="far fa-calendar-alt"></i>\n\t\t\t\t\t<span *ngIf="fromDate">From:&nbsp;</span>\n\t\t\t\t\t<input class="form-control" [ngModel]="fromDate | formatMomentDate: options.format" (blur)="setDateFromInput($event, true)" type="text" name="daterangepicker_start" [ngModelOptions]="{ standalone: true }" placeholder="Select From Date" />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\n\t\t\t<input *ngIf="options.icons === \'default\'" class="form-control" [ngModel]="fromDate | formatMomentDate: options.format" (blur)="setDateFromInput($event, true)" type="text" name="daterangepicker_start" [ngModelOptions]="{standalone: true}" placeholder="Select From Date" />\n\t\t</div>\n\t\n\t\t<div class="col">\n\t\t\t<div *ngIf="options.icons !== \'default\'">\n\t\t\t\t\t<div [ngClass]="{ \'d-flex align-items-center input-with-icon\': true, \'material\': options.icons === \'material\' }">\n\t\t\t\t\t\t<i *ngIf="options.icons === \'material\'" class="material-icons">event</i>\n\t\t\t\t\t\t<i *ngIf="options.icons === \'font-awesome\'" class="far fa-calendar-alt"></i>\n\t\t\t\t\t\t<span *ngIf="toDate">To:&nbsp;</span>\n\t\t\t\t\t\t<input class="form-control" [ngModel]="toDate | formatMomentDate: options.format" (blur)="setDateFromInput($event)" type="text" name="daterangepicker_end" [ngModelOptions]="{ standalone: true }" placeholder="Select To Date" />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\n\t\t\t<input *ngIf="options.icons === \'default\'" class="form-control" [ngModel]="toDate | formatMomentDate: options.format" (blur)="setDateFromInput($event)" name="daterangepicker_end" [ngModelOptions]="{standalone: true}" />\n\t\t</div>\n\t</div>\n</ng-container>',styles:[".is-chrome .form-inputs .input-with-icon span{position:relative;top:1px}.form-inputs{background-color:#6e777c;border-top-left-radius:8px;border-top-right-radius:8px;color:#fff;font-size:16px}.form-inputs>.col{min-width:270px;padding:.5rem 15px}.form-inputs .input-with-icon{align-content:flex-start;align-items:center!important;display:flex}.form-inputs .input-with-icon i{color:#fff;margin-right:.5rem}.form-inputs .input-with-icon i.material-icons{top:0}.form-inputs .input-with-icon span{line-height:1}.form-inputs .form-control{background:none;border:0;color:#fff;display:inline-block;padding:0;width:150px}.form-inputs .form-control::-moz-placeholder{color:#fff}.form-inputs .form-control::placeholder{color:#fff}:not(.mobile) .form-inputs>div:nth-child(2),:not(.mobile) .row-calendars>div:nth-child(2){border-left:2px solid #c6d1d6}"]}]}],b.ctorParameters=function(){return[]},b.propDecorators={options:[{type:t.Input}],fromDate:[{type:t.Input}],toDate:[{type:t.Input}],isMobile:[{type:t.Input}],dateFromInput:[{type:t.Output}]};var v=function(){function e(){this.closeEvent=new t.EventEmitter,this.resetEvent=new t.EventEmitter,this.applyEvent=new t.EventEmitter,this.predefinedRange=new t.EventEmitter}return e.prototype.ngOnInit=function(){},e.prototype.applyPredefinedRange=function(e,t){this.predefinedRange.emit({event:e,definedDateRange:t})},e.prototype.close=function(e){this.closeEvent.emit(e),e.stopPropagation()},e.prototype.reset=function(e){this.resetEvent.emit(e),e.stopPropagation()},e.prototype.apply=function(e){this.applyEvent.emit(e),e.stopPropagation()},e}();v.decorators=[{type:t.Component,args:[{encapsulation:t.ViewEncapsulation.Emulated,selector:"predefined-date-ranges",template:'<div class="row text-center my-3">\n\t<div class="col">\n\t\t<div class="row mb-2" *ngIf="!options.singleCalendar && options.preDefinedRanges && options.preDefinedRanges.length > 0">\n\t\t\t<div class="col">\n\t\t\t\t<button type="button" *ngFor="let range of options.preDefinedRanges" class="btn btn-link" (click)="applyPredefinedRange($event, range)">{{ range.name }}</button>\n\t\t\t</div>\n\t\t</div>\n\t\t<ng-container *ngIf="!options.modal">\n\t\t\t<button type="button" class="btn btn-outline-secondary btn-sm" (click)="close($event)">Close</button>\n\t\t\t<button type="button" class="btn btn-outline-secondary btn-sm ml-3" (click)="reset($event)" *ngIf="range && options.showResetButton">Reset</button>\n\t\t\t<button type="button" class="btn btn-primary btn-sm ml-3" [disabled]="!enableApplyButton" (click)="apply($event)" *ngIf="!options.autoApply">Apply</button>\n\t\t</ng-container>\n\t</div>\n</div>',styles:[".btn,.btn.btn-link{min-width:60px}"]}]}],v.ctorParameters=function(){return[]},v.propDecorators={options:[{type:t.Input}],range:[{type:t.Input}],enableApplyButton:[{type:t.Input}],closeEvent:[{type:t.Output}],resetEvent:[{type:t.Output}],applyEvent:[{type:t.Output}],predefinedRange:[{type:t.Output}]};var M=[g,y,w,b,v],P=function(){};P.decorators=[{type:t.NgModule,args:[{declarations:l(M),exports:l(M),imports:[n.CommonModule,a.FormsModule,a.ReactiveFormsModule]}]}],e.CalendarComponent=g,e.DateRangePickerComponent=y,e.NgxDateRangeModule=P,e.ɵa=w,e.ɵb=b,e.ɵc=v,Object.defineProperty(e,"__esModule",{value:!0})})); //# sourceMappingURL=ngx-daterange.umd.min.js.map