novo-elements 5.10.0 → 5.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/novo-elements.umd.js +99 -35
- package/bundles/novo-elements.umd.js.map +1 -1
- package/bundles/novo-elements.umd.min.js +1 -1
- package/bundles/novo-elements.umd.min.js.map +1 -1
- package/elements/data-table/cell-headers/data-table-checkbox-header-cell.component.d.ts +2 -0
- package/elements/data-table/data-table.component.d.ts +5 -0
- package/elements/date-picker/DatePicker.d.ts +1 -0
- package/elements/date-picker/DatePicker.scss +7 -1
- package/elements/date-picker/DatePickerInput.d.ts +6 -0
- package/elements/date-time-picker/DateTimePicker.d.ts +1 -0
- package/elements/date-time-picker/DateTimePickerInput.d.ts +1 -0
- package/elements/form/Form.scss +2 -1
- package/elements/form/NovoFormControl.d.ts +1 -0
- package/elements/form/controls/BaseControl.d.ts +1 -0
- package/esm2015/elements/data-table/cell-headers/data-table-checkbox-header-cell.component.js +27 -2
- package/esm2015/elements/data-table/data-table.component.js +10 -2
- package/esm2015/elements/date-picker/DatePicker.js +3 -2
- package/esm2015/elements/date-picker/DatePickerInput.js +28 -2
- package/esm2015/elements/date-time-picker/DateTimePicker.js +3 -1
- package/esm2015/elements/date-time-picker/DateTimePickerInput.js +3 -1
- package/esm2015/elements/form/ControlTemplates.js +2 -2
- package/esm2015/elements/form/NovoFormControl.js +2 -1
- package/esm2015/elements/form/controls/BaseControl.js +2 -1
- package/esm2015/services/date-format/DateFormat.js +4 -2
- package/esm2015/utils/form-utils/FormUtils.js +17 -17
- package/fesm2015/novo-elements.js +90 -22
- package/fesm2015/novo-elements.js.map +1 -1
- package/novo-elements.metadata.json +1 -1
- package/package.json +1 -1
- package/services/date-format/DateFormat.d.ts +2 -2
- package/utils/form-utils/FormUtils.d.ts +3 -3
|
@@ -13,5 +13,5 @@
|
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
15
|
***************************************************************************** */
|
|
16
|
-
var ee=function(e,t){return(ee=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function te(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}ee(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}Object.create;function ne(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],o=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function oe(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,a,i=n.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)r.push(o.value)}catch(e){a={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(a)throw a.error}}return r}function ae(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(oe(arguments[t]));return e}Object.create;var ie=function(){function e(){}return e.prototype.transform=function(e,t){var n,o;if(!Array.isArray(e))return e;var a={};try{for(var i=ne(e),r=i.next();!r.done;r=i.next()){var s=r.value,l=F(s).have(t);R.isBlank(a[l])&&(a[l]=[]),a[l].push(s)}}catch(e){n={error:e}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(n)throw n.error}}return Object.keys(a).map((function(e){return{key:e,value:a[e]}}))},e}();ie.decorators=[{type:t.Pipe,args:[{name:"groupBy"}]}];var re=function(){};re.decorators=[{type:t.NgModule,args:[{declarations:[X,Q,ie],exports:[X,Q,ie]}]}];var se=function(){this.eventTypeClicked=new t.EventEmitter};se.decorators=[{type:t.Component,args:[{selector:"novo-event-type-legend",template:'\n <ng-template #defaultTemplate>\n <div class="cal-event-legend">\n <div class="cal-event-type"\n *ngFor="let type of events | groupBy : \'type\'"\n (click)="$event.stopPropagation(); eventTypeClicked.emit({event:type?.key})">\n <div class="cal-event-type-swatch"></div><div>{{type?.key}}</div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{events: events, eventTypeClicked: eventTypeClicked}">\n </ng-template>\n '}]}],se.propDecorators={events:[{type:t.Input}],customTemplate:[{type:t.Input}],eventTypeClicked:[{type:t.Output}]};var le=function(){function e(e){this.viewDateChange=new t.EventEmitter,this.locale=e}return e.prototype.subtractDate=function(){this.changeDate(-1)},e.prototype.addDate=function(){this.changeDate(1)},e.prototype.changeDate=function(e){var t={day:p.addDays,week:p.addWeeks,month:p.addMonths}[this.view];this.viewDateChange.emit(t(this.viewDate,e))},Object.defineProperty(e.prototype,"startOfWeek",{get:function(){return p.startOfWeek(this.viewDate)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"endOfWeek",{get:function(){return p.endOfWeek(this.viewDate)},enumerable:!1,configurable:!0}),e}();le.decorators=[{type:t.Component,args:[{selector:"novo-calendar-date-change",template:"\n <div class=\"cal-date-change\">\n <i class=\"bhi-arrow-left\" (click)=\"subtractDate()\" ></i>\n <span [ngSwitch]=\"view\">\n <span *ngSwitchCase=\"'month'\">{{ ( viewDate | month:locale ) + ' ' + ( viewDate | year:locale ) }}</span>\n <span *ngSwitchCase=\"'week'\">{{ ( startOfWeek | monthday:locale:'long' ) + ' - ' + ( endOfWeek | endofweekdisplay:startOfWeek:locale:'long' ) }}</span>\n <span *ngSwitchCase=\"'day'\">{{ ( viewDate | weekday:locale:'long' ) + ', ' + ( viewDate | month:locale ) + ' ' + ( viewDate | dayofmonth:locale ) }}</span>\n </span>\n <i class=\"bhi-arrow-right\" (click)=\"addDate()\"></i>\n </div>\n "}]}],le.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},le.propDecorators={view:[{type:t.Input}],viewDate:[{type:t.Input}],locale:[{type:t.Input}],viewDateChange:[{type:t.Output}]};var ce,de=[0,6];function pe(e){var t=e.startDate,n=e.days,o=e.excluded;if(o.length<1)return 0;for(var a=t.getDay(),i=0,r=0;r<n;r++)7===a&&(a=0),o.some((function(e){return e===a}))&&i++,a++;return i}function ue(e){var t=e.events,n=e.periodStart,o=e.periodEnd;return t.filter((function(e){return function(e){var t=e.event,n=e.periodStart,o=e.periodEnd,a=t.start,i=t.end||t.start;return a>n&&a<o||i>n&&i<o||a<n&&i>o||!(!p.isSameSecond(a,n)&&!p.isSameSecond(a,o))||!(!p.isSameSecond(i,n)&&!p.isSameSecond(i,o))}({event:e,periodStart:n,periodEnd:o})}))}function me(e,t,n){return e.filter((function(e){var o=e.start,a=e.end||o,i=p.setMinutes(p.setHours(p.startOfDay(o),t.hour),t.minute),r=p.setMinutes(p.setHours(p.startOfMinute(o),n.hour),n.minute);return p.isAfter(a,i)&&p.isBefore(o,r)}))}function he(e){var t=e.date,n=p.startOfDay(new Date);return{date:t,isPast:t<n,isToday:p.isSameDay(t,n),isFuture:t>n,isWeekend:de.indexOf(p.getDay(t))>-1}}function ge(e){for(var t=e.viewDate,n=e.weekStartsOn,o=e.excluded,a=void 0===o?[]:o,i=p.startOfWeek(t,{weekStartsOn:n}),r=[],s=function(e){var t=p.addDays(i,e);a.some((function(e){return t.getDay()===e}))||r.push(he({date:t}))},l=0;l<7;l++)s(l);return r}function fe(e){var t=e.events,n=void 0===t?[]:t,o=e.viewDate,a=e.weekStartsOn,i=e.excluded,r=void 0===i?[]:i,s=e.hourSegments,l=e.segmentHeight,c=e.dayStart,d=e.dayEnd;n||(n=[]);var u=p.startOfWeek(o,{weekStartsOn:a}),m=p.endOfWeek(o,{weekStartsOn:a}),h=7-r.length,g=me(ue({events:n,periodStart:u,periodEnd:m}),c,d).map((function(e){return{event:e,offset:function(e){var t=e.event,n=e.startOfWeek,o=e.excluded,a=void 0===o?[]:o;if(t.start<n)return 0;var i=p.differenceInDays(t.start,n);return i-pe({startDate:n,days:i,excluded:a})}({event:e,startOfWeek:u,excluded:r}),span:1}})).filter((function(e){return e.offset<h})).filter((function(e){return e.span>0})).map((function(e){return{event:e.event,offset:e.offset,span:e.span,startsBeforeWeek:e.event.start<u,endsAfterWeek:(e.event.end||e.event.start)>m,top:0}})).sort((function(e,t){var n=p.differenceInSeconds(e.event.start,t.event.start);return 0===n?p.differenceInSeconds(t.event.end||t.event.start,e.event.end||e.event.start):n})).map((function(e){var t=p.setMinutes(p.setHours(p.startOfDay(e.event.start),c.hour),c.minute),n=p.setMinutes(p.setHours(p.startOfMinute(p.endOfDay(e.event.start)),d.hour),d.minute),o=e.event.start,a=e.event.end||o,i=s*l/60;o>t&&(e.top+=p.differenceInMinutes(o,t)),e.top*=i;var r=o<t?t:o,u=a>n?n:a,m=p.differenceInMinutes(u,r);return e.event.end?m*=i:m=l,e.height=m,e})),f=[],y=[];return g.forEach((function(e,t){if(-1===y.indexOf(e)){y.push(e);var n=g.slice(t+1).filter((function(t){return t.top===e.top&&t.offset===e.offset}));if(n.length>0){var o=n.length+1;e.span=1/o;var a=e.span+e.offset;n.forEach((function(t){t.offset=a,t.span=e.span,a=t.span+t.offset})),y.push.apply(y,ae(n))}f.push({row:ae([e],n)})}})),f}function ye(e){for(var t=e.viewDate,n=e.hourSegments,o=e.dayStart,a=e.dayEnd,i=[],r=p.setMinutes(p.setHours(p.startOfDay(t),o.hour),o.minute),s=p.setMinutes(p.setHours(p.startOfMinute(p.endOfDay(t)),a.hour),a.minute),l=60/n,c=p.startOfDay(t),d=0;d<24;d++){for(var u=[],m=0;m<n;m++){var h=p.addMinutes(p.addHours(c,d),m*l);h>=r&&h<s&&u.push({date:h,isStart:0===m})}u.length>0&&i.push({segments:u})}return i}(ce=e.CalendarEventResponse||(e.CalendarEventResponse={}))[ce.Maybe=0]="Maybe",ce[ce.Accepted=1]="Accepted",ce[ce.Rejected=2]="Rejected";var ve=function(){function e(e,n){this.cdr=e,this.events=[],this.excludeDays=[],this.locale="en-US",this.tooltipPosition="top",this.dayClicked=new t.EventEmitter,this.eventClicked=new t.EventEmitter,this.eventTimesChanged=new t.EventEmitter,this.viewDateChange=new t.EventEmitter,this.locale=n}return e.prototype.ngOnInit=function(){var e=this;this.refresh&&(this.refreshSubscription=this.refresh.subscribe((function(){e.refreshAll(),e.cdr.markForCheck()})))},e.prototype.ngOnChanges=function(e){(e.viewDate||e.excludeDays)&&this.refreshHeader(),(e.viewDate||e.events||e.excludeDays)&&this.refreshBody()},e.prototype.ngOnDestroy=function(){this.refreshSubscription&&this.refreshSubscription.unsubscribe()},e.prototype.eventDropped=function(e,t){var n,o=p.getYear(e.date),a=p.getMonth(e.date),i=p.getDate(e.date),r=p.setYear(p.setMonth(p.setDate(t.start,i),a),o);if(t.end){var s=p.differenceInSeconds(r,t.start);n=p.addSeconds(t.end,s)}this.eventTimesChanged.emit({event:t,newStart:r,newEnd:n})},e.prototype.refreshHeader=function(){this.columnHeaders=ge({viewDate:this.viewDate,weekStartsOn:this.weekStartsOn,excluded:this.excludeDays})},e.prototype.refreshBody=function(){var e=this;this.view=function(e){var t=e.events,n=void 0===t?[]:t,o=e.viewDate,a=e.weekStartsOn,i=e.excluded,r=void 0===i?[]:i;n||(n=[]);for(var s=p.startOfWeek(p.startOfMonth(o),{weekStartsOn:a}),l=p.endOfWeek(p.endOfMonth(o),{weekStartsOn:a}),c=ue({events:n,periodStart:s,periodEnd:l}),d=[],u=function(e){var t=p.addDays(s,e);if(!r.some((function(e){return t.getDay()===e}))){var n=he({date:t}),a=ue({events:c,periodStart:p.startOfDay(t),periodEnd:p.endOfDay(t)});n.inMonth=p.isSameMonth(t,o),n.events=a,n.badgeTotal=a.length,d.push(n)}},m=0;m<p.differenceInDays(l,s)+1;m++)u(m);var h=7-r.length,g=Math.floor(d.length/h),f=[];for(m=0;m<g;m++)f.push(m*h);return{rowOffsets:f,totalDaysVisibleInWeek:h,days:d}}({events:this.events,viewDate:this.viewDate,weekStartsOn:this.weekStartsOn,excluded:this.excludeDays}),this.dayModifier&&this.view.days.forEach((function(t){return e.dayModifier(t)}))},e.prototype.refreshAll=function(){this.refreshHeader(),this.refreshBody(),this.viewDateChange.emit(this.viewDate)},e}();ve.decorators=[{type:t.Component,args:[{selector:"novo-calendar-month",template:'\n <div class="calendar-month-view">\n <novo-calendar-month-header\n [(viewDate)]="viewDate"\n [days]="columnHeaders"\n [locale]="locale"\n [customTemplate]="headerTemplate"\n (viewDateChange)="refreshAll()">\n </novo-calendar-month-header>\n <div class="calendar-days">\n <div *ngFor="let rowIndex of view.rowOffsets">\n <div class="calendar-cell-row">\n <novo-calendar-month-day\n *ngFor="let day of view.days | slice : rowIndex : rowIndex + (view.totalDaysVisibleInWeek)"\n [day]="day"\n [locale]="locale"\n [customTemplate]="cellTemplate"\n (click)="dayClicked.emit({day: day})"\n (eventClicked)="eventClicked.emit({ day: day, event: $event.event})">\n </novo-calendar-month-day>\n </div>\n </div>\n </div>\n </div>\n '}]}],ve.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},ve.propDecorators={viewDate:[{type:t.Input}],events:[{type:t.Input}],excludeDays:[{type:t.Input}],dayModifier:[{type:t.Input}],refresh:[{type:t.Input}],locale:[{type:t.Input}],tooltipPosition:[{type:t.Input}],weekStartsOn:[{type:t.Input}],headerTemplate:[{type:t.Input}],cellTemplate:[{type:t.Input}],dayClicked:[{type:t.Output}],eventClicked:[{type:t.Output}],eventTimesChanged:[{type:t.Output}],viewDateChange:[{type:t.Output}]};var be=function(){function e(){this.viewDateChange=new t.EventEmitter}return e.prototype.prevMonth=function(e){this.viewDateChange.emit(p.subMonths(this.viewDate,1))},e.prototype.nextMonth=function(e){this.viewDateChange.emit(p.addMonths(this.viewDate,1))},e}();be.decorators=[{type:t.Component,args:[{selector:"novo-calendar-month-header",template:'\n <ng-template #defaultTemplate>\n <div class="calendar-header">\n <div class="calendar-header-top">\n <button theme="icon" icon="previous" (click)="prevMonth($event)"></button>\n <div class="calendar-month">{{ viewDate | month:locale }}</div>\n <button theme="icon" icon="next" (click)="nextMonth($event)"></button>\n </div>\n <div class="calendar-weekdays">\n <div\n class="calendar-weekday"\n *ngFor="let day of days"\n [class.calendar-past]="day.isPast"\n [class.calendar-today]="day.isToday"\n [class.calendar-future]="day.isFuture"\n [class.calendar-weekend]="day.isWeekend">\n {{ day.date | weekday:locale }}\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{days: days, locale: locale, viewDate: viewDate}">\n </ng-template>\n '}]}],be.propDecorators={viewDate:[{type:t.Input}],days:[{type:t.Input}],locale:[{type:t.Input}],customTemplate:[{type:t.Input}],viewDateChange:[{type:t.Output}]};var Ce=function(){function n(){this.eventClicked=new t.EventEmitter}return Object.defineProperty(n.prototype,"accepted",{get:function(){return this.day?this.day.events.filter((function(t){return t.response===e.CalendarEventResponse.Accepted})):[]},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"rejected",{get:function(){return this.day?this.day.events.filter((function(t){return t.response===e.CalendarEventResponse.Rejected})):[]},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"maybes",{get:function(){return this.day?this.day.events.filter((function(t){return t.response===e.CalendarEventResponse.Maybe})):[]},enumerable:!1,configurable:!0}),n}();Ce.decorators=[{type:t.Component,args:[{selector:"novo-calendar-month-day",template:'\n <ng-template #defaultTemplate>\n <div class="calendar-day-top">\n <span class="calendar-day-badge" *ngIf="day.badgeTotal > 0">{{ day.badgeTotal }}</span>\n <span class="calendar-day-number">{{ day.date | dayofmonth:locale }}</span>\n </div>\n <div class="calendar-events">\n <div\n class="calendar-event"\n *ngFor="let type of day.events | groupBy : \'type\'"\n [style.backgroundColor]="type?.value[0]?.color.primary"\n [ngClass]="type?.value[0]?.cssClass"\n (click)="$event.stopPropagation(); eventClicked.emit({event:type?.value[0]})">\n {{type?.value.length}}\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{\n day: day,\n locale: locale,\n tooltipPosition: tooltipPosition,\n eventClicked: eventClicked,\n accepted: accepted,\n rejected: rejected,\n maybes: maybes\n }">\n </ng-template>\n ',host:{"[class]":'"calendar-cell calendar-day-cell " + day?.cssClass',"[class.calendar-day-accepted]":"accepted.length","[class.calendar-day-rejected]":"rejected.length","[class.calendar-past]":"day.isPast","[class.calendar-today]":"day.isToday","[class.calendar-future]":"day.isFuture","[class.calendar-weekend]":"day.isWeekend","[class.calendar-in-month]":"day.inMonth","[class.calendar-out-month]":"!day.inMonth","[class.calendar-has-events]":"day.events.length > 0","[style.backgroundColor]":"day.backgroundColor"}}]}],Ce.propDecorators={day:[{type:t.Input}],locale:[{type:t.Input}],tooltipPosition:[{type:t.Input}],customTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}]};var Se=function(){function e(e,n){this.cdr=e,this.events=[],this.excludeDays=[],this.tooltipPosition="bottom",this.precision="days",this.hourSegments=2,this.dayStartHour=0,this.dayStartMinute=0,this.dayEndHour=23,this.dayEndMinute=59,this.hourSegmentClicked=new t.EventEmitter,this.dayClicked=new t.EventEmitter,this.eventClicked=new t.EventEmitter,this.eventTimesChanged=new t.EventEmitter,this.hours=[],this.eventRows=[],this.locale=n}return e.prototype.ngOnInit=function(){var e=this;this.refresh&&(this.refreshSubscription=this.refresh.subscribe((function(){e.refreshAll(),e.cdr.detectChanges()})))},e.prototype.ngOnChanges=function(e){(e.viewDate||e.excludeDays)&&this.refreshHeader(),(e.events||e.viewDate||e.excludeDays)&&this.refreshBody(),(e.viewDate||e.dayStartHour||e.dayStartMinute||e.dayEndHour||e.dayEndMinute)&&this.refreshHourGrid()},e.prototype.ngOnDestroy=function(){this.refreshSubscription&&this.refreshSubscription.unsubscribe()},e.prototype.getDayColumnWidth=function(e){return Math.floor(e.offsetWidth/this.days.length)},e.prototype.refreshHeader=function(){this.days=ge({viewDate:this.viewDate,weekStartsOn:this.weekStartsOn,excluded:this.excludeDays})},e.prototype.refreshBody=function(){this.eventRows=fe({events:this.events,viewDate:this.viewDate,weekStartsOn:this.weekStartsOn,excluded:this.excludeDays,hourSegments:this.hourSegments,segmentHeight:30,dayStart:{hour:this.dayStartHour,minute:this.dayStartMinute},dayEnd:{hour:this.dayEndHour,minute:this.dayEndMinute}})},e.prototype.refreshHourGrid=function(){this.hours=ye({viewDate:this.viewDate,hourSegments:this.hourSegments,dayStart:{hour:this.dayStartHour,minute:this.dayStartMinute},dayEnd:{hour:this.dayEndHour,minute:this.dayEndMinute}})},e.prototype.refreshAll=function(){this.refreshHeader(),this.refreshHourGrid(),this.refreshBody()},e}();Se.decorators=[{type:t.Component,args:[{selector:"novo-calendar-week",template:'\n <div class="cal-week-view" #weekViewContainer>\n <novo-calendar-week-header\n [days]="days"\n [locale]="locale"\n [customTemplate]="headerTemplate"\n (dayClicked)="dayClicked.emit($event)">\n </novo-calendar-week-header>\n <div *ngFor="let eventRow of eventRows" #eventRowContainer>\n <div\n class="cal-event-container"\n #event\n *ngFor="let weekEvent of eventRow.row"\n [style.width]="((100 / days.length) * weekEvent.span) + \'%\'"\n [style.marginTop.px]="weekEvent.top"\n [style.height.px]="weekEvent.height"\n [style.marginLeft]="((100 / days.length) * weekEvent.offset) + \'%\'">\n <novo-calendar-week-event\n [weekEvent]="weekEvent"\n [tooltipPosition]="tooltipPosition"\n [customTemplate]="eventTemplate"\n (eventClicked)="eventClicked.emit($event)">\n </novo-calendar-week-event>\n </div>\n </div>\n <div class="cal-hour" *ngFor="let hour of hours" [style.minWidth.px]="70">\n <novo-calendar-day-hour-segment\n *ngFor="let segment of hour.segments"\n [segment]="segment"\n [locale]="locale"\n [customTemplate]="hourSegmentTemplate"\n (click)="hourSegmentClicked.emit({date: segment.date})">\n </novo-calendar-day-hour-segment>\n </div>\n </div>\n '}]}],Se.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},Se.propDecorators={viewDate:[{type:t.Input}],events:[{type:t.Input}],excludeDays:[{type:t.Input}],refresh:[{type:t.Input}],locale:[{type:t.Input}],tooltipPosition:[{type:t.Input}],weekStartsOn:[{type:t.Input}],headerTemplate:[{type:t.Input}],eventTemplate:[{type:t.Input}],precision:[{type:t.Input}],hourSegments:[{type:t.Input}],dayStartHour:[{type:t.Input}],dayStartMinute:[{type:t.Input}],dayEndHour:[{type:t.Input}],dayEndMinute:[{type:t.Input}],hourSegmentTemplate:[{type:t.Input}],hourSegmentClicked:[{type:t.Output}],dayClicked:[{type:t.Output}],eventClicked:[{type:t.Output}],eventTimesChanged:[{type:t.Output}]};var ke=function(){this.dayClicked=new t.EventEmitter,this.eventDropped=new t.EventEmitter};ke.decorators=[{type:t.Component,args:[{selector:"novo-calendar-week-header",template:'\n <ng-template #defaultTemplate>\n <div class="cal-day-headers">\n <div\n class="cal-header"\n *ngFor="let day of days"\n [class.cal-past]="day.isPast"\n [class.cal-today]="day.isToday"\n [class.cal-future]="day.isFuture"\n [class.cal-weekend]="day.isWeekend"\n [class.cal-drag-over]="day.dragOver"\n (click)="dayClicked.emit({date: day.date})"\n mwlDroppable\n (dragEnter)="day.dragOver = true"\n (dragLeave)="day.dragOver = false"\n (drop)="day.dragOver = false; eventDropped.emit({event: $event.dropData.event, newStart: day.date})">\n <b>{{ day.date | weekday:locale:\'long\'}}</b><br>\n <span>{{ day.date | monthday:locale }}</span>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{days: days, locale: locale, dayClicked: dayClicked, eventDropped: eventDropped}">\n </ng-template>\n '}]}],ke.propDecorators={days:[{type:t.Input}],locale:[{type:t.Input}],customTemplate:[{type:t.Input}],dayClicked:[{type:t.Output}],eventDropped:[{type:t.Output}]};var Ie=function(){this.eventClicked=new t.EventEmitter};Ie.decorators=[{type:t.Component,args:[{selector:"novo-calendar-week-event",template:'\n <ng-template #defaultTemplate>\n <div\n class="cal-event"\n [class.cal-starts-within-week]="!weekEvent.startsBeforeWeek"\n [class.cal-ends-within-week]="!weekEvent.endsAfterWeek"\n [ngClass]="weekEvent.event?.cssClass"\n [tooltip]="weekEvent.event.description"\n [tooltipPosition]="tooltipPosition"\n (click)="eventClicked.emit({event: weekEvent.event})">\n <div class="cal-event-ribbon" [style.backgroundColor]="weekEvent.event.color.primary"></div>\n <div class="cal-event-title">{{weekEvent.event?.title}}</div>\n <div class="cal-event-description">{{weekEvent.event?.description}}</div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{weekEvent: weekEvent, tooltipPosition: tooltipPosition, eventClicked: eventClicked}">\n </ng-template>\n '}]}],Ie.propDecorators={weekEvent:[{type:t.Input}],tooltipPosition:[{type:t.Input}],customTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}]};var Ee=function(){function e(e,n){this.cdr=e,this.events=[],this.hourSegments=2,this.dayStartHour=0,this.dayStartMinute=0,this.dayEndHour=23,this.dayEndMinute=59,this.eventWidth=150,this.eventSnapSize=30,this.tooltipPosition="top",this.eventClicked=new t.EventEmitter,this.hourSegmentClicked=new t.EventEmitter,this.eventTimesChanged=new t.EventEmitter,this.hours=[],this.width=0,this.locale=n}return e.prototype.ngOnInit=function(){var e=this;this.refresh&&(this.refreshSubscription=this.refresh.subscribe((function(){e.refreshAll(),e.cdr.detectChanges()})))},e.prototype.ngOnDestroy=function(){this.refreshSubscription&&this.refreshSubscription.unsubscribe()},e.prototype.ngOnChanges=function(e){(e.viewDate||e.dayStartHour||e.dayStartMinute||e.dayEndHour||e.dayEndMinute)&&this.refreshHourGrid(),(e.viewDate||e.events||e.dayStartHour||e.dayStartMinute||e.dayEndHour||e.dayEndMinute||e.eventWidth)&&this.refreshView()},e.prototype.refreshHourGrid=function(){var e=this;this.hours=ye({viewDate:this.viewDate,hourSegments:this.hourSegments,dayStart:{hour:this.dayStartHour,minute:this.dayStartMinute},dayEnd:{hour:this.dayEndHour,minute:this.dayEndMinute}}),this.hourSegmentModifier&&this.hours.forEach((function(t){t.segments.forEach((function(t){return e.hourSegmentModifier(t)}))}))},e.prototype.refreshView=function(){this.view=function(e){var t=e.events,n=void 0===t?[]:t,o=e.viewDate,a=e.hourSegments,i=e.dayStart,r=e.dayEnd,s=e.eventWidth,l=e.segmentHeight;n||(n=[]);var c=p.setMinutes(p.setHours(p.startOfDay(o),i.hour),i.minute),d=p.setMinutes(p.setHours(p.startOfMinute(p.endOfDay(o)),r.hour),r.minute),u=[],m=me(ue({events:n.filter((function(e){return!e.allDay})),periodStart:c,periodEnd:d}),i,r).sort((function(e,t){return e.start.valueOf()-t.start.valueOf()})).map((function(e){var t=e.start,n=e.end||t,o=t<c,i=n>d,r=a*l/60,m=0;t>c&&(m+=p.differenceInMinutes(t,c)),m*=r;var h=o?c:t,g=i?d:n,f=p.differenceInMinutes(g,h);e.end?f*=r:f=l;for(var y=m+f,v=u.filter((function(e){var t=e.top,n=e.top+e.height;return m<n&&n<y||t<=m&&y<=n})),b=0;v.some((function(e){return e.left===b}));)b+=s;var C={event:e,height:f,width:s,top:m,left:b,startsBeforeDay:o,endsAfterDay:i};return f>0&&u.push(C),C})).filter((function(e){return e.height>0})),h=Math.max.apply(Math,ae(m.map((function(e){return e.left+e.width}))));return{events:m,width:h,allDayEvents:ue({events:n.filter((function(e){return e.allDay})),periodStart:p.startOfDay(c),periodEnd:p.endOfDay(d)})}}({events:this.events,viewDate:this.viewDate,hourSegments:this.hourSegments,dayStart:{hour:this.dayStartHour,minute:this.dayStartMinute},dayEnd:{hour:this.dayEndHour,minute:this.dayEndMinute},eventWidth:this.eventWidth,segmentHeight:30})},e.prototype.refreshAll=function(){this.refreshHourGrid(),this.refreshView()},e}();Ee.decorators=[{type:t.Component,args:[{selector:"novo-calendar-day",template:'\n <div class="cal-day-view" #dayViewContainer>\n <novo-calendar-all-day-event\n *ngFor="let event of view.allDayEvents"\n [event]="event"\n [customTemplate]="allDayEventTemplate"\n (eventClicked)="eventClicked.emit({event: event})">\n </novo-calendar-all-day-event>\n <div class="cal-hour-rows">\n <div class="cal-events">\n <div\n #event\n *ngFor="let dayEvent of view?.events"\n class="cal-event-container"\n [style.marginTop.px]="dayEvent.top"\n [style.height.px]="dayEvent.height"\n [style.marginLeft.px]="dayEvent.left + 70"\n [style.width.px]="dayEvent.width - 1">\n <novo-calendar-day-event\n [dayEvent]="dayEvent"\n [tooltipPosition]="tooltipPosition"\n [customTemplate]="eventTemplate"\n (eventClicked)="eventClicked.emit($event)">\n </novo-calendar-day-event>\n </div>\n </div>\n <div class="cal-hour" *ngFor="let hour of hours" [style.minWidth.px]="view?.width + 70">\n <novo-calendar-day-hour-segment\n *ngFor="let segment of hour.segments"\n [segment]="segment"\n [locale]="locale"\n [customTemplate]="hourSegmentTemplate"\n (click)="hourSegmentClicked.emit({date: segment.date})">\n </novo-calendar-day-hour-segment>\n </div>\n </div>\n </div>\n '}]}],Ee.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},Ee.propDecorators={viewDate:[{type:t.Input}],events:[{type:t.Input}],hourSegments:[{type:t.Input}],dayStartHour:[{type:t.Input}],dayStartMinute:[{type:t.Input}],dayEndHour:[{type:t.Input}],dayEndMinute:[{type:t.Input}],eventWidth:[{type:t.Input}],refresh:[{type:t.Input}],locale:[{type:t.Input}],hourSegmentModifier:[{type:t.Input}],eventSnapSize:[{type:t.Input}],tooltipPosition:[{type:t.Input}],hourSegmentTemplate:[{type:t.Input}],allDayEventTemplate:[{type:t.Input}],eventTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}],hourSegmentClicked:[{type:t.Output}],eventTimesChanged:[{type:t.Output}]};var we=function(){this.eventClicked=new t.EventEmitter};we.decorators=[{type:t.Component,args:[{selector:"novo-calendar-day-event",template:'\n <ng-template #defaultTemplate>\n <div\n class="cal-event"\n [style.borderColor]="dayEvent.event.color.secondary"\n [class.cal-starts-within-day]="!dayEvent.startsBeforeDay"\n [class.cal-ends-within-day]="!dayEvent.endsAfterDay"\n [ngClass]="dayEvent.event.cssClass"\n [tooltip]="dayEvent.event.description"\n [tooltipPosition]="tooltipPosition"\n (click)="eventClicked.emit({event: dayEvent.event})">\n <div class="cal-event-ribbon" [style.backgroundColor]="dayEvent.event.color.primary"></div>\n <div class="cal-event-group">\n <div class="cal-event-title">{{dayEvent.event.title}}</div>\n <div class="cal-event-description">{{dayEvent.event?.description}}</div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{dayEvent: dayEvent, tooltipPosition: tooltipPosition, eventClicked: eventClicked}">\n </ng-template>\n '}]}],we.propDecorators={dayEvent:[{type:t.Input}],tooltipPosition:[{type:t.Input}],customTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}]};var Te=function(){};Te.decorators=[{type:t.Component,args:[{selector:"novo-calendar-day-hour-segment",template:'\n <ng-template #defaultTemplate>\n <div\n class="cal-hour-segment"\n [class.cal-hour-start]="segment.isStart"\n [class.cal-after-hour-start]="!segment.isStart"\n [ngClass]="segment.cssClass">\n <div class="cal-time">\n {{ segment.date | hours:locale }}\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{\n segment: segment,\n locale: locale\n }">\n </ng-template>\n '}]}],Te.propDecorators={segment:[{type:t.Input}],locale:[{type:t.Input}],customTemplate:[{type:t.Input}]};var Oe=function(){this.eventClicked=new t.EventEmitter};Oe.decorators=[{type:t.Component,args:[{selector:"novo-calendar-all-day-event",template:'\n <ng-template #defaultTemplate>\n <div\n class="cal-all-day-event"\n [style.backgroundColor]="event.color.secondary"\n [style.borderColor]="event.color.primary">\n {{event.title}}\n \x3c!--<novo-calendar-event-title\n [event]="event"\n view="day"\n (click)="eventClicked.emit()">\n </novo-calendar-event-title>\n <novo-calendar-event-actions [event]="event"></novo-calendar-event-actions>--\x3e\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{\n event: event,\n eventClicked: eventClicked\n }">\n </ng-template>\n '}]}],Oe.propDecorators={event:[{type:t.Input}],customTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}]};var Pe=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="short"),new Intl.DateTimeFormat(t,{weekday:n}).format(e)},e}();Pe.decorators=[{type:t.Pipe,args:[{name:"weekday"}]}],Pe.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Ae=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="long"),new Intl.DateTimeFormat(t,{month:n}).format(e)},e}();Ae.decorators=[{type:t.Pipe,args:[{name:"month"}]}],Ae.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var De=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="short"),new Intl.DateTimeFormat(t,{month:n,day:"numeric"}).format(e)},e}();De.decorators=[{type:t.Pipe,args:[{name:"monthday"}]}],De.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var xe=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="numeric"),new Intl.DateTimeFormat(t,{year:n}).format(e)},e}();xe.decorators=[{type:t.Pipe,args:[{name:"year"}]}],xe.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Re=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="numeric"),new Intl.DateTimeFormat(t,{hour:n}).format(e)},e}();Re.decorators=[{type:t.Pipe,args:[{name:"hours"}]}],Re.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Me=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="numeric"),new Intl.DateTimeFormat(t,{day:n}).format(e)},e}();Me.decorators=[{type:t.Pipe,args:[{name:"dayofmonth"}]}],Me.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Fe=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n,o){return void 0===n&&(n=this.locale),void 0===o&&(o="short"),e.getMonth()===t.getMonth()?new Intl.DateTimeFormat(n,{day:"numeric"}).format(e):new Intl.DateTimeFormat(n,{month:o,day:"numeric"}).format(e)},e}();Fe.decorators=[{type:t.Pipe,args:[{name:"endofweekdisplay"}]}],Fe.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Le=function(){};Le.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_,U,re],declarations:[se,ve,be,Ce,Se,ke,Ie,Ee,we,Te,Oe,le,Pe,Me,Ae,De,xe,Re,Fe],exports:[se,ve,be,Ce,Se,ke,Ie,Ee,we,Te,Oe,le,Pe,Me,Ae,De,xe,Re,Fe]}]}];var Ne=function(){function e(e){void 0===e&&(e="en-US"),this.userLocale=e,this.filters="Filter",this.clear="Clear",this.sort="Sort",this.distributionListOwner="Owner",this.dateAdded="Date Added",this.emptyTableMessage="No Records to display...",this.noMatchingRecordsMessage="No Matching Records",this.erroredTableMessage="Oops! An error occurred.",this.pickerError="Oops! An error occurred.",this.pickerTextFieldEmpty="Begin typing to see results.",this.pickerEmpty="No results to display...",this.tabbedGroupPickerEmpty="No results found",this.quickNoteError="Oops! An error occurred.",this.quickNoteEmpty="No results to display...",this.required="Required",this.numberTooLarge="Number is too large",this.save="Save",this.cancel="Cancel",this.next="Next",this.itemsPerPage="Items per page:",this.select="Select...",this.selected="Selected",this.selectAllOnPage="Select all on page",this.deselectAll="Deselect all",this.refresh="Refresh",this.close="Close",this.move="Move",this.startDate="Start Date",this.endDate="End Date",this.rate="Rate",this.more="more",this.clearAll="CLEAR ALL",this.clearAllNormalCase="Clear All",this.clearSort="Clear Sort",this.clearFilter="Clear Filter",this.clearSelected="Clear Selected",this.today="Today",this.now="Now",this.isRequired="is required",this.notValidYear="is not a valid year",this.isTooLarge="is too large",this.invalidAddress="requires at least one field filled out",this.invalidEmail="requires a valid email (ex. abc@123.com)",this.minLength="is required to be a minimum length of",this.past1Day="Past 1 Day",this.past7Days="Past 7 Days",this.past30Days="Past 30 Days",this.past90Days="Past 90 Days",this.past1Year="Past 1 Year",this.next1Day="Next 1 Day",this.next7Days="Next 7 Days",this.next30Days="Next 30 Days",this.next90Days="Next 90 Days",this.next1Year="Next 1 Year",this.customDateRange="Custom Date Range",this.backToPresetFilters="Back to Preset Filters",this.okGotIt="Ok, Got it",this.address="Address",this.address1="Address",this.apt="Apt",this.address2="Apt",this.city="City / Locality",this.state="State / Region",this.zip="Postal Code",this.zipCode="Postal Code",this.country="Country",this.or="or",this.clickToBrowse="click to browse",this.chooseAFile="Choose a file",this.no="No",this.yes="Yes",this.search="SEARCH",this.noItems="There are no items",this.dateFormat="MM/dd/yyyy",this.dateFormatPlaceholder="MM/DD/YYYY",this.timeFormatPlaceholderAM="hh:mm AM",this.timeFormatPlaceholder24Hour="HH:mm",this.timeFormatAM="AM",this.timeFormatPM="PM",this.confirmChangesModalMessage="Are you sure you want to change this field?",this.promptModalMessage="Do you want to perform the following changes?",this.asyncFailure="Async validation was not called within the 10s threshold, you might want to reload the page to try again",this.previous="Previous",this.actions="Actions",this.all="All",this.groupedMultiPickerEmpty="No items to display",this.groupedMultiPickerSelectCategory="Select a category from the left to get started",this.add="Add",this.encryptedFieldTooltip="This data has been stored at the highest level of security",this.noStatesForCountry="No states available for the selected country",this.selectCountryFirst="Please select a country before selecting a state",this.invalidIntegerInput="Special characters are not allowed for",this.maxRecordsReached="Sorry, you have reached the maximum number of records allowed for this field",this.selectFilterOptions="Please select one or more filter options below."}return e.prototype.maxlengthMetWithField=function(e,t){return"Sorry, you have reached the maximum character count of "+t+" for "+e+"."},e.prototype.maxlengthMet=function(e){return"Sorry, you have reached the maximum character count of "+e+" for this field."},e.prototype.invalidMaxlengthWithField=function(e,t){return"Sorry, you have exceeded the maximum character count of "+t+" for "+e+"."},e.prototype.invalidMaxlength=function(e){return"Sorry, you have exceeded the maximum character count of "+e+" for this field."},e.prototype.getToManyPlusMore=function(e){return"+"+e.quantity+" more"},e.prototype.selectedRecords=function(e){return e+" records are selected."},e.prototype.showingXofXResults=function(e,t){return"Showing "+e+" of "+t+" Results."},e.prototype.totalRecords=function(e,t){return void 0===t&&(t=!1),t?"Select all "+e+" records.":"De-select remaining "+e+" records."},e.prototype.dateFormatString=function(){return this.dateFormat},e.prototype.tabbedGroupClearSuggestion=function(e){return"Clear your search to see all "+e+"."},e.prototype.formatDateWithFormat=function(e,t){var n=e instanceof Date?e:new Date(e);return n.getTime()!=n.getTime()?e:new Intl.DateTimeFormat(this.userLocale,t).format(n)},e.prototype.formatToTimeOnly=function(e){},e.prototype.formatToDateOnly=function(e){},e.prototype.formatTimeWithFormat=function(e,t){var n=e instanceof Date?e:new Date(e);if(n.getTime()!=n.getTime())return e;var o=Intl.DateTimeFormat(this.userLocale,t).formatToParts(n).reduce((function(e,t){return e[t.type]=t.value,e}),{}),a=o.dayperiod?o.dayperiod:"";return o.hour+":"+o.minute+a},e.prototype.getWeekdays=function(){var e=this;function t(e){var t=new Date;return t.setDate(t.getDate()-t.getDay()+e)}return[t(0),t(1),t(2),t(3),t(4),t(5),t(6)].reduce((function(t,n){return t.push(new Intl.DateTimeFormat(e.userLocale,{weekday:"long"}).format(n)),t}),[])},e.prototype.getMonths=function(){var e=this;function t(e){return(new Date).setMonth(e,1)}return[t(0),t(1),t(2),t(3),t(4),t(5),t(6),t(7),t(8),t(9),t(10),t(11)].reduce((function(t,n){return t.push(new Intl.DateTimeFormat(e.userLocale,{month:"long"}).format(n)),t}),[])},e.prototype.getProperty=function(e){return this[e]},e.prototype.getRangeText=function(e,t,n,o){if(0===n||0===t)return"Displaying 0 of "+n;var a=e*t,i=a<(n=Math.max(n,0))?Math.min(a+t,n):a+t;return o?a+1+" - "+i+"/"+n:"Displaying "+(a+1)+" - "+i+" of "+n},e.prototype.formatCurrency=function(e){return new Intl.NumberFormat(this.userLocale,{style:"currency",currency:"USD"}).format(e)},e.prototype.formatBigDecimal=function(e,t){var n=Object.assign({style:"decimal",minimumFractionDigits:2,maximumFractionDigits:2,useAccountingFormat:!0},t),o=this.truncateToPrecision(e,n.maximumFractionDigits),a=new Intl.NumberFormat(this.userLocale,n).format(o);return e<0&&(a=n.useAccountingFormat?"("+a.slice(1)+")":"-"+a.slice(1)),a},e.prototype.truncateToPrecision=function(e,t){var n=e?e.toString():"0",o=n.indexOf(".");return o>-1&&o+t+1<n.length&&(n=n.substring(0,n.indexOf(".")+t+1)),Number(n)},e.prototype.formatNumber=function(e,t){return new Intl.NumberFormat(this.userLocale,t).format(e)},e.prototype.formatDateShort=function(e){var t=null==e||""===e?new Date:new Date(e);return new Intl.DateTimeFormat(this.userLocale,{month:"2-digit",day:"2-digit",year:"numeric",hour:"numeric",minute:"2-digit"}).format(t)},e.prototype.formatTime=function(e){var t=null==e||""===e?new Date:new Date(e);return new Intl.DateTimeFormat(this.userLocale,{hour:"numeric",minute:"2-digit"}).format(t)},e.prototype.formatDate=function(e){var t=null==e||""===e?new Date:new Date(e);return new Intl.DateTimeFormat(this.userLocale,{month:"2-digit",day:"2-digit",year:"numeric"}).format(t)},e}();Ne.decorators=[{type:t.Injectable}],Ne.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Be=function(){};Be.decorators=[{type:t.Component,args:[{selector:"novo-card-actions",template:"<ng-content></ng-content>"}]}];var He=function(){function e(e){this.padding=!0,this.config={},this.onClose=new t.EventEmitter,this.onRefresh=new t.EventEmitter,this.labels=e}return e.prototype.ngOnInit=function(){this.config=this.config||{}},e.prototype.ngOnChanges=function(e){this.config=this.config||{},this.cardAutomationId=(this.title||this.config.title||"no-title").toLowerCase().replace(/\s/g,"-")+"-card";var t=this.icon||this.config.icon,n=this.messageIcon||this.config.messageIcon;this.iconClass=t?"bhi-"+t:null,this.messageIconClass=n?"bhi-"+n:null},e.prototype.toggleClose=function(){this.config.onClose?this.config.onClose():this.onClose.next()},e.prototype.toggleRefresh=function(){this.config.onRefresh?this.config.onRefresh():this.onRefresh.next()},e}();He.decorators=[{type:t.Component,args:[{selector:"novo-card",template:'\n <div class="novo-card" [attr.data-automation-id]="cardAutomationId" [ngClass]="{\'no-padding\': !padding}" [class.loading]="loading || config.loading">\n \x3c!--Loading--\x3e\n <div class="card-loading-container" *ngIf="loading || config.loading">\n <novo-loading theme="line" [attr.data-automation-id]="cardAutomationId + \'-loading\'"></novo-loading>\n </div>\n \x3c!--Card Header--\x3e\n <header>\n <div class="title">\n \x3c!--Grabber Icon--\x3e\n <span tooltip="{{ labels.move }}" tooltipPosition="bottom-right"><i *ngIf="move || config.move" class="bhi-move" [attr.data-automation-id]="cardAutomationId + \'-move\'"></i></span>\n \x3c!--Card Title--\x3e\n <h3 [attr.data-automation-id]="cardAutomationId + \'-title\'"><span [tooltip]="iconTooltip" tooltipPosition="right"><i *ngIf="icon" [ngClass]="iconClass"></i></span> {{title || config.title}}</h3>\n </div>\n \x3c!--Card Actions--\x3e\n <div class="actions" [attr.data-automation-id]="cardAutomationId + \'-actions\'">\n <ng-content select="novo-card-actions"></ng-content>\n <button theme="icon" icon="refresh" (click)="toggleRefresh()" *ngIf="refresh || config.refresh" [attr.data-automation-id]="cardAutomationId + \'-refresh\'" tooltip="{{ labels.refresh }}" tooltipPosition="bottom-left"></button>\n <button theme="icon" icon="close-o" (click)="toggleClose()" *ngIf="close || config.close" [attr.data-automation-id]="cardAutomationId + \'-close\'" tooltip="{{ labels.close }}" tooltipPosition="bottom-left"></button>\n </div>\n </header>\n \x3c!--Card Main--\x3e\n <main>\n \x3c!--Content (transcluded)--\x3e\n <ng-content *ngIf="!(loading || config.loading) && !(message || config.message)"></ng-content>\n \x3c!--Error/Empty Message--\x3e\n <p class="card-message" *ngIf="!(loading || config.loading) && (message || config.message)" [attr.data-automation-id]="cardAutomationId + \'-message\'"><i *ngIf="messageIconClass" [ngClass]="messageIconClass"></i> <span [innerHtml]="message || config.message"></span></p>\n </main>\n \x3c!--Card Footer--\x3e\n <ng-content *ngIf="!(loading || config.loading) && !(message || config.message)" select="footer"></ng-content>\n </div>\n '}]}],He.ctorParameters=function(){return[{type:Ne}]},He.propDecorators={padding:[{type:t.Input}],config:[{type:t.Input}],title:[{type:t.Input}],message:[{type:t.Input}],messageIcon:[{type:t.Input}],icon:[{type:t.Input}],iconTooltip:[{type:t.Input}],refresh:[{type:t.Input}],close:[{type:t.Input}],move:[{type:t.Input}],loading:[{type:t.Input}],onClose:[{type:t.Output}],onRefresh:[{type:t.Output}]};var _e=function(){};_e.decorators=[{type:t.Component,args:[{selector:"novo-loading",host:{"[class]":'theme || ""'},template:'\n <span class="dot"></span>\n <span class="dot"></span>\n <span class="dot"></span>\n <span class="dot"></span>\n <span class="dot"></span>\n '}]}],_e.propDecorators={theme:[{type:t.Input}]};var Ge=function(){};Ge.decorators=[{type:t.Component,args:[{selector:"novo-spinner",template:'\n <svg class="bullhornSpinner" [ngClass]="theme" height="100" width="100" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" [attr.inverse]="inverse">\n <title>Bullhorn Spinner Animation</title>\n <desc>Spinner animation indicating loading</desc>\n <defs>\n <style>\n .bullhornSpinner g.circleGroup {\n -webkit-filter: url("{{baseHref || \'\'}}#gooEffect");\n filter: url("{{baseHref || \'\'}}#gooEffect");\n }\n _:-webkit-full-screen:not(:root:root), .bullhornSpinner g.circleGroup {\n -webkit-filter: none;\n filter: none;\n }\n @supports (-webkit-text-size-adjust:none) and (not (-ms-accelerator:true)) and (not (-moz-appearance:none)) {\n .bullhornSpinner g.circleGroup {\n -webkit-filter: none;\n filter: none;\n }\n }\n @supports (-webkit-text-size-adjust:none) and (not (-ms-accelerator:true)) and (not (-moz-appearance:none)) {\n .bullhornSpinner g.circleGroup {\n -webkit-filter: none;\n filter: none;\n }\n }\n </style>\n <filter id="gooEffect">\n <feGaussianBlur in="SourceGraphic" stdDeviation="5" result="blur" />\n <feColorMatrix in="blur" mode="matrix" values="\n 1.3 0 0 0 0\n 0 1.3 0 0 0\n 0 0 1.3 0 0\n 0 0 0 19 -7" result="gooEffect" />\n <feComposite in="SourceGraphic" in2="gooEffect" operator="atop" />\n </filter>\n </defs>\n <path d="M 43 43 L 54 45 L 80 40 L 43 43" stroke="none" fill="none" id="firstLinePath"/>\n <path d="M 43 43 L 48 41 L 48 18 L 43 43" stroke="none" fill="none" id="secondLinePath"/>\n <path d="M 43 43 L 42 45 L 15 40 L 43 43" stroke="none" fill="none" id="thirdLinePath"/>\n <path d="M 43 43 L 44 52 L 29 78 L 43 43" stroke="none" fill="none" id="fourthLinePath"/>\n <path d="M 43 43 L 52 52 L 68 78 L 43 43" stroke="none" fill="none" id="fifthLinePath"/>\n <g class="circleGroup" transform="translate(7, 7)">\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#firstLinePath"/>\n </animateMotion>\n </circle>\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#secondLinePath"/>\n </animateMotion>\n </circle>\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#thirdLinePath"/>\n </animateMotion>\n </circle>\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#fourthLinePath"/>\n </animateMotion>\n </circle>\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#fifthLinePath"/>\n </animateMotion>\n </circle>\n </g>\n </svg>\n '}]}],Ge.propDecorators={theme:[{type:t.Input}],inverse:[{type:t.Input}],baseHref:[{type:t.Input}]};var Ve=function(){this.skeleton=!0};Ve.decorators=[{type:t.Directive,args:[{selector:"[skeleton]"}]}],Ve.propDecorators={skeleton:[{type:t.HostBinding,args:["class.skeleton"]}]};var Ue=function(){};Ue.decorators=[{type:t.Directive,args:[{selector:"[loaded]"}]}];var Ke=function(){function e(e){this.viewContainer=e,this.hasView=!1,this.skeletonViews=[],this.loadedViews=[]}return Object.defineProperty(e.prototype,"isLoading",{set:function(e){e||this.hasView?e&&this.hasView&&(this.destroyViews(this.skeletonViews),this.loadedViews=this.createViews(this.loadedTemplates),this.hasView=!1):(this.destroyViews(this.loadedViews),this.skeletonViews=this.createViews(this.skeletonTemplates),this.hasView=!0)},enumerable:!1,configurable:!0}),e.prototype.createViews=function(e){var t=this;return e&&e.map((function(e){return t.viewContainer.createEmbeddedView(e)}))},e.prototype.destroyViews=function(e){var t,n;if(e)try{for(var o=ne(e),a=o.next();!a.done;a=o.next()){a.value.destroy()}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}},e}();Ke.decorators=[{type:t.Directive,args:[{selector:"[isLoading]"}]}],Ke.ctorParameters=function(){return[{type:t.ViewContainerRef}]},Ke.propDecorators={skeletonTemplates:[{type:t.ContentChildren,args:[Ve,{read:t.TemplateRef}]}],loadedTemplates:[{type:t.ContentChildren,args:[Ue,{read:t.TemplateRef}]}],isLoading:[{type:t.Input}]};var ze=function(){};ze.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[_e,Ge,Ke,Ue,Ve],exports:[_e,Ge,Ke,Ue,Ve]}]}];var je=function(){};je.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_,ze,U],declarations:[He,Be],exports:[He,Be]}]}];var $e=function(){function e(e){this.active=!1,this.onActiveChange=new t.EventEmitter,this.element=e,this.onOutsideClick=this.handleOutsideClick.bind(this)}return e.prototype.ngOnDestroy=function(){window.removeEventListener("click",this.onOutsideClick)},e.prototype.toggleActive=function(e,t){this.active=R.isBlank(t)?!this.active:t,this.active?window.addEventListener("click",this.onOutsideClick):window.removeEventListener("click",this.onOutsideClick),this.onActiveChange.emit(this.active)},e.prototype.handleOutsideClick=function(e){var t=!this.element.nativeElement.contains(e.target);this.otherElement&&t&&(t=!this.otherElement.nativeElement.contains(e.target)),t&&this.toggleActive(e,!1)},e}();$e.decorators=[{type:t.Injectable}],$e.ctorParameters=function(){return[{type:t.ElementRef}]};var We={BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,RETURN:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,HASH_SYMBOL:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,AT_SYMBOL:64,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,DASH:189,PERIOD:190,FORWARD_SLASH:191},Ze=function(e){function n(n,o){var a=e.call(this,n)||this;return a.labels=o,a._query="",a._categoryMap={},a._categories=[],a.persistSelection=!1,a.closeOnSelect=!1,a._select=new t.EventEmitter,a.categorySelected=new t.EventEmitter,a.clickHandler=a.toggleActive.bind(a),a}return te(n,e),Object.defineProperty(n.prototype,"categories",{set:function(e){this._masterCategoryMap=Object.assign({},e),this._categoryMap=Object.assign({},e),this._categories=Object.keys(e)},enumerable:!1,configurable:!0}),n.prototype.ngOnInit=function(){this.element.nativeElement.querySelector("button").addEventListener("click",this.clickHandler)},n.prototype.ngOnDestroy=function(){var e=this.element.nativeElement.querySelector("button");e&&e.removeEventListener("click",this.clickHandler)},n.prototype.onKeyDown=function(e){!this.active||e.keyCode!==We.ESC&&e.keyCode!==We.ENTER||this.toggleActive()},n.prototype.clearSelection=function(){var e=this;this._categories.forEach((function(t){e._categoryMap[t].forEach((function(e){e.selected=!1}))}))},n.prototype.select=function(e,t){R.swallowEvent(e),this.persistSelection&&(this.clearSelection(),t.selected=!0),this._select.emit(t),this.closeOnSelect&&this.toggleActive()},n.prototype.onCategorySelected=function(e){this.categorySelected.emit(e)},n.prototype.clearQuery=function(e){var t=this;R.swallowEvent(e),this._query="",this._categories.forEach((function(e){t._categoryMap[e]=t._masterCategoryMap[e]}))},n.prototype.queryCategories=function(e){var t=this;this._query=e,this._queryTimeout&&clearTimeout(this._queryTimeout),this._queryTimeout=setTimeout((function(){t._categories.forEach((function(n){t.search.compare?t._categoryMap[n]=t._masterCategoryMap[n].filter((function(n){return t.search.compare(e,n)})):t._categoryMap[n]=t._masterCategoryMap[n].filter((function(t){return~t.label.toLowerCase().indexOf(e.toLowerCase())}))}))}),this.search.debounce||300)},n.prototype.executeClickCallback=function(e,t){t.callback(e),this.closeOnSelect&&this.toggleActive()},n}($e);Ze.decorators=[{type:t.Component,args:[{selector:"novo-category-dropdown",template:'\n <ng-content select="button"></ng-content>\n <div class="dropdown-container" *ngIf="active">\n <div class="novo-category-dropdown-search" *ngIf="search" data-automation-id="novo-category-dropdown-search">\n <input type="text" [placeholder]="search.placeholder || labels.search" [value]="_query" (input)="queryCategories($event.target.value)"/>\n <i class="bhi-search" *ngIf="!_query"></i>\n <i class="bhi-times" *ngIf="_query" (click)="clearQuery($event)"></i>\n </div>\n <novo-nav theme="white" [outlet]="novoCategoryDropdownOutlet" direction="vertical">\n <novo-tab *ngFor="let category of _categories" [attr.data-automation-id]="category" (activeChange)="onCategorySelected(category)">\n <span>{{ category }} ({{ _categoryMap[category].length }})</span>\n </novo-tab>\n </novo-nav>\n <novo-nav-outlet #novoCategoryDropdownOutlet>\n <novo-nav-content *ngFor="let category of _categories">\n <novo-list direction="vertical">\n <novo-list-item *ngFor="let item of _categoryMap[category]" (click)="select($event, item)" [attr.data-automation-id]="item.label">\n <item-content>{{ item.label }}</item-content>\n <item-end class="novo-category-dropdown-hover" *ngIf="item.hoverText && !item.selected">{{ item.hoverText }}</item-end>\n <item-end class="novo-category-dropdown-hover" *ngIf="item.hoverIcon && !item.selected"><i class="bhi-{{ item.hoverIcon }}"></i></item-end>\n <item-end *ngIf="item.selected"><i class="bhi-check"></i></item-end>\n </novo-list-item>\n <novo-list-item *ngIf="_categoryMap[category].length === 0 && search" class="novo-category-dropdown-empty-item">\n <item-content>{{ search.emptyMessage || labels.noItems }}</item-content>\n </novo-list-item>\n </novo-list>\n </novo-nav-content>\n </novo-nav-outlet>\n <footer *ngIf="footer" class="novo-category-dropdown-footer-align-{{ footer.align || \'right\' }}">\n <a *ngFor="let link of footer.links" (click)="executeClickCallback($event, link)">{{ link.label }}</a>\n </footer>\n </div>\n ',host:{"(keydown)":"onKeyDown($event)","[class.active]":"active"}}]}],Ze.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne}]},Ze.propDecorators={persistSelection:[{type:t.Input}],closeOnSelect:[{type:t.Input}],search:[{type:t.Input}],footer:[{type:t.Input}],_select:[{type:t.Output,args:["itemSelected"]}],categorySelected:[{type:t.Output}],categories:[{type:t.Input}]};var Ye=function(){function e(){this.theme="",this.direction="",this.condensed=!1,this.items=[]}return e.prototype.select=function(e){this.items.forEach((function(e){e.active,e.active=!1})),e.active=!0,this.outlet&&this.outlet.show(this.items.indexOf(e));var t=document.querySelector("novo-tab-link.active span.indicator");t&&(t.style.opacity=.99,setTimeout((function(){t.style.opacity=1}),10))},e.prototype.add=function(e){0===this.items.length&&(e.active=!0),this.items.push(e)},e}();Ye.decorators=[{type:t.Component,args:[{selector:"novo-nav",template:"<ng-content></ng-content>"}]}],Ye.propDecorators={theme:[{type:t.Input}],direction:[{type:t.Input}],outlet:[{type:t.Input}],router:[{type:t.Input}],condensed:[{type:t.HostBinding,args:["class.condensed"]},{type:t.Input}]};var qe=function(){function e(e){this.active=!1,this.disabled=!1,this.activeChange=new t.EventEmitter,this.nav=e,this.nav.add(this)}return e.prototype.select=function(){this.disabled||(this.activeChange.emit(!0),this.nav.select(this))},e}();qe.decorators=[{type:t.Component,args:[{selector:"novo-tab",host:{"(click)":"select()","[class.active]":"active","[class.disabled]":"disabled"},template:'\n <div class="novo-tab-link">\n <ng-content></ng-content>\n </div>\n <span class="indicator"></span>\n '}]}],qe.ctorParameters=function(){return[{type:Ye}]},qe.propDecorators={active:[{type:t.Input}],disabled:[{type:t.Input}],activeChange:[{type:t.Output}]};var Je=function(){function e(e){this.active=!1,this.disabled=!1,this.nav=e,this.nav.add(this)}return e.prototype.select=function(){this.disabled||this.nav.select(this)},e}();Je.decorators=[{type:t.Component,args:[{selector:"novo-tab-button",host:{"(click)":"select()","[class.active]":"active","[class.disabled]":"disabled"},template:"<ng-content></ng-content>"}]}],Je.ctorParameters=function(){return[{type:Ye}]},Je.propDecorators={active:[{type:t.Input}],disabled:[{type:t.Input}]};var Xe=function(){function e(e){this.active=!1,this.disabled=!1,this.nav=e,this.nav.add(this)}return e.prototype.select=function(){this.disabled||this.nav.select(this)},e}();Xe.decorators=[{type:t.Component,args:[{selector:"novo-tab-link",host:{"(click)":"select()","[class.active]":"active","[class.disabled]":"disabled"},template:'\n <div class="novo-tab-link">\n <ng-content></ng-content>\n </div>\n <span class="indicator"></span>\n '}]}],Xe.ctorParameters=function(){return[{type:Ye}]},Xe.propDecorators={active:[{type:t.Input}],disabled:[{type:t.Input}]};var Qe=function(){function e(){this.items=[]}return e.prototype.show=function(e){var t=this.items[e];this.items.forEach((function(e){e.active,e.active=!1})),t.active=!0},e.prototype.add=function(e){0===this.items.length&&(e.active=!0),this.items.push(e)},e}();Qe.decorators=[{type:t.Component,args:[{selector:"novo-nav-outlet",template:"<ng-content></ng-content>"}]}];var et=function(e){this.active=!1,e.add(this)};et.decorators=[{type:t.Component,args:[{selector:"novo-nav-content",host:{"[class.active]":"active"},template:"<ng-content></ng-content>"}]}],et.ctorParameters=function(){return[{type:Qe}]},et.propDecorators={active:[{type:t.Input}]};var tt=function(){function e(e){this.active=!1,this.active=this.active||!1,this.outlet=e}return e.prototype.show=function(e){try{var t=this.outlet.items.indexOf(this.forElement);t>-1&&this.outlet.show(t)}catch(e){}},e}();tt.decorators=[{type:t.Component,args:[{selector:"novo-nav-header",host:{"[class.active]":"active","(click)":"show($event)"},template:"<ng-content></ng-content>"}]}],tt.ctorParameters=function(){return[{type:Qe}]},tt.propDecorators={active:[{type:t.Input}],forElement:[{type:t.Input,args:["for"]}]};var nt=function(){};nt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[Ye,qe,Je,Xe,Qe,et,tt],exports:[Ye,qe,Je,Xe,Qe,et,tt]}]}];var ot=function(e){this.element=e};ot.decorators=[{type:t.Component,args:[{selector:"novo-list",host:{"[class.vertical-list]":'direction === "vertical"',"[class.horizontal-list]":'direction === "horizontal"',"[attr.theme]":"theme"},template:"\n <ng-content></ng-content>\n "}]}],ot.ctorParameters=function(){return[{type:t.ElementRef}]},ot.propDecorators={theme:[{type:t.Input}],direction:[{type:t.Input}]};var at=function(){function e(e){this.element=e,this.avatar=!1}return e.prototype.ngOnInit=function(){this.avatar=!!this.element.nativeElement.querySelector("item-avatar")},e}();at.decorators=[{type:t.Component,args:[{selector:"novo-list-item",template:'\n <div class="list-item" [ngClass]="{\'avatar\': avatar}">\n <ng-content select="item-header"></ng-content>\n <ng-content select="item-content"></ng-content>\n </div>\n <ng-content></ng-content>\n <ng-content select="item-end"></ng-content>\n '}]}],at.ctorParameters=function(){return[{type:t.ElementRef}]};var it=function(){function e(){}return e.prototype.ngOnChanges=function(e){this.iconClass=this.icon?"bhi-"+this.icon:null,this.classMap=[this.iconClass,this.icon]},e.prototype.ngOnInit=function(){this.ngOnChanges()},e}();it.decorators=[{type:t.Component,args:[{selector:"item-avatar",template:'\n <i *ngIf="iconClass" [ngClass]="classMap" theme="contained"></i>\n '}]}],it.propDecorators={icon:[{type:t.Input}]};var rt=function(){};rt.decorators=[{type:t.Component,args:[{selector:"item-title",template:"\n <h6><ng-content></ng-content></h6>\n "}]}];var st=function(){};st.decorators=[{type:t.Component,args:[{selector:"item-header",template:'\n <ng-content select="item-avatar"></ng-content>\n <ng-content select="item-title"></ng-content>\n <ng-content select="item-header-end"></ng-content>\n '}]}];var lt=function(){};lt.decorators=[{type:t.Component,args:[{selector:"item-header-end",template:"\n <ng-content></ng-content>\n "}]}];var ct=function(){};ct.decorators=[{type:t.Component,args:[{selector:"item-content",host:{"[class.vertical-list]":'direction === "vertical"',"[class.horizontal-list]":'direction === "horizontal"'},template:"\n <ng-content></ng-content>\n "}]}],ct.propDecorators={direction:[{type:t.Input}]};var dt=function(){};dt.decorators=[{type:t.Component,args:[{selector:"item-end",template:"\n <ng-content></ng-content>\n "}]}];var pt=function(){};pt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[ot,at,it,rt,ct,dt,st,lt],exports:[ot,at,it,rt,st,ct,dt,lt]}]}];var ut=function(){};ut.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,nt,pt],declarations:[Ze],exports:[Ze]}]}];var mt=function(){function e(e){this.componentFactoryResolver=e}return e.prototype.append=function(e,n,o,a){var i=this.componentFactoryResolver.resolveComponentFactory(e),r=n.injector,s=a?0:n.length;return n.createComponent(i,s,t.Injector.create({providers:o,parent:r}))},e}();mt.decorators=[{type:t.Injectable}],mt.ctorParameters=function(){return[{type:t.ComponentFactoryResolver}]};var ht={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return ft})),multi:!0},gt=function(){function e(){this.disabled=!1,this.select=new t.EventEmitter,this.remove=new t.EventEmitter,this.deselect=new t.EventEmitter}return Object.defineProperty(e.prototype,"type",{set:function(e){this._type=e?e.toLowerCase():null},enumerable:!1,configurable:!0}),e.prototype.onRemove=function(e){return e&&(e.stopPropagation(),e.preventDefault()),this.remove.emit(e),!1},e.prototype.onSelect=function(e){return e&&(e.stopPropagation(),e.preventDefault()),this.select.emit(e),!1},e.prototype.onDeselect=function(e){return e&&(e.stopPropagation(),e.preventDefault()),this.deselect.emit(e),!1},e}();gt.decorators=[{type:t.Component,args:[{selector:"chip,novo-chip",template:'\n <span (click)="onSelect($event)" (mouseenter)="onSelect($event)" (mouseleave)="onDeselect($event)" [ngClass]="_type">\n <i *ngIf="_type" class="bhi-circle"></i>\n <span><ng-content></ng-content></span>\n </span>\n <i class="bhi-close" *ngIf="!disabled" (click)="onRemove($event)"></i>\n '}]}],gt.propDecorators={type:[{type:t.Input}],disabled:[{type:t.Input}],select:[{type:t.Output}],remove:[{type:t.Output}],deselect:[{type:t.Output}]};var ft=function(){function e(e,n,o){this.element=e,this.componentUtils=n,this.labels=o,this.closeOnSelect=!1,this.placeholder="",this._disablePickerInput=!1,this.changed=new t.EventEmitter,this.focus=new t.EventEmitter,this.blur=new t.EventEmitter,this.typing=new t.EventEmitter,this.items=[],this.selected=null,this.config={},this._value="",this._items=new u.ReplaySubject(1),this.onModelChange=function(){},this.onModelTouched=function(){}}return Object.defineProperty(e.prototype,"disablePickerInput",{get:function(){return this._disablePickerInput},set:function(e){this._disablePickerInput=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.setItems()},Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){this.itemToAdd="",e!==this._value&&(this._value=e,this.changed.emit({value:e,rawValue:this.items}),this.onModelChange(e))},enumerable:!1,configurable:!0}),e.prototype.clearValue=function(){this.items=[],this._items.next(this.items),this.value=null,this.changed.emit({value:this.value,rawValue:this.items}),this.onModelChange(this.value)},e.prototype.setItems=function(){var e,t,n=this;if(this.items=[],this.model&&Array.isArray(this.model)){var o=[];try{for(var a=ne(this.model),i=a.next();!i.done;i=a.next()){var r=i.value,s=void 0;this.source&&this.source.format&&R.validateInterpolationProps(this.source.format,r)&&(s=R.interpolate(this.source.format,r)),this.source&&s&&s!==this.source.format?this.items.push({value:r,label:s}):this.source.getLabels&&"function"==typeof this.source.getLabels?o.push(r):this.source.options&&Array.isArray(this.source.options)?this.items.push(this.getLabelFromOptions(r)):this.source.categoryMap&&this.source.categoryMap.size?this.items.push(r):this.items.push({value:r,label:r})}}catch(t){e={error:t}}finally{try{i&&!i.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}o.length>0&&this.source&&this.source.getLabels&&"function"==typeof this.source.getLabels&&this.source.getLabels(o).then((function(e){var t,o;try{for(var a=ne(e),i=a.next();!i.done;i=a.next()){var r=i.value;r.hasOwnProperty("label")?n.items.push({value:r,label:r.label}):n.source.options&&Array.isArray(n.source.options)?n.items.push(n.getLabelFromOptions(r)):n.items.push(r)}}catch(e){t={error:e}}finally{try{i&&!i.done&&(o=a.return)&&o.call(a)}finally{if(t)throw t.error}}n._items.next(n.items)}))}this.changed.emit({value:this.model,rawValue:this.items}),this._items.next(this.items)},e.prototype.getLabelFromOptions=function(e){var t=e,n=this.source.options.find((function(t){return t.value===e}));return!n&&e.hasOwnProperty("id")&&(n=this.source.options.find((function(t){return t.value===e.id})),t=e.id),{value:t,label:n?n.label:e}},e.prototype.deselectAll=function(e){this.selected=null,this.hidePreview()},e.prototype.select=function(e,t){this.blur.emit(e),this.deselectAll(),this.selected=t,this.showPreview()},e.prototype.deselect=function(e,t){this.blur.emit(e),this.deselectAll()},e.prototype.onTyping=function(e){this.typing.emit(e)},e.prototype.onFocus=function(e){this.deselectAll(),this.element.nativeElement.classList.add("selected"),this.focus.emit(e)},e.prototype.add=function(e){if(e&&!(e instanceof Event)){this.items.push(e),this.value=this.source&&this.source.valueFormatter?this.source.valueFormatter(this.items):this.items.map((function(e){return e.value}));var t=this.element.nativeElement.querySelector("novo-picker > input");t&&t.focus()}this._items.next(this.items)},e.prototype.remove=function(e,t){e&&(e.stopPropagation(),e.preventDefault()),this.items.splice(this.items.indexOf(t),1),this.deselectAll(),this.value=this.source&&this.source.valueFormatter?this.source.valueFormatter(this.items):this.items.map((function(e){return e.value})),this.changed.emit({value:this.value.length?this.value:"",rawValue:this.items}),this.onModelChange(this.value.length?this.value:""),this._items.next(this.items)},e.prototype.onKeyDown=function(e){e.keyCode===We.BACKSPACE&&e.target&&0===e.target.value.length&&this.items.length&&(e&&(e.stopPropagation(),e.preventDefault()),this.selected?this.remove(e,this.selected):this.select(e,this.items[this.items.length-1]))},e.prototype.onTouched=function(e){this.element.nativeElement.classList.remove("selected"),this.onModelTouched(),this.blur.emit(e)},e.prototype.writeValue=function(e){this.model=e,this.setItems()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this._disablePickerInput=e},e.prototype.showPreview=function(){this.source.previewTemplate&&(this.popup||(this.popup=this.componentUtils.append(this.source.previewTemplate,this.preview)),this.popup.instance.match=this.selected)},e.prototype.hidePreview=function(){this.popup&&(this.popup.destroy(),this.popup=null)},e}();ft.decorators=[{type:t.Component,args:[{selector:"chips,novo-chips",providers:[ht],template:'\n <div class="novo-chip-container">\n <novo-chip\n *ngFor="let item of _items | async"\n [type]="type || item?.value?.searchEntity"\n [class.selected]="item == selected"\n [disabled]="disablePickerInput"\n (remove)="remove($event, item)"\n (select)="select($event, item)"\n (deselect)="deselect($event, item)">\n {{ item.label }}\n </novo-chip>\n </div>\n <div class="chip-input-container" *ngIf="!maxlength || (maxlength && items.length < maxlength)">\n <novo-picker\n clearValueOnSelect="true"\n [closeOnSelect]="closeOnSelect"\n [config]="source"\n [disablePickerInput]="disablePickerInput"\n [placeholder]="placeholder"\n [(ngModel)]="itemToAdd"\n (select)="add($event)"\n (keydown)="onKeyDown($event)"\n (focus)="onFocus($event)"\n (typing)="onTyping($event)"\n (blur)="onTouched($event)"\n [selected]="items"\n [overrideElement]="element">\n </novo-picker>\n </div>\n <div class="preview-container">\n <span #preview></span>\n </div>\n <i class="bhi-search" [class.has-value]="items.length" *ngIf="!disablePickerInput"></i>\n <label class="clear-all" *ngIf="items.length && !disablePickerInput" (click)="clearValue()">{{ labels.clearAll }} <i class="bhi-times"></i></label>\n ',host:{"[class.with-value]":"items.length > 0","[class.disabled]":"disablePickerInput"}}]}],ft.ctorParameters=function(){return[{type:t.ElementRef},{type:mt},{type:Ne}]},ft.propDecorators={closeOnSelect:[{type:t.Input}],placeholder:[{type:t.Input}],source:[{type:t.Input}],maxlength:[{type:t.Input}],type:[{type:t.Input}],disablePickerInput:[{type:t.Input}],changed:[{type:t.Output}],focus:[{type:t.Output}],blur:[{type:t.Output}],typing:[{type:t.Output}],preview:[{type:t.ViewChild,args:["preview",{read:t.ViewContainerRef}]}],value:[{type:t.Input}]};var yt=function(){function e(e,n,o,a,i){this.overlay=e,this.viewContainerRef=n,this.zone=o,this.changeDetectorRef=a,this.document=i,this.id="novo-overlay-"+Date.now(),this.position="default",this.scrollStrategy="reposition",this.closeOnSelect=!0,this.select=new t.EventEmitter,this.closing=new t.EventEmitter}return e.prototype.ngOnDestroy=function(){this.destroyOverlay()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlayRef&&this.overlayRef.hasAttached()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parent",{get:function(){return this._parent},set:function(e){this._parent=e,this.checkSizes()},enumerable:!1,configurable:!0}),e.prototype.openPanel=function(){var e=this;this.overlayRef?this.checkSizes():this.createOverlay(this.template),this.overlayRef&&!this.overlayRef.hasAttached()&&(this.overlayRef.attach(this.portal),this.closingActionsSubscription=this.subscribeToClosingActions()),this.changeDetectorRef.markForCheck(),setTimeout((function(){e.overlayRef&&e.overlayRef.updatePosition()}))},e.prototype.closePanel=function(){var e=this;this.zone.run((function(){e.overlayRef&&e.overlayRef.hasAttached()&&(e.overlayRef.detach(),e.closingActionsSubscription.unsubscribe()),e.closing.emit(!0),e.panelOpen&&e.changeDetectorRef.markForCheck()}))},e.prototype.onClosingAction=function(e){this.closePanel()},Object.defineProperty(e.prototype,"panelClosingActions",{get:function(){return u.merge(this.outsideClickStream)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"outsideClickStream",{get:function(){var e=this;return this.document?u.merge(u.fromEvent(this.document,"mousedown"),u.fromEvent(this.document,"touchend")).pipe(g.filter((function(t){var n=t.target,o=e.panelOpen&&n!==e.getConnectedElement().nativeElement&&!e.getConnectedElement().nativeElement.contains(n)&&!!e.overlayRef&&!e.overlayRef.overlayElement.contains(n);return e.panelOpen&&e.overlayRef&&e.overlayRef.overlayElement.contains(n)&&e.closeOnSelect&&e.select.emit(t),o}))):u.of()},enumerable:!1,configurable:!0}),e.prototype.subscribeToClosingActions=function(){var e=this,t=this.zone.onStable.asObservable().pipe(g.first());return u.merge(t).pipe(g.switchMap((function(){return e.panelClosingActions})),g.first()).subscribe((function(t){return e.onClosingAction(t)}))},e.prototype.createOverlay=function(e){var t=this;this.portal=new c.TemplatePortal(e,this.viewContainerRef),this.overlayRef=this.overlay.create(this.getOverlayConfig()),this.overlayRef.backdropClick().subscribe((function(){return t.closePanel()}))},e.prototype.destroyOverlay=function(){this.overlayRef&&(this.closePanel(),this.overlayRef.dispose(),this.overlayRef=void 0)},e.prototype.getOverlayConfig=function(){var e=new l.OverlayConfig;return this.width?e.width=this.width:e.width=this.getHostWidth(),this.height&&(e.height=this.height),e.positionStrategy=this.getPosition(),e.hasBackdrop=!1,e.direction="ltr",e.scrollStrategy=this.getScrollStrategy(),e},e.prototype.getPosition=function(){if("center"===this.position)return this.overlay.position().connectedTo(this.getConnectedElement(),{originX:"start",originY:"center"},{overlayX:"start",overlayY:"center"}).withFallbackPosition({originX:"start",originY:"top"},{overlayX:"start",overlayY:"top"}).withFallbackPosition({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"bottom"});var e=oe(this.position.includes("right")?["end","start"]:["start","end"],2),t=e[0],n=e[1],o=oe(this.position.includes("top")?["top","bottom"]:["bottom","top"],2),a=o[0],i=o[1],r=this.overlay.position().connectedTo(this.getConnectedElement(),{originX:t,originY:a},{overlayX:t,overlayY:i}).withDirection("ltr");return"bottom"===this.position?r=r.withFallbackPosition({originX:n,originY:"bottom"},{overlayX:n,overlayY:"top"}):("right"===this.position||"default"===this.position||this.position.includes("above-below"))&&(r=r.withFallbackPosition({originX:t,originY:"top"},{overlayX:t,overlayY:"bottom"}).withFallbackPosition({originX:n,originY:"bottom"},{overlayX:n,overlayY:"top"}).withFallbackPosition({originX:n,originY:"top"},{overlayX:n,overlayY:"bottom"}),this.position.includes("above-below")||(r=r.withFallbackPosition({originX:t,originY:"center"},{overlayX:t,overlayY:"center"}).withFallbackPosition({originX:n,originY:"center"},{overlayX:n,overlayY:"center"}))),r},e.prototype.getScrollStrategy=function(){switch(this.scrollStrategy){case"block":return this.overlay.scrollStrategies.block();case"reposition":return this.overlay.scrollStrategies.reposition();default:return this.overlay.scrollStrategies.close()}},e.prototype.checkSizes=function(){this.overlayRef&&(this.width||(this.overlayRef.getConfig().width=this.getHostWidth()),this.height&&(this.overlayRef.getConfig().height=this.height),this.overlayRef.updateSize(this.overlayRef.getConfig()),this.overlayRef.updatePosition(),this.changeDetectorRef.markForCheck())},e.prototype.getConnectedElement=function(){return this.parent},e.prototype.getHostWidth=function(){return this.getConnectedElement().nativeElement.getBoundingClientRect().width},e}();yt.decorators=[{type:t.Component,args:[{selector:"novo-overlay-template",template:'\n <ng-template>\n <div class="novo-overlay-panel" role="listbox" [id]="id" #panel><ng-content></ng-content></div>\n </ng-template>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],yt.ctorParameters=function(){return[{type:l.Overlay},{type:t.ViewContainerRef},{type:t.NgZone},{type:t.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[s.DOCUMENT]}]}]},yt.propDecorators={template:[{type:t.ViewChild,args:[t.TemplateRef]}],panel:[{type:t.ViewChild,args:["panel"]}],position:[{type:t.Input}],scrollStrategy:[{type:t.Input}],width:[{type:t.Input}],height:[{type:t.Input}],closeOnSelect:[{type:t.Input}],select:[{type:t.Output}],closing:[{type:t.Output}],parent:[{type:t.Input}]};var vt=function(){};vt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,l.OverlayModule,h.ScrollingModule],declarations:[yt],exports:[yt,h.ScrollingModule]}]}];var bt={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Ct})),multi:!0},Ct=function(){function e(e){this.ref=e,this.onChange=new t.EventEmitter,this._disabled=!1,this.onModelChange=function(){},this.onModelTouched=function(){}}return Object.defineProperty(e.prototype,"disabled",{get:function(){return this._disabled},set:function(e){this._disabled=!e},enumerable:!1,configurable:!0}),e.prototype.onKeydown=function(e){e.keyCode===We.SPACE&&(e.preventDefault(),this.toggle(e))},e.prototype.toggle=function(e){e&&(e.stopPropagation(),e.preventDefault()),this.disabled||(this.model=!this.model,this.onChange.next(this.model),this.onModelChange(this.model),this.ref.markForCheck())},e.prototype.writeValue=function(e){this.model=e,this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e}();Ct.decorators=[{type:t.Component,args:[{selector:"novo-switch",providers:[bt],template:'\n <div (click)="toggle($event)">\n <div class="novo-switch-container">\n <div class="novo-switch-bar"></div>\n <div class="novo-switch-thumb-container">\n <div class="novo-switch-thumb"></div>\n </div>\n </div>\n <div class="novo-switch-label"><ng-content></ng-content></div>\n </div>\n ',host:{role:"checkbox","[attr.aria-checked]":"model","[attr.aria-disabled]":"disabled","(keydown)":"onKeydown($event)","[class]":"theme"}}]}],Ct.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},Ct.propDecorators={theme:[{type:t.Input}],onChange:[{type:t.Output}],disabled:[{type:t.Input,args:["disabled"]}]};var St=function(){};St.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule],declarations:[Ct],exports:[Ct]}]}];var kt=function(){function e(e,t){this._term="",this.selected=[],this.matches=[],this.hasError=!1,this.isLoading=!1,this.isStatic=!0,this.page=0,this.lastPage=!1,this.autoSelectFirstOption=!0,this.optionsFunctionHasChanged=!1,this.selectingMatches=!1,this.element=e,this.ref=t,this.scrollHandler=this.onScrollDown.bind(this)}return e.prototype.cleanUp=function(){var e=this.getListElement();e&&e.hasAttribute("scrollListener")&&(e.removeAttribute("scrollListener"),e.removeEventListener("scroll",this.scrollHandler))},e.prototype.onScrollDown=function(e){var t=e.target;t&&(t.offsetHeight+t.scrollTop>=t.scrollHeight-300&&(e.stopPropagation(),this.lastPage||this.isLoading||this.processSearch()))},Object.defineProperty(e.prototype,"term",{get:function(){return this._term},set:function(e){this.shouldSearch(e)?(this._term=e,this.page=0,this.optionsFunctionHasChanged=!1,this.matches=[],this.processSearch(!0)):this.addScrollListener()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"config",{get:function(){return this._config},set:function(e){this.config&&this.config.options!==e.options&&(this.optionsFunctionHasChanged=!0),this._config=e},enumerable:!1,configurable:!0}),e.prototype.shouldSearch=function(e){var t=e!==this._term,n=0===this.page;return t||n||this.optionsFunctionHasChanged},e.prototype.addScrollListener=function(){if(this.config.enableInfiniteScroll){var e=this.getListElement();e&&!e.hasAttribute("scrollListener")&&(e.setAttribute("scrollListener","true"),e.addEventListener("scroll",this.scrollHandler))}},e.prototype.processSearch=function(e){var t=this;this.hasError=!1,this.isLoading=!0,this.ref.markForCheck(),this.search(this.term).subscribe((function(n){e&&(t.matches=[]),t.isStatic?t.matches=t.filterData(n):(t.matches=t.matches.concat(n),t.lastPage=n&&!n.length),t.matches.length>0&&t.autoSelectFirstOption&&!t.selectingMatches&&t.nextActiveMatch(),t.isLoading=!1,t.ref.markForCheck(),setTimeout((function(){t.overlay.updatePosition(),t.addScrollListener()}))}),(function(e){t.hasError=t.term&&0!==t.term.length,t.isLoading=!1,t.lastPage=!0,t.term&&0!==t.term.length&&console.error(e),t.ref.markForCheck()}))},e.prototype.search=function(e,t){var n=this,o=this.config.options;return u.from(new Promise((function(t,a){if(o)if(Array.isArray(o))n.isStatic=!0,t(n.structureArray(o));else if(n.shouldCallOptionsFunction(e))if(o.hasOwnProperty("reject")&&o.hasOwnProperty("resolve")||Object.getPrototypeOf(o).hasOwnProperty("then"))n.isStatic=!1,o.then(n.structureArray.bind(n)).then(t,a);else{if("function"!=typeof o)throw a("The data provided is not an array or a promise"),new Error("The data provided is not an array or a promise");n.isStatic=!1,o(e,++n.page).then(n.structureArray.bind(n)).then(t,a)}else if(n.config.defaultOptions)if(n.isStatic=!1,"function"==typeof n.config.defaultOptions){var i=n.config.defaultOptions(e,++n.page);Object.getPrototypeOf(i).hasOwnProperty("then")?i.then(n.structureArray.bind(n)).then(t,a):t(n.structureArray(i))}else t(n.structureArray(n.config.defaultOptions));else a("No search term");else a("error")})))},e.prototype.shouldCallOptionsFunction=function(e){return this.config&&"minSearchLength"in this.config&&Number.isInteger(this.config.minSearchLength)?"string"==typeof e&&e.length>=this.config.minSearchLength:!(!e||!e.length)},e.prototype.structureArray=function(e){var t=this,n=e.data?e.data:e;return!n||"string"!=typeof n[0]&&"number"!=typeof n[0]?n.map((function(e){var n=t.config.field?e[t.config.field]:e.value||e;return t.config.valueFormat&&(n=R.interpolate(t.config.valueFormat,e)),{value:n,label:t.config.format?R.interpolate(t.config.format,e):e.label||String(n),data:e}})):e.map((function(e){return{value:e,label:e}}))},e.prototype.filterData=function(e){var t=this;return this.term&&e?e.filter((function(e){return~String(e.label).toLowerCase().indexOf(t.term.toLowerCase())})):e},e.prototype.selectActiveMatch=function(){this.selectMatch()},e.prototype.prevActiveMatch=function(){var e=this.matches.indexOf(this.activeMatch);this.activeMatch=this.matches[e-1<0?this.matches.length-1:e-1],this.scrollToActive(),this.ref.markForCheck()},e.prototype.nextActiveMatch=function(){var e=this.matches.indexOf(this.activeMatch);this.activeMatch=this.matches[e+1>this.matches.length-1?0:e+1],this.scrollToActive(),this.ref.markForCheck()},e.prototype.getListElement=function(){return this.element.nativeElement},e.prototype.getChildrenOfListElement=function(){var e=[];return this.getListElement()&&(e=this.getListElement().children),e},e.prototype.scrollToActive=function(){var e=this.getListElement(),t=this.getChildrenOfListElement()[this.matches.indexOf(this.activeMatch)];t&&(e.scrollTop=t.offsetTop)},e.prototype.selectActive=function(e){this.activeMatch=e},e.prototype.isActive=function(e){return this.activeMatch===e},e.prototype.selectMatch=function(e,t){e&&(e.stopPropagation(),e.preventDefault());var n=this.activeMatch;return n&&this.parent&&(this.parent.value=n,this.selectingMatches=!0,this.parent.closeOnSelect&&(this.parent.hideResults(),this.selectingMatches=!1)),this.ref.markForCheck(),!1},e.prototype.escapeRegexp=function(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")},e.prototype.highlight=function(e,t){return t?e.replace(new RegExp(this.escapeRegexp(t.trim()),"gi"),"<strong>$&</strong>"):e},e.prototype.preselected=function(e){if(this.config.preselected){var t=this.config.preselected;return-1!==this.selected.findIndex((function(n){return t(e,n)}))}return-1!==this.selected.findIndex((function(t){var n=!1;return t&&t.value&&e&&e.value&&(n=t.value.id&&e.value.id?t.value.id===e.value.id:t.value instanceof Object&&t.value.hasOwnProperty("value")?t.value.value===e.value:t.value===e.value),n}))},e}();kt.decorators=[{type:t.Directive}],kt.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},kt.propDecorators={matches:[{type:t.Input}]};var It=function(e){function t(t,n,o){var a=e.call(this,t,o)||this;return a.labels=n,a}return te(t,e),Object.defineProperty(t.prototype,"hasNonErrorMessage",{get:function(){return!this.isLoading&&!this.matches.length&&!this.hasError},enumerable:!1,configurable:!0}),t.prototype.getEmptyMessage=function(){return this.shouldShowMessageForZeroLengthSearch()?this.config.emptyPickerMessage:""===this.term?this.labels.pickerTextFieldEmpty:this.labels.pickerEmpty},t.prototype.shouldShowMessageForZeroLengthSearch=function(){return this.config&&0===this.config.minSearchLength&&""===this.term&&this.config.emptyPickerMessage},t.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},t}(kt);It.decorators=[{type:t.Component,args:[{selector:"picker-results",host:{class:"active"},template:'\n <novo-list *ngIf="matches.length > 0" direction="vertical">\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match)"\n >\n <item-content> <span [innerHtml]="highlight(match.label, term)"></span> </item-content>\n </novo-list-item>\n <novo-loading *ngIf="isLoading && matches.length > 0" theme="line"></novo-loading>\n </novo-list>\n <div class="picker-loader" *ngIf="isLoading && matches.length === 0"><novo-loading theme="line"></novo-loading></div>\n <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>\n <p class="picker-null-results" *ngIf="hasNonErrorMessage">{{ getEmptyMessage() }}</p>\n '}]}],It.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]};var Et={};function wt(e){t.isDevMode()&&!(e in Et)&&(Et[e]=!0,console.warn(e))}var Tt={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Ot})),multi:!0},Ot=function(){function e(e,n,o){this.element=e,this.componentUtils=n,this.ref=o,this.closeOnSelect=!0,this.selected=[],this.appendToBody=!1,this.parentScrollAction="close",this.side="left",this.autoSelectFirstOption=!0,this._disablePickerInput=!1,this.changed=new t.EventEmitter,this.select=new t.EventEmitter,this.focus=new t.EventEmitter,this.blur=new t.EventEmitter,this.typing=new t.EventEmitter,this.term="",this.onModelChange=function(){},this.onModelTouched=function(){}}return Object.defineProperty(e.prototype,"disablePickerInput",{get:function(){return this._disablePickerInput},set:function(e){this._disablePickerInput=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.overrideElement&&(this.element=this.overrideElement),this.appendToBody&&wt("'appendToBody' has been deprecated. Please remove this attribute."),this.resultsComponent=this.config.resultsTemplate||It,u.fromEvent(this.input.nativeElement,"paste").pipe(g.debounceTime(250),g.distinctUntilChanged()).subscribe((function(t){return e.onDebouncedKeyup(t)}),(function(t){return e.hideResults(t)})),u.fromEvent(this.input.nativeElement,"keyup").pipe(g.debounceTime(250),g.distinctUntilChanged()).subscribe((function(t){return e.onDebouncedKeyup(t)}),(function(t){return e.hideResults(t)}))},e.prototype.onDebouncedKeyup=function(e){[We.ESC,We.UP,We.DOWN,We.ENTER,We.TAB].includes(e.keyCode)||this.show(e.target.value)},e.prototype.openPanel=function(){this.container.openPanel()},e.prototype.closePanel=function(){this.container.closePanel()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.container&&this.container.panelOpen},enumerable:!1,configurable:!0}),e.prototype.show=function(e){this.openPanel(),this.showResults(e)},e.prototype.onKeyDown=function(e){if(this.disablePickerInput)R.swallowEvent(e);else if(this.panelOpen&&!this.disablePickerInput){if(e.keyCode===We.ESC||e.keyCode===We.TAB)return void this.hideResults();if(e.keyCode===We.UP)return this.popup.instance.prevActiveMatch(),void this.ref.markForCheck();if(e.keyCode===We.DOWN)return this.popup.instance.nextActiveMatch(),void this.ref.markForCheck();if(e.keyCode===We.ENTER){var t=this.popup.instance.activeMatch;return void(this.selected.find((function(e){return t&&t.value&&e.value===t.value}))||(this.popup.instance.selectActiveMatch(),this.ref.markForCheck()))}e.keyCode!==We.BACKSPACE&&e.keyCode!==We.DELETE||R.isBlank(this._value)||(this.clearValue(!1),this.closePanel()),e.keyCode===We.DELETE&&R.isBlank(this._value)&&this.clearValue(!0)}},e.prototype.clearValue=function(e){this._value=null,this.select.emit(this._value),this.changed.emit({value:this._value,rawValue:{label:"",value:this._value}}),this.onModelChange(this._value),e&&(this.term="",this.hideResults()),this.ref.markForCheck()},e.prototype.onFocus=function(e){this.panelOpen||this.show(),this.focus.emit(e)},e.prototype.showResults=function(e){this.popup?(this.popup.instance.config=this.config,this.popup.instance.term=this.term,this.popup.instance.selected=this.selected,this.popup.instance.autoSelectFirstOption=this.autoSelectFirstOption,this.ref.markForCheck()):(this.popup=this.componentUtils.append(this.resultsComponent,this.results),this.popup.instance.parent=this,this.popup.instance.config=this.config,this.popup.instance.term=this.term,this.popup.instance.selected=this.selected,this.popup.instance.autoSelectFirstOption=this.autoSelectFirstOption,this.popup.instance.overlay=this.container.overlayRef,this.ref.markForCheck())},e.prototype.hideResults=function(e){this.closePanel(),this.ref.markForCheck()},e.prototype.onOverlayClosed=function(){this.popup&&this.popup.instance&&this.popup.instance.cleanUp&&this.popup.instance.cleanUp()},Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){e?e.value!==this._value?(this.term=this.clearValueOnSelect?"":e.label,this._value=e.value,this.changed.emit({value:e.value,rawValue:{label:this.term,value:e.value}}),this.select.emit(e),this.onModelChange(e.value),this.popup&&(this.popup.instance.selected=this.selected)):(this.changed.emit({value:e.value,rawValue:{label:this.term,value:this._value}}),this.select.emit(e)):(this.term="",this._value=null,this.onModelChange(this._value)),this.ref.markForCheck()},enumerable:!1,configurable:!0}),e.prototype.checkTerm=function(e){this.typing.emit(e),e&&e.length||(this._value=null,this.onModelChange(this._value)),this.ref.markForCheck()},e.prototype.onTouched=function(e){this.onModelTouched(),this.blur.emit(e)},e.prototype.writeValue=function(e){var t=this;this.clearValueOnSelect?this.term="":"string"!=typeof e||this.config.useGetLabels?e&&e.label?this.term=e.label:e&&e.firstName?this.term=e.firstName+" "+e.lastName:e&&e.name?this.term=e.name:"function"==typeof this.config.getLabels?this.config.getLabels(e).then((function(n){t.term=n?n.length?n[0].label||"":n.label||"":e,t.ref.markForCheck()})):e&&e.title?this.term=e.title:this.term=e||"":this.term=e,this._value=e,this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this._disablePickerInput=e},e}();Ot.decorators=[{type:t.Component,args:[{selector:"novo-picker",providers:[Tt],template:'\n <i class="bhi-more" *ngIf="config?.entityIcon && !_value"></i>\n <i class="bhi-{{ config?.entityIcon }} entity-icon {{ config?.entityIcon }}" *ngIf="config?.entityIcon && _value"></i>\n <input\n type="text"\n class="picker-input"\n [(ngModel)]="term"\n [class.entity-picker]="config?.entityIcon"\n [class.entity-selected]="config?.entityIcon && _value"\n (ngModelChange)="checkTerm($event)"\n [placeholder]="placeholder"\n (keydown)="onKeyDown($event)"\n (focus)="onFocus($event)"\n (click)="onFocus($event)"\n (blur)="onTouched($event)"\n autocomplete="off"\n #input\n [disabled]="disablePickerInput"\n />\n <i class="bhi-search" *ngIf="(!_value || clearValueOnSelect) && !disablePickerInput"></i>\n <i\n class="bhi-times"\n [class.entity-selected]="config?.entityIcon && _value"\n *ngIf="_value && !clearValueOnSelect && !disablePickerInput"\n (click)="clearValue(true)"\n ></i>\n <novo-overlay-template class="picker-results-container" [parent]="element" position="above-below" (closing)="onOverlayClosed()">\n <span #results></span>\n <ng-content></ng-content>\n </novo-overlay-template>\n '}]}],Ot.ctorParameters=function(){return[{type:t.ElementRef},{type:mt},{type:t.ChangeDetectorRef}]},Ot.propDecorators={results:[{type:t.ViewChild,args:["results",{read:t.ViewContainerRef,static:!0}]}],config:[{type:t.Input}],placeholder:[{type:t.Input}],clearValueOnSelect:[{type:t.Input}],closeOnSelect:[{type:t.Input}],selected:[{type:t.Input}],appendToBody:[{type:t.Input}],parentScrollSelector:[{type:t.Input}],parentScrollAction:[{type:t.Input}],containerClass:[{type:t.Input}],side:[{type:t.Input}],autoSelectFirstOption:[{type:t.Input}],overrideElement:[{type:t.Input}],disablePickerInput:[{type:t.Input}],changed:[{type:t.Output}],select:[{type:t.Output}],focus:[{type:t.Output}],blur:[{type:t.Output}],typing:[{type:t.Output}],container:[{type:t.ViewChild,args:[yt,{static:!0}]}],input:[{type:t.ViewChild,args:["input",{static:!0}]}]};var Pt=function(){function e(e){this.labels=e}return e.prototype.escapeRegexp=function(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")},e.prototype.highlight=function(e,t){return t&&e?e.replace(new RegExp(this.escapeRegexp(t.trim()),"gi"),"<strong>$&</strong>"):e},e.prototype.getIconForResult=function(e){if(e)switch(e.searchEntity){case"ClientContact":return"person contact";case"ClientCorporation":return"company";case"Opportunity":return"opportunity";case"Candidate":return"candidate";case"Lead":return"lead";case"JobOrder":return"job";case"Placement":return"star placement";case"CorporateUser":return"user";case"CorporationDepartment":return"department";case"JobShift":return"timetable contract";default:return""}return""},e.prototype.renderTimestamp=function(e){var t="";return e&&(t=this.labels.formatDateWithFormat(e,{year:"numeric",month:"numeric",day:"numeric"})),t},e.prototype.renderTimeNoOffset=function(e){var t="";return e&&(e=e.slice(0,19),t=this.labels.formatTime(e)),t},e.prototype.getNameForResult=function(e){if(e)switch(e.searchEntity){case"Lead":case"CorporateUser":case"ClientContact":case"Candidate":case"Person":return"firstName"in e?(e.firstName+" "+e.lastName).trim():(""+(e.name||"")).trim();case"ClientCorporation":return(""+(e.name||"")).trim();case"Opportunity":case"JobOrder":return(e.id+" | "+(e.title||"")).trim();case"Placement":var t=""+e.id;return(e.candidate||e.jobOrder)&&(t=e.candidate&&e.jobOrder?(t+" | "+e.candidate.firstName+" "+e.candidate.lastName+" - "+e.jobOrder.title).trim():e.jobOrder?(t+" | "+e.jobOrder.title).trim():(t+" | "+e.candidate.firstName+" "+e.candidate.lastName).trim()),t;default:return(""+(e.name||"")).trim()}return""},e}();Pt.decorators=[{type:t.Component,args:[{selector:"entity-picker-result",template:'\n <novo-list-item *ngIf="match.data">\n <item-header>\n <item-avatar [icon]="getIconForResult(match.data)"></item-avatar>\n <item-title> <span [innerHtml]="highlight(getNameForResult(match.data), term)"></span> </item-title>\n </item-header>\n <item-content direction="horizontal">\n \x3c!-- COMPANY 1 --\x3e\n <p class="company" *ngIf="match.data.companyName || match.data?.clientCorporation?.name">\n <i class="bhi-company"></i>\n <span [innerHtml]="highlight(match.data.companyName || match.data?.clientCorporation?.name, term)"></span>\n </p>\n \x3c!-- CLIENT CONTACT --\x3e\n <p class="contact" *ngIf="match.data?.clientContact?.firstName">\n <i class="bhi-person contact person"></i>\n <span [innerHtml]="highlight(match.data.clientContact.firstName + \' \' + match.data.clientContact.lastName, term)"></span>\n </p>\n \x3c!-- CANDIDATE --\x3e\n <p class="candidate" *ngIf="match.data.candidate && match.data.searchEntity === \'Placement\'">\n <i class="bhi-candidate"></i>\n <span [innerHtml]="highlight(match.data.candidate.firstName + \' \' + match.data.candidate.lastName, term)"></span>\n </p>\n \x3c!-- START & END DATE --\x3e\n <p class="start-date" *ngIf="match.data.dateBegin && match.data.searchEntity === \'Placement\'">\n <i class="bhi-calendar"></i>\n <span [innerHtml]="renderTimestamp(match.data.dateBegin) + \' - \' + renderTimestamp(match.data.dateEnd)"></span>\n </p>\n \x3c!-- START Date --\x3e\n <p class="start-date" *ngIf="match.data.startTime && match.data.searchEntity === \'JobShift\'">\n <i class="bhi-calendar"></i>\n <span [innerHtml]="renderTimestamp(match.data.startTime)"></span>\n </p>\n \x3c!-- START & END TIME --\x3e\n <p class="start-time" *ngIf="match.data.startTime && match.data.searchEntity === \'JobShift\'">\n <i class="bhi-clock"></i>\n <span [innerHtml]="renderTimeNoOffset(match.data.startTime) + \' - \' + renderTimeNoOffset(match.data.endTime)"></span>\n </p>\n \x3c!-- JOBORDER --\x3e\n <p class="job" *ngIf="match.data.jobOrder && match.data.searchEntity === \'JobShift\'">\n <i class="bhi-job"></i>\n <span [innerHtml]="highlight(match.data.jobOrder.title, term)"></span>\n </p>\n \x3c!-- OPENINGS --\x3e\n <p class="openings" *ngIf="match.data.openings && match.data.searchEntity === \'JobShift\'">\n <i class="bhi-candidate"></i>\n <span>{{ match.data.numAssigned }} / {{ match.data.openings }}</span>\n </p>\n \x3c!-- EMAIL --\x3e\n <p class="email" *ngIf="match.data.email">\n <i class="bhi-email"></i> <span [innerHtml]="highlight(match.data.email, term)"></span>\n </p>\n \x3c!-- PHONE --\x3e\n <p class="phone" *ngIf="match.data.phone">\n <i class="bhi-phone"></i> <span [innerHtml]="highlight(match.data.phone, term)"></span>\n </p>\n \x3c!-- ADDRESS --\x3e\n <p class="location" *ngIf="match.data.address && (match.data.address.city || match.data.address.state)">\n <i class="bhi-location"></i> <span *ngIf="match.data.address.city" [innerHtml]="highlight(match.data.address.city, term)"></span>\n <span *ngIf="match.data.address.city && match.data.address.state">, </span>\n <span *ngIf="match.data.address.state" [innerHtml]="highlight(match.data.address.state, term)"></span>\n </p>\n \x3c!-- STATUS --\x3e\n <p class="status" *ngIf="match.data.status">\n <i class="bhi-info"></i> <span [innerHtml]="highlight(match.data.status, term)"></span>\n </p>\n \x3c!-- OWNER --\x3e\n <p class="owner" *ngIf="match.data.owner && match.data.owner.name && match.data.searchEntity === \'Candidate\'">\n <i class="bhi-person"></i> <span [innerHtml]="highlight(match.data.owner.name, term)"></span>\n </p>\n \x3c!-- PRIMARY DEPARTMENT --\x3e\n <p\n class="primary-department"\n *ngIf="match.data.primaryDepartment && match.data.primaryDepartment.name && match.data.searchEntity === \'CorporateUser\'"\n >\n <i class="bhi-department"></i> <span [innerHtml]="highlight(match.data.primaryDepartment.name, term)"></span>\n </p>\n \x3c!-- OCCUPATION --\x3e\n <p class="occupation" *ngIf="match.data.occupation && match.data.searchEntity === \'CorporateUser\'">\n <i class="bhi-occupation"></i> <span [innerHtml]="highlight(match.data.occupation, term)"></span>\n </p>\n </item-content>\n </novo-list-item>\n '}]}],Pt.ctorParameters=function(){return[{type:Ne}]},Pt.propDecorators={match:[{type:t.Input}],term:[{type:t.Input}]};var At=function(e){function n(n,o,a){var i=e.call(this,n,a)||this;return i.labels=o,i.select=new t.EventEmitter,i}return te(n,e),Object.defineProperty(n.prototype,"hasNonErrorMessage",{get:function(){return!this.isLoading&&!this.matches.length&&!this.hasError},enumerable:!1,configurable:!0}),n.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},n.prototype.selectMatch=function(t,n){return this.select.next(n),e.prototype.selectMatch.call(this,t,n)},n}(kt);At.decorators=[{type:t.Component,args:[{selector:"entity-picker-results",template:'\n <novo-list *ngIf="matches.length > 0" direction="vertical">\n <entity-picker-result\n *ngFor="let match of matches"\n [match]="match"\n [term]="term"\n (click)="selectMatch($event, match)"\n [ngClass]="{ active: isActive(match) }"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match)"\n >\n </entity-picker-result>\n <novo-loading theme="line" *ngIf="isLoading && matches.length > 0"></novo-loading>\n </novo-list>\n <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>\n <p class="picker-null-results" *ngIf="hasNonErrorMessage && term !== \'\'">{{ labels.pickerEmpty }}</p>\n <p class="picker-null-results" *ngIf="hasNonErrorMessage && term === \'\'">{{ labels.pickerTextFieldEmpty }}</p>\n '}]}],At.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]},At.propDecorators={select:[{type:t.Output}]};var Dt=function(e){function t(t,n,o){var a=e.call(this,t,o)||this;return a.labels=n,a}return te(t,e),t.prototype.search=function(){var e=this,t=this.config.options;return u.from(new Promise((function(n,o){if(t){if(!Array.isArray(t))throw o("The data provided is not an array or a promise"),new Error("The data provided is not an array or a promise");e.isStatic=!0,n(t)}else o("error")})))},t.prototype.filterData=function(e){var t=this;return this.term&&e?(this.filteredMatches=e.map((function(e){var n=e.originalData.filter((function(e){return~String(e.label).toLowerCase().indexOf(t.term.toLowerCase())}));return e.data=n,e}),this),this.filteredMatches):""===this.term?(e.forEach((function(e){e.data=e.originalData})),e):e},t.prototype.selectMatch=function(e,t){R.swallowEvent(e),t.indeterminate?(t.indeterminate=!1,t.checked=!0):t.checked=!t.checked;var n=this.activeMatch;return n&&(this.parent.value=n),this.ref.markForCheck(),!1},t}(kt);Dt.decorators=[{type:t.Component,args:[{selector:"checklist-picker-results",host:{class:"active picker-results"},template:'\n <novo-loading theme="line" *ngIf="isLoading && !matches.length"></novo-loading>\n <ul *ngIf="matches.length > 0">\n <span *ngFor="let section of matches; let i = index">\n <li class="header caption" *ngIf="section.data.length > 0">{{ section.label || section.type }}</li>\n <li\n *ngFor="let match of section.data; let i = index"\n [ngClass]="{ checked: match.checked }"\n (click)="selectMatch($event, match)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n >\n <label>\n <i\n [ngClass]="{\n \'bhi-checkbox-empty\': !match.checked,\n \'bhi-checkbox-filled\': match.checked,\n \'bhi-checkbox-indeterminate\': match.indeterminate\n }"\n ></i>\n {{ match.label }}\n </label>\n </li>\n </span>\n </ul>\n <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>\n <p class="picker-null-results" *ngIf="!isLoading && !matches.length && !hasError && term !== \'\'">{{ labels.pickerEmpty }}</p>\n '}]}],Dt.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]};var xt=function(e){function t(t,n,o,a){var i=e.call(this,t,a)||this;return i.renderer=n,i.labels=o,i.customFilterEnabled=!1,i.placeholder="",i.internalMap=new Map,i}return te(t,e),Object.defineProperty(t.prototype,"term",{set:function(e){var t=this;if(this.config.displayAll&&this.config.getItemsForCategoryAsync)throw new Error("[GroupedMultiPickerResults] - you can only have `displayAll` with a static `categoryMap`. Not available with `getItemsForCategoryAsync`");if(this.config.customFilter){if(this.customFilterEnabled=!0,this.customFilterLabel=this.config.customFilter.label,this.customFilterValue=!!this.config.customFilter.defaultFilterValue,this.ref.markForCheck(),!this.customFilterLabel||!this.config.customFilter.matchFunction)throw new Error("[GroupedMultiPickerResults] - custom filter/matchFunction set no label was provided!")}else this.customFilterEnabled=!1;this.config.displayAll&&!this.selectedCategory&&this.setAllCategory(),this.config.placeholder&&(this.placeholder=this.config.placeholder),setTimeout((function(){t.inputElement.nativeElement.focus()}))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"categories",{get:function(){return this.config.categories||this.config.categoryMap?this.config.categories||Array.from(this.config.categoryMap.values()).filter((function(e){return"all"!==e.value})):[]},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){var e=this;this.keyboardSubscription=u.fromEvent(this.inputElement.nativeElement,"keyup").pipe(g.debounceTime(350),g.distinctUntilChanged()).subscribe((function(t){e.searchTerm=t.target.value,e.matches=e.filterData(),e.ref.markForCheck()}))},t.prototype.ngOnDestroy=function(){this.keyboardSubscription.unsubscribe()},t.prototype.setAllCategory=function(){if(this.config.displayAll){this.selectedCategory={value:"all",label:"all"};var e=[];Array.from(this.config.categoryMap.values()).filter((function(e){return"all"!==e.value})).forEach((function(t){return e.push.apply(e,ae(t.items))})),this.matches=this.filter(e),this.config.categoryMap.set("all",{value:"all",label:"All",items:e}),this.ref.markForCheck()}},t.prototype.selectCategory=function(e){this.renderer.setProperty(this.listElement.element.nativeElement,"scrollTop",0),this.inputElement.nativeElement.focus();var t=e.value;this.selectedCategory=e,this.matches=[],this.ref.markForCheck(),this.getNewMatches(e,t)},t.prototype.clearSearchTerm=function(e){R.swallowEvent(e),this.searchTerm="",this.selectCategory({value:this.selectedCategory.value,label:this.selectedCategory.label}),this.ref.markForCheck()},t.prototype.selectMatch=function(t,n){return this.inputElement.nativeElement.focus(),e.prototype.selectMatch.call(this,t)},t.prototype.fireCustomFilter=function(e){var t=this;if(this.customFilterValue=e,this.internalMap.clear(),this.selectCategory){var n=this.selectedCategory.value;this.getNewMatches(this.selectedCategory,n),this.ref.markForCheck()}setTimeout((function(){t.inputElement.nativeElement.focus()}))},t.prototype.filterData=function(){return this.selectedCategory?this.config.categoryMap?this.filter(this.config.categoryMap.get(this.selectedCategory.value).items):this.filter(this.internalMap.get(this.selectedCategory.value).items):[]},t.prototype.getNewMatches=function(e,t){var n=this;if(this.config.categoryMap)this.matches=this.filter(this.config.categoryMap.get(t).items),this.ref.markForCheck();else{if(!this.config.getItemsForCategoryAsync)throw new Error('The "config" for the Chips must include a function "getItemsForCategoryAsync(categoryKey: string)" to retrieve the items by category. Or if you have static data provide a "categoryMap"');this.internalMap.get(t)?(this.matches=this.filter(this.internalMap.get(t).items),this.ref.markForCheck()):(this.isLoading=!0,this.config.getItemsForCategoryAsync(t,this.customFilterValue).then((function(o){n.internalMap.set(t,{value:e.value,label:e.label,items:o}),n.matches=n.filter(o,!0),n.isLoading=!1,n.ref.markForCheck(),setTimeout((function(){n.inputElement.nativeElement.focus()}))})))}},t.prototype.filter=function(e,t){var n=this;void 0===t&&(t=!1);var o=e;return this.searchTerm&&0!==this.searchTerm.length&&this.selectedCategory&&(o=o.filter((function(e){var t=n.searchTerm.toLowerCase();return e.label.toLowerCase().indexOf(t)>-1||e.value.toLowerCase().indexOf(t)>-1}))),this.customFilterEnabled&&this.config.customFilter.matchFunction&&!t&&(o=o.filter((function(e){return n.config.customFilter.matchFunction(e,n.customFilterValue)}))),o},t}(kt);xt.decorators=[{type:t.Component,args:[{selector:"grouped-multi-picker-results",template:'\n <div class="grouped-multi-picker-groups">\n <novo-list direction="vertical">\n <novo-list-item\n *ngIf="config.displayAll"\n (click)="selectCategory({ value: \'all\', label: \'all\' })"\n [class.active]="selectedCategory?.value === \'all\'"\n data-automation-id="display-all"\n [class.disabled]="isLoading">\n <item-content>\n <span data-automation-id="label">{{ labels.all }}</span>\n </item-content>\n <item-end>\n <i class="bhi-next"></i>\n </item-end>\n </novo-list-item>\n <novo-list-item\n *ngFor="let category of categories"\n (click)="selectCategory(category)"\n [class.active]="selectedCategory?.value === category.value"\n [attr.data-automation-id]="category.label"\n [class.disabled]="isLoading">\n <item-content>\n <i *ngIf="category.iconClass" [class]="category.iconClass"></i>\n <span data-automation-id="label">{{ category.label }}</span>\n </item-content>\n <item-end>\n <i class="bhi-next"></i>\n </item-end>\n </novo-list-item>\n </novo-list>\n <footer class="grouped-multi-picker-groups-footer" *ngIf="customFilterEnabled" data-automation-id="footer" [class.disabled]="isLoading">\n <novo-switch [(ngModel)]="customFilterValue" (onChange)="fireCustomFilter($event)" data-automation-id="switch"></novo-switch>\n <label data-automation-id="label">{{ customFilterLabel }}</label>\n </footer>\n </div>\n <div class="grouped-multi-picker-matches">\n <div class="grouped-multi-picker-input-container" [hidden]="!selectedCategory" data-automation-id="input-container">\n <input autofocus #input [(ngModel)]="searchTerm" [disabled]="isLoading" data-automation-id="input" [placeholder]="placeholder"/>\n <i class="bhi-search" *ngIf="!searchTerm" [class.disabled]="isLoading" data-automation-id="seach-icon"></i>\n <i class="bhi-times" *ngIf="searchTerm" (click)="clearSearchTerm($event)" [class.disabled]="isLoading" data-automation-id="remove-icon"></i>\n </div>\n <div class="grouped-multi-picker-list-container">\n <novo-list direction="vertical" #list>\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match) || isLoading"\n [attr.data-automation-id]="match.label">\n <item-content>\n <span>{{ match.label }}</span>\n </item-content>\n </novo-list-item>\n </novo-list>\n <div class="grouped-multi-picker-no-results" *ngIf="matches.length === 0 && !isLoading && selectedCategory" data-automation-id="empty-message">\n {{ labels.groupedMultiPickerEmpty }}\n </div>\n <div class="grouped-multi-picker-no-category" *ngIf="matches.length === 0 && !isLoading && !selectedCategory" data-automation-id="select-category-message">\n {{ labels.groupedMultiPickerSelectCategory }}\n </div>\n <div class="grouped-multi-picker-loading" *ngIf="isLoading" data-automation-id="loading-message">\n <novo-loading theme="line"></novo-loading>\n </div>\n </div>\n </div>\n '}]}],xt.ctorParameters=function(){return[{type:t.ElementRef},{type:t.Renderer2},{type:Ne},{type:t.ChangeDetectorRef}]},xt.propDecorators={inputElement:[{type:t.ViewChild,args:["input",{static:!0}]}],listElement:[{type:t.ViewChild,args:["list"]}]};var Rt=function(e){function t(t,n,o,a){var i=e.call(this,t,a)||this;return i.renderer=n,i.labels=o,i.placeholder="",i.emptyOptionsLabel="",i.internalMap=new Map,i}return te(t,e),Object.defineProperty(t.prototype,"term",{set:function(e){var t=this;this.config.placeholder&&(this.placeholder=this.config.placeholder),setTimeout((function(){t.inputElement.nativeElement.focus()}))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"options",{get:function(){return this.config.options||[]},enumerable:!1,configurable:!0}),t.prototype.ngOnDestroy=function(){this.keyboardSubscription&&this.keyboardSubscription.unsubscribe(),this.config.options&&this.config.options.forEach((function(e){e.clearSecondaryOptions&&e.clearSecondaryOptions.unsubscribe()}))},t.prototype.selectPrimaryOption=function(e,t){var n=this;this.keyboardSubscription&&this.keyboardSubscription.unsubscribe(),this.renderer.setProperty(this.listElement.element.nativeElement,"scrollTop",0),this.inputElement.nativeElement.focus();e.value;this.selectedPrimaryOption=e,this.matches=[],this.ref.markForCheck(),this.optionHasSecondaryOptions(e)?(this.keyboardSubscription=u.fromEvent(this.inputElement.nativeElement,"keyup").pipe(g.debounceTime(350),g.distinctUntilChanged()).subscribe((function(e){n.searchTerm=e.target.value,n.matches=n.filterData(),n.ref.markForCheck()})),this.getNewMatches(e)):(this.selectActive(e),this.selectMatch(t))},t.prototype.selectMatch=function(t){return this.inputElement.nativeElement.focus(),e.prototype.selectMatch.call(this,t)},t.prototype.clearSearchTerm=function(e){R.swallowEvent(e),this.searchTerm="",this.selectPrimaryOption({value:this.selectedPrimaryOption.value,label:this.selectedPrimaryOption.label}),this.ref.markForCheck()},t.prototype.optionHasSecondaryOptions=function(e){return!(!e||!e.secondaryOptions&&!e.getSecondaryOptionsAsync)},t.prototype.shouldShowSearchBox=function(e){return!(!e||!e.showSearchOnSecondaryOptions)},t.prototype.clearPrimaryOption=function(e){var t;this.internalMap.get(e.value)&&(e.value===(null===(t=this.selectedPrimaryOption)||void 0===t?void 0:t.value)&&(this.activeMatch=null,this.matches=[],this.selectedPrimaryOption=null),this.internalMap.delete(e.value),this.ref.markForCheck())},t.prototype.filterData=function(){return this.selectedPrimaryOption?this.selectedPrimaryOption.secondaryOptions?this.filter(this.selectedPrimaryOption.secondaryOptions):this.filter(this.internalMap.get(this.selectedPrimaryOption.value).items):[]},t.prototype.filter=function(e){var t=this,n=e;return this.searchTerm&&0!==this.searchTerm.length&&this.selectedPrimaryOption&&(n=n.filter((function(e){var n=t.searchTerm.toLowerCase();return e.label.toLowerCase().indexOf(n)>-1||e.value.toLowerCase().indexOf(n)>-1}))),n},t.prototype.getNewMatches=function(e){var t=this;if(e.secondaryOptions)this.matches=this.filter(e.secondaryOptions),this.ref.markForCheck();else{if(!e.getSecondaryOptionsAsync)throw new Error("An option needs to have either an array of secondaryOptions or a function getSecondaryOptionsAsync");this.internalMap.get(e.value)?(this.matches=this.filter(this.internalMap.get(e.value).items),this.ref.markForCheck()):(this.isLoading=!0,e.getSecondaryOptionsAsync().then((function(n){t.internalMap.set(e.value,{value:e.value,label:e.label,items:n}),t.matches=t.filter(n),t.isLoading=!1,t.ref.markForCheck(),setTimeout((function(){t.inputElement.nativeElement.focus()}))})),e.clearSecondaryOptions&&e.clearSecondaryOptions.subscribe((function(){t.clearPrimaryOption(e)})))}},t}(kt);Rt.decorators=[{type:t.Component,args:[{selector:"mixed-multi-picker-results",template:'\n <div class="mixed-multi-picker-groups">\n <novo-list direction="vertical">\n <novo-list-item\n *ngFor="let option of options"\n (click)="selectPrimaryOption(option, $event)"\n [class.active]="selectedPrimaryOption?.value === option.value"\n [attr.data-automation-id]="option.label"\n [class.disabled]="isLoading">\n <item-content>\n <i *ngIf="option.iconClass" [class]="option.iconClass"></i>\n <span data-automation-id="label">{{ option.label }}</span>\n </item-content>\n <item-end *ngIf="optionHasSecondaryOptions(option)">\n <i class="bhi-next"></i>\n </item-end>\n </novo-list-item>\n </novo-list>\n </div>\n <div class="mixed-multi-picker-matches" [hidden]="!optionHasSecondaryOptions(selectedPrimaryOption)">\n <div class="mixed-multi-picker-input-container" [hidden]="!shouldShowSearchBox(selectedPrimaryOption)" data-automation-id="input-container">\n <input autofocus #input [(ngModel)]="searchTerm" [disabled]="isLoading" data-automation-id="input" [placeholder]="placeholder"/>\n <i class="bhi-search" *ngIf="!searchTerm" [class.disabled]="isLoading" data-automation-id="seach-icon"></i>\n <i class="bhi-times" *ngIf="searchTerm" (click)="clearSearchTerm($event)" [class.disabled]="isLoading" data-automation-id="remove-icon"></i>\n </div>\n <div class="mixed-multi-picker-list-container">\n <novo-list direction="vertical" #list>\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match) || isLoading"\n [attr.data-automation-id]="match.label">\n <item-content>\n <span>{{ match.label }}</span>\n </item-content>\n </novo-list-item>\n </novo-list>\n <div class="mixed-multi-picker-no-results" *ngIf="matches.length === 0 && !isLoading && selectedPrimaryOption" data-automation-id="empty-message">\n {{ config.emptyOptionsLabel ? config.emptyOptionsLabel : labels.groupedMultiPickerEmpty }}\n </div>\n <div class="mixed-multi-picker-loading" *ngIf="isLoading" data-automation-id="loading-message">\n <novo-loading theme="line"></novo-loading>\n </div>\n </div>\n </div>'}]}],Rt.ctorParameters=function(){return[{type:t.ElementRef},{type:t.Renderer2},{type:Ne},{type:t.ChangeDetectorRef}]},Rt.propDecorators={inputElement:[{type:t.ViewChild,args:["input",{static:!0}]}],listElement:[{type:t.ViewChild,args:["list"]}]};var Mt=function(e){function t(t,n,o){var a=e.call(this,t,o)||this;return a.element=t,a.labels=n,a.active=!0,a.limitedTo=!1,a.limit=200,a}return te(t,e),t.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},t.prototype.structureArray=function(t){var n=t;return t.hasOwnProperty("data")?(this.limitedTo=t.limitedTo200,this.total=t.total,n=t.data):n.length>this.limit&&(this.limitedTo=!0,this.total=n.length,n=n.slice(0,this.limit)),e.prototype.structureArray.call(this,n)},t}(kt);Mt.decorators=[{type:t.Component,args:[{selector:"skill-specialty-picker-results",template:'\n <section class="picker-loading" *ngIf="isLoading && !matches?.length"><novo-loading theme="line"></novo-loading></section>\n <novo-list *ngIf="matches.length > 0" direction="vertical">\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match)"\n >\n <item-content>\n <h6><span [innerHtml]="highlight(match.label, term)"></span></h6>\n <div class="category">\n <i class="bhi-category-tags"></i\n ><span [innerHtml]="highlight(match.data.categories || match.data.parentCategory.name, term)"></span>\n </div>\n </item-content>\n </novo-list-item>\n <novo-list-item *ngIf="limitedTo"\n ><div>{{ labels.showingXofXResults(limit, total) }}</div></novo-list-item\n >\n <novo-loading theme="line" *ngIf="isLoading && matches.length > 0"></novo-loading>\n </novo-list>\n <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>\n <p class="picker-null" *ngIf="!isLoading && !matches.length && !hasError">{{ labels.pickerEmpty }}</p>\n '}]}],Mt.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]},Mt.propDecorators={active:[{type:t.HostBinding,args:["class.active"]}]};var Ft=function(e){function t(t,n,o,a){var i=e.call(this,t,a)||this;return i.sanitizer=n,i.labels=o,i.active=!0,i.sanitizer=n,i}return te(t,e),Object.defineProperty(t.prototype,"isHidden",{get:function(){return 0===this.matches.length},enumerable:!1,configurable:!0}),t.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},t.prototype.sanitizeHTML=function(e){return this.sanitizer.bypassSecurityTrustHtml(e)},t}(kt);Ft.decorators=[{type:t.Component,args:[{selector:"distribution-list-picker-results",template:'\n <section class="picker-loading" *ngIf="isLoading && !matches?.length">\n <novo-loading theme="line"></novo-loading>\n </section>\n <novo-list direction="vertical" *ngIf="matches?.length > 0 && !hasError">\n <novo-list-item *ngFor="let match of matches" (click)="selectMatch($event)" [class.active]="match === activeMatch" (mouseenter)="selectActive(match)" [class.disabled]="preselected(match)">\n <item-header>\n <item-title>\n <span [innerHtml]="sanitizeHTML(match.label)"></span>\n </item-title>\n </item-header>\n <item-content direction="horizontal">\n <p>\n <span class=\'label\'>{{ labels.distributionListOwner }}: </span><span>{{ match?.data?.owner?.name }}</span>\n </p>\n <p>\n <span class=\'label\'>{{ labels.dateAdded }}: </span><span>{{ labels.formatDateWithFormat(match?.data?.dateAdded, { year: \'numeric\', month: \'numeric\', day: \'numeric\' }) }}</span>\n </p>\n </item-content>\n </novo-list-item>\n <novo-loading theme="line" *ngIf="isLoading && matches?.length > 0"></novo-loading>\n </novo-list>\n '}]}],Ft.ctorParameters=function(){return[{type:t.ElementRef},{type:f.DomSanitizer},{type:Ne},{type:t.ChangeDetectorRef}]},Ft.propDecorators={active:[{type:t.HostBinding,args:["class.active"]}],isHidden:[{type:t.HostBinding,args:["hidden"]}]};var Lt=function(e){function t(t,n,o,a){var i=e.call(this,t,a)||this;return i.sanitizer=n,i.labels=o,i.active=!0,i.sanitizer=n,i}return te(t,e),Object.defineProperty(t.prototype,"isHidden",{get:function(){return 0===this.matches.length},enumerable:!1,configurable:!0}),t.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},t.prototype.sanitizeHTML=function(e,t){return this.sanitizer.bypassSecurityTrustHtml(e+" | "+t)},t}(kt);Lt.decorators=[{type:t.Component,args:[{selector:"workers-comp-codes-picker-results",template:'\n <section class="picker-loading" *ngIf="isLoading && !matches?.length">\n <novo-loading theme="line"></novo-loading>\n </section>\n <novo-list direction="vertical" *ngIf="matches?.length > 0 && !hasError">\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match)"\n >\n <item-header>\n <item-title>\n <span [innerHtml]="sanitizeHTML(match?.data?.compensation?.code, match?.data?.compensation?.name)"></span>\n </item-title>\n </item-header>\n <item-content direction="horizontal">\n <p>\n <span class="label">{{ labels.state }}: </span><span>{{ match?.data?.compensation?.state }}</span>\n </p>\n <p>\n <span class="label">{{ labels.rate }}: </span><span>{{ labels.formatCurrency(match?.data?.rate) }}</span>\n </p>\n </item-content>\n <item-content direction="horizontal">\n <p>\n <span class="label">{{ labels.startDate }}: </span\n ><span>{{ labels.formatDateWithFormat(match?.data?.startDate, { year: \'numeric\', month: \'numeric\', day: \'numeric\' }) }}</span>\n </p>\n <p>\n <span class="label">{{ labels.endDate }}: </span\n ><span>{{ labels.formatDateWithFormat(match?.data?.endDate, { year: \'numeric\', month: \'numeric\', day: \'numeric\' }) }}</span>\n </p>\n </item-content>\n </novo-list-item>\n <novo-loading theme="line" *ngIf="isLoading && matches?.length > 0"></novo-loading>\n </novo-list>\n '}]}],Lt.ctorParameters=function(){return[{type:t.ElementRef},{type:f.DomSanitizer},{type:Ne},{type:t.ChangeDetectorRef}]},Lt.propDecorators={active:[{type:t.HostBinding,args:["class.active"]}],isHidden:[{type:t.HostBinding,args:["hidden"]}]};var Nt=function(){};Nt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,ze,pt,vt,St],declarations:[Ot,It,Pt,At,Dt,xt,Rt,Ft,Lt,Mt],exports:[Ot,It,Pt,At,Dt,xt,Rt,Ft,Lt,Mt]}]}];var Bt={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return _t})),multi:!0},Ht=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t.prototype.onSelect=function(e){return!1},t}(gt);Ht.decorators=[{type:t.Component,args:[{selector:"novo-row-chip",template:'<div class="novo-row-chips-columns"><ng-content></ng-content><i class="bhi-delete-o" *ngIf="!disabled" (click)="onRemove($event)"></i></div>'}]}];var _t=function(e){function t(t,n,o){var a=e.call(this,t,n,o)||this;return a.closeOnSelect=!0,a}return te(t,e),t.prototype.onKeyDown=function(e){},t}(ft);_t.decorators=[{type:t.Component,args:[{selector:"novo-row-chips",providers:[Bt],host:{"[class.with-value]":"items.length > 0"},template:'\n <div class="novo-row-chips-columns" *ngIf="items.length > 0">\n <div class="column-label" *ngFor="let column of source.columns">{{ column.label }}</div>\n </div>\n <div class="novo-row-chips-empty-message" *ngIf="source.emptyReadOnlyMessage && disablePickerInput && items.length === 0">{{source.emptyReadOnlyMessage}}</div>\n <novo-row-chip\n *ngFor="let item of _items | async"\n [type]="type || item?.value?.searchEntity"\n [class.selected]="item == selected"\n [disabled]="disablePickerInput"\n (remove)="remove($event, item)"\n (select)="select($event, item)">\n <div class="column-data" *ngFor="let column of source.columns"><span>{{ column.data(item) }}</span></div>\n </novo-row-chip>\n <novo-picker\n clearValueOnSelect="true"\n [closeOnSelect]="closeOnSelect"\n [config]="source"\n [disablePickerInput]="disablePickerInput"\n [hidden]="disablePickerInput"\n [placeholder]="placeholder"\n [(ngModel)]="itemToAdd"\n (select)="add($event)"\n (keydown)="onKeyDown($event)"\n (focus)="onFocus($event)"\n (typing)="onTyping($event)"\n (blur)="onTouched($event)"\n [selected]="items"\n [overrideElement]="element"\n *ngIf="!maxlength || (maxlength && items.length < maxlength)">\n </novo-picker>\n <div class="preview-container">\n <span #preview></span>\n </div>\n '}]}],_t.ctorParameters=function(){return[{type:t.ElementRef},{type:mt},{type:Ne}]},_t.propDecorators={closeOnSelect:[{type:t.Input}]};var Gt=function(){};Gt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,Nt],declarations:[gt,ft,Ht,_t],exports:[gt,ft,Ht,_t]}]}];var Vt={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Ut})),multi:!0},Ut=function(){function e(e){this.zone=e,this.startupFocus=!1,this.fileBrowserImageUploadUrl="",this.disabled=!1,this.change=new t.EventEmitter,this.ready=new t.EventEmitter,this.blur=new t.EventEmitter,this.focus=new t.EventEmitter,this.paste=new t.EventEmitter,this.loaded=new t.EventEmitter,this._value=""}return Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){e!==this._value&&(this._value=e,this.onChange(e))},enumerable:!1,configurable:!0}),e.prototype.ngOnDestroy=function(){var e=this;this.instance&&(this.instance.focusManager.blur(!0),setTimeout((function(){e.instance.removeAllListeners();var t=CKEDITOR.instances[e.instance.name];t&&t.destroy(),e.instance.destroy(),e.instance=null})))},e.prototype.ngAfterViewInit=function(){var e=Object.assign(this.getBaseConfig(),this.config);this.startupFocus&&(e.startupFocus=!0),this.disabled&&(e.readOnly=!0),this.ckeditorInit(e)},e.prototype.updateValue=function(e){var t=this;this.zone.run((function(){t.value=e,t.onChange(e),t.onTouched(),t.change.emit(e)}))},e.prototype.ckeditorInit=function(e){var t=this;CKEDITOR?(this.instance=CKEDITOR.replace(this.host.nativeElement,e),this.instance.setData(this.value),this.instance.on("instanceReady",(function(e){t.ready.emit(e)})),this.instance.on("change",(function(){t.onTouched();var e=t.instance.getData();t.debounce?(t.debounceTimeout&&clearTimeout(t.debounceTimeout),t.debounceTimeout=setTimeout((function(){t.updateValue(e),t.debounceTimeout=null}),parseInt(t.debounce,10))):t.updateValue(e)})),this.instance.on("blur",(function(e){t.blur.emit(e)})),this.instance.on("focus",(function(e){t.focus.emit(e)})),this.instance.on("paste",(function(e){t.paste.emit(e)})),this.instance.on("loaded",(function(e){t.loaded.emit(e)}))):console.error("Make sure to include CKEditor sources in your dependencies!")},e.prototype.getBaseConfig=function(){var e={enterMode:CKEDITOR.ENTER_BR,shiftEnterMode:CKEDITOR.ENTER_P,disableNativeSpellChecker:!1,removePlugins:"liststyle,tabletools,contextmenu",extraAllowedContent:"*(*){*};table tbody tr td th[*];",font_names:"Arial/Arial, Helvetica, sans-serif;Calibri/Calibri, Verdana, Geneva, sans-serif;Comic Sans MS/Comic Sans MS, cursive;Courier New/Courier New, Courier, monospace;Georgia/Georgia, serif;Lucida Sans Unicode/Lucida Sans Unicode, Lucida Grande, sans-serif;Tahoma/Tahoma, Geneva, sans-serif;Times New Roman/Times New Roman, Times, serif;Trebuchet MS/Trebuchet MS, Helvetica, sans-serif;Verdana/Verdana, Geneva, sans-serif"},t={toolbar:[{name:"clipboard",items:["Paste","PasteText","PasteFromWord","Undo","Redo"]},{name:"paragraph",items:["NumberedList","BulletedList","Outdent","Indent","Blockquote","JustifyLeft","JustifyCenter","JustifyRight","JustifyBlock","BidiLtr","BidiRtl"]},{name:"links",items:["Link"]},{name:"insert",items:["Image","Table","HorizontalRule"]},{name:"tools",items:["Maximize","Source"]},"/",{name:"basicstyles",items:["Bold","Italic","Underline","Strike","Subscript","Superscript"]},{name:"styles",items:["Styles","Format","Font","FontSize"]},{name:"colors",items:["TextColor","BGColor"]}],filebrowserImageUploadUrl:this.fileBrowserImageUploadUrl};return Object.assign(e,this.minimal?{toolbar:[{name:"basicstyles",items:["Styles","FontSize","Bold","Italic","Underline","TextColor","-","NumberedList","BulletedList","Outdent","Indent","Link"]}]}:t)},e.prototype.writeValue=function(e){this._value=e,this.instance&&this.instance.setData(e)},e.prototype.onChange=function(e){},e.prototype.onTouched=function(e){},e.prototype.registerOnChange=function(e){this.onChange=e},e.prototype.registerOnTouched=function(e){this.onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e,this.instance&&CKEDITOR.instances[this.instance.name].setReadOnly(e)},e.prototype.insertText=function(e){var t=e.trim();this.instance.insertText(t)},e}();Ut.decorators=[{type:t.Component,args:[{selector:"novo-editor",providers:[Vt],template:'<textarea [name]="name" [id]="name" #host></textarea>'}]}],Ut.ctorParameters=function(){return[{type:t.NgZone}]},Ut.propDecorators={config:[{type:t.Input}],debounce:[{type:t.Input}],name:[{type:t.Input}],minimal:[{type:t.Input}],startupFocus:[{type:t.Input}],fileBrowserImageUploadUrl:[{type:t.Input}],disabled:[{type:t.Input}],change:[{type:t.Output}],ready:[{type:t.Output}],blur:[{type:t.Output}],focus:[{type:t.Output}],paste:[{type:t.Output}],loaded:[{type:t.Output}],host:[{type:t.ViewChild,args:["host"]}],value:[{type:t.Input}]};var Kt=function(){};Kt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule],declarations:[Ut],exports:[Ut]}]}];var zt=function(){function e(e){this.template=e}return e.prototype.getType=function(){return this.name},e}();zt.decorators=[{type:t.Directive,args:[{selector:"[novoTemplate]"}]}],zt.ctorParameters=function(){return[{type:t.TemplateRef}]},zt.propDecorators={type:[{type:t.Input}],name:[{type:t.Input,args:["novoTemplate"]}]};var jt=function(){};jt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],exports:[zt],declarations:[zt]}]}];var $t=function(){function e(){}return e.constructFilter=function(e,t,n){var o=e;return e&&(t&&"date"===t&&(o=e.startDate&&e.endDate?{min:p.startOfDay(e.startDate.date),max:p.startOfDay(p.addDays(p.startOfDay(e.endDate.date),1))}:{min:e.min?p.addDays(p.startOfToday(),e.min):p.startOfToday(),max:e.max?p.addDays(p.endOfToday(),e.max):p.endOfToday()}),n&&Array.isArray(e)?o=e.map((function(e){return e&&e.hasOwnProperty("value")?e.value:e})):o&&o.hasOwnProperty("value")&&(o=e.value)),o},e}(),Wt=function(){function e(){this.selectionSource=new u.Subject,this.paginationSource=new u.Subject,this.sortFilterSource=new u.Subject,this.resetSource=new u.Subject,this.expandSource=new u.Subject,this.dataLoaded=new u.Subject,this.sort=void 0,this.filter=void 0,this.page=0,this.pageSize=void 0,this.globalSearch=void 0,this.selectedRows=new Map,this.expandedRows=new Set,this.isForceRefresh=!1,this.updates=new t.EventEmitter,this.retainSelected=!1}return Object.defineProperty(e.prototype,"userFiltered",{get:function(){return!!(this.filter||this.sort||this.globalSearch||this.outsideFilter)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"userFilteredInternal",{get:function(){return!!(this.filter||this.sort||this.globalSearch)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return Array.from(this.selectedRows.values())},enumerable:!1,configurable:!0}),e.prototype.reset=function(e,t){void 0===e&&(e=!0),t||(this.sort=void 0,this.globalSearch=void 0,this.filter=void 0),this.page=0,this.retainSelected||(this.selectedRows.clear(),this.resetSource.next()),this.onSortFilterChange(),this.retainSelected=!1,e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.clearSort=function(e){void 0===e&&(e=!0),this.sort=void 0,this.page=0,this.checkRetainment("sort"),this.reset(e,!0),this.onSortFilterChange(),e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.clearFilter=function(e){void 0===e&&(e=!0),this.filter=void 0,this.globalSearch=void 0,this.page=0,this.checkRetainment("filter"),this.reset(e,!0),this.onSortFilterChange(),e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.clearSelected=function(e){void 0===e&&(e=!0),this.globalSearch=void 0,this.page=0,this.reset(e,!0),this.onSelectionChange(),e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.onSelectionChange=function(){this.selectionSource.next()},e.prototype.onExpandChange=function(e){this.expandSource.next(e)},e.prototype.onPaginationChange=function(e,t){this.checkRetainment("page"),this.paginationSource.next({isPageSizeChange:e,pageSize:t})},e.prototype.onSortFilterChange=function(){this.checkRetainment("sort"),this.checkRetainment("filter"),this.sortFilterSource.next({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.setInitialSortFilter=function(e){if(e&&(e.sort&&(this.sort=e.sort),e.filter)){var t=R.convertToArray(e.filter);t.forEach((function(e){e.value=e.selectedOption&&e.type?$t.constructFilter(e.selectedOption,e.type):e.value})),this.filter=t}},e.prototype.checkRetainment=function(e){var t;this.retainSelected=(null===(t=this.selectionOptions)||void 0===t?void 0:t.some((function(t){return t.label===e})))||this.retainSelected},e}();Wt.decorators=[{type:t.Injectable}];var Zt=function(){function e(e,n,o){this.state=e,this.ref=n,this.labels=o,this.selectedClear=new t.EventEmitter,this.sortClear=new t.EventEmitter,this.filterClear=new t.EventEmitter,this.allClear=new t.EventEmitter}return e.prototype.clearSort=function(){this.state.clearSort(),this.sortClear.emit(!0)},e.prototype.clearFilter=function(){this.state.clearFilter(),this.filterClear.emit(!0)},e.prototype.clearSelected=function(){this.state.clearSelected(),this.selectedClear.emit(!0)},e.prototype.clearAll=function(){this.state.reset(),this.allClear.emit(!0),this.selectedClear.emit(!0),this.sortClear.emit(!0),this.filterClear.emit(!0)},e}();Zt.decorators=[{type:t.Component,args:[{selector:"novo-data-table-clear-button",template:'\n <novo-dropdown side="bottom-right" class="novo-data-table-clear-button" data-automation-id="novo-data-table-clear-dropdown">\n <button type="button" theme="primary" color="negative" icon="collapse" data-automation-id="novo-data-table-clear-dropdown-btn">{{ labels.clear }}</button>\n <list>\n <item *ngIf="state.selected.length > 0" (click)="clearSelected()" data-automation-id="novo-data-table-clear-dropdown-clear-selected">{{ labels.clearSelected }}</item>\n <item *ngIf="state.sort" (click)="clearSort()" data-automation-id="novo-data-table-clear-dropdown-clear-sort">{{ labels.clearSort }}</item>\n <item *ngIf="state.filter" (click)="clearFilter()" data-automation-id="novo-data-table-clear-dropdown-clear-filter">{{ labels.clearFilter }}</item>\n <item *ngIf="state.sort && state.filter" (click)="clearAll()" data-automation-id="novo-data-table-clear-dropdown-clear-all">{{ labels.clearAllNormalCase }}</item>\n </list>\n </novo-dropdown>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Zt.ctorParameters=function(){return[{type:Wt},{type:t.ChangeDetectorRef},{type:Ne}]},Zt.propDecorators={selectedClear:[{type:t.Output}],sortClear:[{type:t.Output}],filterClear:[{type:t.Output}],allClear:[{type:t.Output}]};var Yt=function(e){function t(t,n,o){var a=e.call(this)||this;return a.tableService=t,a.state=n,a.ref=o,a.total=0,a.currentTotal=0,a.current=0,a.loading=!1,a.pristine=!0,a.totalSet=!1,a}return te(t,e),Object.defineProperty(t.prototype,"totallyEmpty",{get:function(){return 0===this.total},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"currentlyEmpty",{get:function(){return 0===this.current},enumerable:!1,configurable:!0}),t.prototype.connect=function(){var e=this,t=[this.state.updates];return u.merge.apply(void 0,ae(t)).pipe(g.startWith(null),g.switchMap((function(){return e.pristine=!1,e.loading=!0,e.tableService.getTableResults(e.state.sort,e.state.filter,e.state.page,e.state.pageSize,e.state.globalSearch,e.state.outsideFilter)})),g.map((function(t){return!e.totalSet||e.state.isForceRefresh?(e.total=t.total,e.totalSet=!0,e.state.isForceRefresh=!1):t.total>e.total&&(e.total=t.total),e.currentTotal=t.total,e.current=t.results.length,e.data=t.results,e.state.retainSelected||e.state.selectedRows.clear(),e.state.retainSelected=!1,e.state.onSelectionChange(),setTimeout((function(){e.ref.markForCheck(),setTimeout((function(){e.loading=!1,e.state.dataLoaded.next(),e.ref.markForCheck()}))})),t.results})),g.catchError((function(t,n){return console.error(t,n),e.loading=!1,u.of(null)})))},t.prototype.disconnect=function(){},t}(y.DataSource),qt=function(){function e(e){void 0===e&&(e=[]),this.currentData=e,this.originalData=ae(e)}return e.prototype.getTableResults=function(e,t,n,o,a,i){void 0===n&&(n=0),this.currentData=ae(this.originalData);var r=this.originalData.length;return 0!==this.currentData.length&&(a&&(this.currentData=this.currentData.filter((function(e){return Object.keys(e).some((function(t){return(""+e[t]).toLowerCase().includes(a.toLowerCase())}))})),r=this.currentData.length),t&&(this.currentData=this.filterData(this.currentData,t),r=this.currentData.length),e&&(this.currentData=this.currentData.sort(R.sortByField(e.id,"desc"===e.value)),r=this.currentData.length),e||t||a||i||(this.currentData=ae(this.originalData)),R.isBlank(n)||R.isBlank(o)||(this.currentData=this.currentData.slice(n*o,(n+1)*o))),u.of({results:this.currentData,total:r})},e.prototype.filterData=function(e,t){return R.convertToArray(t).forEach((function(t){if(Array.isArray(t.value)){var n=R.convertToArray(t.value).map(R.escapeString);e=e.filter(R.filterByField(t.id,n))}else{var o=R.escapeString(t.value);e=e.filter(R.filterByField(t.id,o))}})),e},e}(),Jt=function(){function e(e,n){this.element=e,this.ref=n,this.parentScrollAction="close",this.side="default",this.scrollStrategy="reposition",this.width=-1,this.appendToBody=!1,this.toggled=new t.EventEmitter,this.activeIndex=-1,this.filterTerm="",this.clickHandler=this.togglePanel.bind(this),this.closeHandler=this.closePanel.bind(this)}return e.prototype.ngOnInit=function(){this.appendToBody&&wt("'appendToBody' has been deprecated. Please remove this attribute."),this.element.nativeElement.querySelector("button").addEventListener("click",this.clickHandler),this.parentScrollSelector&&(this.parentScrollElement=R.findAncestor(this.element.nativeElement,this.parentScrollSelector))},e.prototype.ngOnDestroy=function(){var e=this.element.nativeElement.querySelector("button");e&&e.removeEventListener("click",this.clickHandler),this.parentScrollElement&&"close"===this.parentScrollAction&&this.parentScrollElement.removeEventListener("scroll",this.closeHandler)},Object.defineProperty(e.prototype,"items",{set:function(e){this._items=e,this.activeIndex=-1,this._textItems=e.map((function(e){return e.element.nativeElement.innerText}))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),e.prototype.openPanel=function(){this.overlay.openPanel(),this.parentScrollElement&&"close"===this.parentScrollAction&&this.parentScrollElement.addEventListener("scroll",this.closeHandler),this.toggled.emit(!0)},e.prototype.closePanel=function(){this.overlay.closePanel(),this.parentScrollElement&&"close"===this.parentScrollAction&&this.parentScrollElement.removeEventListener("scroll",this.closeHandler),-1!==this.activeIndex&&(this._items.toArray()[this.activeIndex].active=!1),this.activeIndex=-1,this.ref.markForCheck(),this.toggled.emit(!1)},e.prototype.togglePanel=function(){this.panelOpen?this.closePanel():this.openPanel()},e.prototype.onKeyDown=function(e){var t=this;if(this.panelOpen&&e.keyCode===We.ESC)R.swallowEvent(e),this.closePanel();else if(e.keyCode===We.ENTER)R.swallowEvent(e),this._items.toArray()[this.activeIndex].onClick(e);else if(e.keyCode===We.DOWN){for(R.swallowEvent(e),-1!==this.activeIndex&&(this._items.toArray()[this.activeIndex].active=!1),this.activeIndex++,this.activeIndex===this._items.length&&(this.activeIndex=0);this._items.toArray()[this.activeIndex].disabled;)this.activeIndex++,this.activeIndex===this._items.length&&(this.activeIndex=0);this._items.toArray()[this.activeIndex].active=!0,this.scrollToActive()}else if(e.keyCode===We.UP){for(R.swallowEvent(e),-1!==this.activeIndex&&(this._items.toArray()[this.activeIndex].active=!1),this.activeIndex--,this.activeIndex<0&&(this.activeIndex=this._items.length-1);this._items.toArray()[this.activeIndex].disabled;)this.activeIndex--,this.activeIndex<0&&(this.activeIndex=this._items.length-1);this._items.toArray()[this.activeIndex].active=!0,this.scrollToActive()}else if(e.keyCode>=65&&e.keyCode<=90||e.keyCode>=96&&e.keyCode<=105||e.keyCode>=48&&e.keyCode<=57||e.keyCode===We.SPACE){R.swallowEvent(e),clearTimeout(this.filterTermTimeout),this.filterTermTimeout=setTimeout((function(){t.filterTerm=""}),2e3);var n=e.key;this.filterTerm=this.filterTerm.concat(n);var o=this._textItems.findIndex((function(e){return new RegExp("^"+t.filterTerm.toLowerCase()).test(e.trim().toLowerCase())}));-1!==o&&(-1!==this.activeIndex&&(this._items.toArray()[this.activeIndex].active=!1),this.activeIndex=o,this._items.toArray()[this.activeIndex].active=!0,this.scrollToActive())}else[We.BACKSPACE,We.DELETE].includes(e.keyCode)&&(R.swallowEvent(e),clearTimeout(this.filterTermTimeout),this.filterTermTimeout=setTimeout((function(){t.filterTerm=""}),2e3),this.filterTerm=this.filterTerm.slice(0,-1))},e.prototype.onOverlayKeyDown=function(e){e.keyCode!==We.ESC&&e.keyCode!==We.ENTER||(R.swallowEvent(e),this.closePanel())},e.prototype.scrollToActive=function(){var e=this.overlay.overlayRef.overlayElement.querySelector(".dropdown-container"),t=this._items.toArray()[this.activeIndex];e&&t&&(e.scrollTop=t.element.nativeElement.offsetTop)},e}();Jt.decorators=[{type:t.Component,args:[{selector:"novo-dropdown",template:'\n <ng-content select="button" #trigger></ng-content>\n <novo-overlay-template [parent]="element" [width]="width" [position]="side" [scrollStrategy]="scrollStrategy">\n <div\n class="dropdown-container {{ containerClass }}"\n [style.height.px]="height"\n [class.has-height]="!!height"\n (keydown)="onOverlayKeyDown($event)"\n >\n <ng-content></ng-content>\n </div>\n </novo-overlay-template>\n '}]}],Jt.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},Jt.propDecorators={parentScrollSelector:[{type:t.Input}],parentScrollAction:[{type:t.Input}],containerClass:[{type:t.Input}],side:[{type:t.Input}],scrollStrategy:[{type:t.Input}],height:[{type:t.Input}],width:[{type:t.Input}],appendToBody:[{type:t.Input}],toggled:[{type:t.Output}],overlay:[{type:t.ViewChild,args:[yt]}],onKeyDown:[{type:t.HostListener,args:["keydown",["$event"]]}]};var Xt=function(){function e(e,n){this.dropdown=e,this.element=n,this.keepOpen=!1,this.action=new t.EventEmitter,this.active=!1}return e.prototype.onClick=function(e){this.disabled||(this.keepOpen||this.dropdown.closePanel(),this.action.emit({originalEvent:e}))},e}();Xt.decorators=[{type:t.Component,args:[{selector:"item",template:"<ng-content></ng-content>",host:{"[class.disabled]":"disabled","[class.active]":"active"}}]}],Xt.ctorParameters=function(){return[{type:Jt},{type:t.ElementRef}]},Xt.propDecorators={disabled:[{type:t.Input}],keepOpen:[{type:t.Input}],action:[{type:t.Output}],onClick:[{type:t.HostListener,args:["click",["$event"]]}]};var Qt=function(){function e(e){this.dropdown=e}return e.prototype.ngAfterContentInit=function(){var e=this;this.dropdown.items=this.items,this.items.changes.subscribe((function(){e.dropdown.items=e.items}))},e}();Qt.decorators=[{type:t.Component,args:[{selector:"list",template:"<ng-content></ng-content>"}]}],Qt.ctorParameters=function(){return[{type:Jt}]},Qt.propDecorators={items:[{type:t.ContentChildren,args:[Xt]}]};var en=function(){};en.decorators=[{type:t.Component,args:[{selector:"dropdown-item-header",template:"<ng-content></ng-content>"}]}];var tn=function(){function e(e){this.state=e}return e.prototype.filter=function(e,t,n,o,a,i){var r;void 0===a&&(a=!1),r=a?this.resolveMultiFilter(e,t,n,o,i):R.isBlank(n)?void 0:Object.assign({id:e,type:t,value:n,transform:o},i&&{selectedOption:i}),this.state.filter=r,this.state.checkRetainment("filter"),this.state.reset(!1,!0),this.state.updates.next({filter:r,sort:this.state.sort}),this.state.onSortFilterChange()},e.prototype.sort=function(e,t,n){var o={id:e,value:t,transform:n};this.state.sort=o,this.state.checkRetainment("sort"),this.state.reset(!1,!0),this.state.updates.next({sort:o,filter:this.state.filter}),this.state.onSortFilterChange()},e.prototype.resolveMultiFilter=function(e,t,n,o,a){var i,r=(i=R.convertToArray(this.state.filter)).findIndex((function(t){return t&&t.id===e}));return r>-1&&i.splice(r,1),R.isBlank(n)||(i=ae(i,[Object.assign({id:e,type:t,value:n,transform:o},a&&{selectedOption:a})])),i.length<1&&(i=void 0),i},e}();tn.decorators=[{type:t.Directive,args:[{selector:"[novoDataTableSortFilter]"}]}],tn.ctorParameters=function(){return[{type:Wt}]};var nn=function(){function e(e,t,n,o,a,i,r){var s=this;this.changeDetectorRef=e,this.labels=t,this.state=n,this.renderer=o,this.elementRef=a,this._sort=i,this._cdkColumnDef=r,this.allowMultipleFilters=!1,this.icon="sortable",this.filterActive=!1,this.sortActive=!1,this.showCustomRange=!1,this.multiSelect=!1,this.multiSelectedOptions=[],this.multiSelectedOptionIsHidden=[],this.optionFilter="",this.error=!1,this.subscriptions=[],this._rerenderSubscription=n.updates.subscribe((function(e){return s.checkSortFilterState(e)}))}return Object.defineProperty(e.prototype,"column",{set:function(e){this._column=e,this.label="action"===e.type?"":e.label,this.labelIcon=e.labelIcon,this.config={sortable:!!e.sortable,filterable:!!e.filterable,resizable:!!e.resizable},this.resizable=this.config.resizable;var t={};e.filterable&&R.isObject(e.filterable)?(this.config.filterConfig=e.filterable,this.config.filterConfig.type||(this.config.filterConfig={type:"text"}),e.filterable.transform&&(t.filter=e.filterable.transform)):this.config.filterConfig={type:"text"},e.sortable&&R.isObject(e.sortable)&&e.sortable.transform&&(t.sort=e.sortable.transform),"date"!==this.config.filterConfig.type||this.config.filterConfig.options||(this.config.filterConfig.options=this.getDefaultDateFilterOptions()),this.config.transforms=t},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this._cdkColumnDef&&(this.id=this._cdkColumnDef.name),this.setupFilterOptions(),this.changeDetectorRef.markForCheck()},e.prototype.setupFilterOptions=function(){this.checkSortFilterState({filter:this.state.filter,sort:this.state.sort},!0),this.multiSelect=!(!this.config.filterConfig||!this.config.filterConfig.type)&&"multi-select"===this.config.filterConfig.type,this.multiSelect&&(this.multiSelectedOptions=this.filter?ae(this.filter):[])},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe(),this.subscriptions.forEach((function(e){e.unsubscribe()}))},e.prototype.checkSortFilterState=function(e,t){var n=this;void 0===t&&(t=!1),e.sort&&e.sort.id===this.id?(this.icon="sort-"+e.sort.value,this.sortActive=!0):(this.icon="sortable",this.sortActive=!1);var o=R.convertToArray(e.filter).find((function(e){return e&&e.id===n.id}));o?(this.filterActive=!0,t&&"date"===o.type&&o.selectedOption&&(this.activeDateFilter=o.selectedOption.label||this.labels.customDateRange),this.filter=o.value):(this.filterActive=!1,this.filter=void 0,this.activeDateFilter=void 0,this.multiSelectedOptions=[]),this.defaultSort&&this.id===this.defaultSort.id&&(this.icon="sort-"+this.defaultSort.value,this.sortActive=!0),this.multiSelect=!(!this.config.filterConfig||!this.config.filterConfig.type)&&"multi-select"===this.config.filterConfig.type,this.multiSelect&&(this.multiSelectedOptions=this.filter?ae(this.filter):[],this.config.filterConfig.options&&(this.config.filterConfig.options[0],this.multiSelectedOptionIsHidden=this.config.filterConfig.options.map((function(e){return{option:e,hidden:!1}})))),this.changeDetectorRef.markForCheck()},e.prototype.isSelected=function(e,t){var n=this;if(t){var o=e.hasOwnProperty("value")?e.value:e;return void 0!==t.find((function(e){return n.optionPresentCheck(e,o)}))}return!1},e.prototype.toggleSelection=function(e){var t=this,n=e.hasOwnProperty("value")?e.value:e,o=this.multiSelectedOptions.findIndex((function(e){return t.optionPresentCheck(e,n)}));this.error=!1,o>-1?(this.multiSelectedOptions.splice(o,1),this.optionFilter&&!this.getOptionText(e).toLowerCase().startsWith(this.optionFilter.toLowerCase())&&(this.multiSelectedOptionIsHidden[this.multiSelectedOptionIsHidden.findIndex((function(t){return t.option===e}))].hidden=!0)):this.multiSelectedOptions.push(n)},e.prototype.optionPresentCheck=function(e,t){return e.hasOwnProperty("value")?e.value===t:e===t},e.prototype.cancel=function(){this.multiSelectedOptions=this.filter?ae(this.filter):[],this.dropdown.closePanel(),this.clearOptionFilter()},e.prototype.filterMultiSelect=function(){if(0!==this.multiSelectedOptions.length||this.filter){this.clearOptionFilter();var e=this.multiSelectedOptions.length>0?ae(this.multiSelectedOptions):void 0;this.filterData(e),this.dropdown.closePanel()}else this.multiSelectHasVisibleOptions()&&this.dropdown&&(this.error=!0)},e.prototype.multiSelectOptionFilter=function(e){var t=this;this.multiSelectedOptionIsHidden.forEach((function(n){n.option&&(n.hidden=!(t.getOptionText(n.option).toLowerCase().startsWith(e.toLowerCase())||t.isSelected(n.option,t.multiSelectedOptions)))}))},e.prototype.multiSelectOptionIsHidden=function(e){return this.multiSelectedOptionIsHidden.find((function(t){return t.option===e})).hidden},e.prototype.multiSelectHasVisibleOptions=function(){return this.multiSelectedOptionIsHidden.some((function(e){return!e.hidden}))},e.prototype.getOptionText=function(e){if("object"!=typeof e)return e.toString();var t=e;return(t.label.length>0?t.label:t.value).toString()},e.prototype.multiSelectOptionFilterHandleKeydown=function(e){this.multiSelect&&(this.error=!1,this.dropdown.panelOpen&&e.keyCode===We.ESC?(R.swallowEvent(e),this.clearOptionFilter(),this.dropdown.closePanel()):e.keyCode===We.ENTER?(R.swallowEvent(e),this.filterMultiSelect()):(e.keyCode>=65&&e.keyCode<=90||e.keyCode>=96&&e.keyCode<=105||e.keyCode>=48&&e.keyCode<=57)&&this.optionFilterInput.nativeElement.focus())},e.prototype.clearOptionFilter=function(){this.error=!1,this.optionFilter.length>0&&(this.optionFilter="",this.multiSelectedOptionIsHidden.forEach((function(e){e.hidden=!1})))},e.prototype.startResize=function(e){var t=this;e.preventDefault();var n=60+(this.config.filterable?30:0)+(this.config.sortable?30:0),o=this.elementRef.nativeElement.getBoundingClientRect().width,a=u.fromEvent(window.document,"mousemove").subscribe((function(a){var i=a.clientX-e.clientX,r=o+i;r<n&&(r=n),t._column.width=r,t.renderer.setStyle(t.elementRef.nativeElement,"min-width",t._column.width+"px"),t.renderer.setStyle(t.elementRef.nativeElement,"max-width",t._column.width+"px"),t.renderer.setStyle(t.elementRef.nativeElement,"width",t._column.width+"px"),t.changeDetectorRef.markForCheck(),t.resized.next(t._column)})),i=u.fromEvent(window.document,"mouseup").subscribe((function(){i.unsubscribe(),a.unsubscribe(),t.changeDetectorRef.markForCheck()}));this.subscriptions.push(a),this.subscriptions.push(i)},e.prototype.toggleCustomRange=function(e,t){R.swallowEvent(e),this.showCustomRange=t,this.changeDetectorRef.markForCheck(),this.dropdown.openPanel()},e.prototype.focusInput=function(){var e=this;this.filterInput&&this.filterInput.nativeElement&&setTimeout((function(){return e.filterInput.nativeElement.focus()}),0),this.multiSelect&&this.dropdown&&(this.dropdown.onKeyDown=function(t){e.multiSelectOptionFilterHandleKeydown(t)},setTimeout((function(){return e.optionFilterInput.nativeElement.focus()}),0),this.changeDetectorRef.markForCheck())},e.prototype.sort=function(){var e=this;this.changeTimeout&&clearTimeout(this.changeTimeout),this.changeTimeout=setTimeout((function(){e.direction=e.getNextSortDirection(e.direction),e._sort.sort(e.id,e.direction,e.config.transforms.sort),e.changeDetectorRef.markForCheck()}),300)},e.prototype.filterData=function(e){var t=this,n=$t.constructFilter(e,this.config.filterConfig.type,this.multiSelect),o="date"===this.config.filterConfig.type&&e?e:void 0;this.changeTimeout&&clearTimeout(this.changeTimeout),this.changeTimeout=setTimeout((function(){""===n&&(n=void 0),t._sort.filter(t.id,t.config.filterConfig.type,n,t.config.transforms.filter,t.allowMultipleFilters,o),t.changeDetectorRef.markForCheck()}),300)},e.prototype.clearFilter=function(){this.filter=void 0,this.multiSelectedOptions=[],this.activeDateFilter=void 0,this.filterData(void 0),this.clearOptionFilter(),this.dropdown.closePanel()},e.prototype.getNextSortDirection=function(e){return e&&"asc"===e?"desc":"asc"},e.prototype.getDefaultDateFilterOptions=function(){return[{label:this.labels.past1Day,min:-1,max:0},{label:this.labels.past7Days,min:-7,max:0},{label:this.labels.past30Days,min:-30,max:0},{label:this.labels.past90Days,min:-90,max:0},{label:this.labels.past1Year,min:-366,max:0},{label:this.labels.next1Day,min:0,max:1},{label:this.labels.next7Days,min:0,max:7},{label:this.labels.next30Days,min:0,max:30},{label:this.labels.next90Days,min:0,max:90},{label:this.labels.next1Year,min:0,max:366}]},e}();nn.decorators=[{type:t.Component,args:[{selector:"[novo-data-table-cell-config]",template:'\n <i class="bhi-{{ labelIcon }} label-icon" *ngIf="labelIcon" data-automation-id="novo-data-table-header-icon"></i>\n <label data-automation-id="novo-data-table-label">{{ label }}</label>\n <div>\n <button\n *ngIf="config.sortable"\n tooltipPosition="right"\n [tooltip]="labels.sort"\n theme="icon"\n [icon]="icon"\n (click)="sort()"\n [class.active]="sortActive"\n data-automation-id="novo-data-table-sort"\n [attr.data-feature-id]="\'novo-data-table-sort-\' + this.id"\n ></button>\n <novo-dropdown\n *ngIf="config.filterable"\n side="right"\n parentScrollSelector=".novo-data-table-container"\n containerClass="data-table-dropdown"\n data-automation-id="novo-data-table-filter"\n >\n <button\n type="button"\n theme="icon"\n icon="filter"\n [class.active]="filterActive"\n (click)="focusInput()"\n tooltipPosition="right"\n [tooltip]="labels.filters"\n [attr.data-feature-id]="\'novo-data-table-filter-\' + this.id"\n ></button>\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button\n theme="dialogue"\n color="negative"\n icon="times"\n (click)="clearFilter()"\n *ngIf="filter !== null && filter !== undefined && filter !== \'\'"\n data-automation-id="novo-data-table-filter-clear"\n >\n {{ labels.clear }}\n </button>\n </div>\n <ng-container [ngSwitch]="config.filterConfig.type">\n <list *ngSwitchCase="\'date\'">\n <ng-container *ngIf="!showCustomRange">\n <item\n [class.active]="activeDateFilter === option.label"\n *ngFor="let option of config.filterConfig.options"\n (click)="filterData(option)"\n [attr.data-automation-id]="\'novo-data-table-filter-\' + option.label"\n >\n {{ option.label }} <i class="bhi-check" *ngIf="activeDateFilter === option.label"></i>\n </item>\n </ng-container>\n <item\n [class.active]="labels.customDateRange === activeDateFilter"\n (click)="toggleCustomRange($event, true)"\n *ngIf="config.filterConfig.allowCustomRange && !showCustomRange"\n [keepOpen]="true"\n >\n {{ labels.customDateRange }} <i class="bhi-check" *ngIf="labels.customDateRange === activeDateFilter"></i>\n </item>\n <div class="calendar-container" *ngIf="showCustomRange">\n <div (click)="toggleCustomRange($event, false)"><i class="bhi-previous"></i>{{ labels.backToPresetFilters }}</div>\n <novo-date-picker (onSelect)="filterData($event)" [(ngModel)]="filter" range="true"></novo-date-picker>\n </div>\n </list>\n <list *ngSwitchCase="\'select\'">\n <item\n [class.active]="filter === option"\n *ngFor="let option of config.filterConfig.options"\n (click)="filterData(option)"\n [attr.data-automation-id]="\'novo-data-table-filter-\' + (option?.label || option)"\n >\n <span>{{ option?.label || option }}</span>\n <i class="bhi-check" *ngIf="option.hasOwnProperty(\'value\') ? filter === option.value : filter === option"></i>\n </item>\n </list>\n <list *ngSwitchCase="\'multi-select\'">\n <div class="dropdown-list-filter" (keydown)="multiSelectOptionFilterHandleKeydown($event)">\n <item class="filter-search" keepOpen="true">\n <input\n [(ngModel)]="optionFilter"\n (ngModelChange)="multiSelectOptionFilter($event)"\n #optionFilterInput\n data-automation-id="novo-data-table-multi-select-option-filter-input"\n />\n <i class="bhi-search"></i>\n <span class="error-text" [hidden]="!error || !multiSelectHasVisibleOptions()">{{ labels.selectFilterOptions }}</span>\n </item>\n </div>\n <div class="dropdown-list-options">\n <item\n *ngFor="let option of config.filterConfig.options"\n [hidden]="multiSelectOptionIsHidden(option)"\n (click)="toggleSelection(option)"\n [attr.data-automation-id]="\'novo-data-table-filter-\' + (option?.label || option)"\n [keepOpen]="true"\n >\n <span>{{ option?.label || option }}</span>\n <i\n [class.bhi-checkbox-empty]="!isSelected(option, multiSelectedOptions)"\n [class.bhi-checkbox-filled]="isSelected(option, multiSelectedOptions)"\n ></i>\n </item>\n </div>\n <p class="filter-null-results" [hidden]="multiSelectHasVisibleOptions()">{{ labels.pickerEmpty }}</p>\n </list>\n <list *ngSwitchCase="\'custom\'">\n <item class="filter-search" keepOpen="true">\n <ng-container *ngTemplateOutlet="filterTemplate; context: { $implicit: config }"></ng-container>\n </item>\n </list>\n <list *ngSwitchDefault>\n <item class="filter-search" keepOpen="true">\n <input\n [type]="config.filterConfig.type"\n [(ngModel)]="filter"\n (ngModelChange)="filterData($event)"\n #filterInput\n data-automation-id="novo-data-table-filter-input"\n />\n </item>\n </list>\n </ng-container>\n <div class="footer" *ngIf="multiSelect">\n <button theme="dialogue" color="dark" (click)="cancel()" data-automation-id="novo-data-table-multi-select-cancel">\n {{ labels.cancel }}\n </button>\n <button theme="dialogue" color="positive" (click)="filterMultiSelect()" data-automation-id="novo-data-table-multi-select-filter">\n {{ labels.filters }}\n </button>\n </div>\n </novo-dropdown>\n </div>\n <div class="spacer"></div>\n <div class="data-table-header-resizable" *ngIf="config.resizable"><span (mousedown)="startResize($event)"> </span></div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],nn.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:Ne},{type:Wt},{type:t.Renderer2},{type:t.ElementRef},{type:tn,decorators:[{type:t.Optional}]},{type:y.CdkColumnDef,decorators:[{type:t.Optional}]}]},nn.propDecorators={filterInput:[{type:t.ViewChild,args:["filterInput"]}],dropdown:[{type:t.ViewChild,args:[Jt]}],optionFilterInput:[{type:t.ViewChild,args:["optionFilterInput"]}],defaultSort:[{type:t.Input}],allowMultipleFilters:[{type:t.Input}],resized:[{type:t.Input}],filterTemplate:[{type:t.Input}],resizable:[{type:t.HostBinding,args:["class.resizable"]}],column:[{type:t.Input,args:["novo-data-table-cell-config"]}],multiSelectOptionFilterHandleKeydown:[{type:t.HostListener,args:["keydown",["$event"]]}]};var on=function(){function e(e,n,o){var a=this;this.labels=e,this.ref=n,this.state=o,this.globalSearchHiddenClassToggle=!1,this.resized=new t.EventEmitter,this.name="novo-data-table",this.allowMultipleFilters=!1,this.rowIdentifier="id",this.activeRowIdentifier="",this.trackByFn=function(e,t){return t.id},this.templates={},this.fixedHeader=!1,this.maxSelected=void 0,this._hideGlobalSearch=!0,this.preferencesChanged=new t.EventEmitter,this.loading=!0,this.columnToTemplate={},this.columnsLoaded=!1,this.selection=new Set,this.scrollLeft=0,this.expandable=!1,this.initialized=!1,this.scrollListenerHandler=this.scrollListener.bind(this),this.sortFilterSubscription=this.state.sortFilterSource.subscribe((function(e){"novo-data-table"!==a.name?(a.preferencesChanged.emit({name:a.name,sort:e.sort,filter:e.filter,globalSearch:e.globalSearch}),a.performInteractions("change")):wt("Must have [name] set on data-table to use preferences!")})),this.paginationSubscription=this.state.paginationSource.subscribe((function(e){"novo-data-table"!==a.name?e.isPageSizeChange&&a.preferencesChanged.emit({name:a.name,pageSize:e.pageSize}):wt("Must have [name] set on data-table to use preferences!")})),this.resetSubscription=this.state.resetSource.subscribe((function(){setTimeout((function(){a.ref.detectChanges()}),300)}))}return Object.defineProperty(e.prototype,"displayedColumns",{get:function(){return this._disabledColumns},set:function(e){var t=this;this.displayedColumns&&0!==this.displayedColumns.length&&("novo-data-table"!==this.name?this.preferencesChanged.emit({name:this.name,displayedColumns:e}):wt("Must have [name] set on data-table to use preferences!")),this._disabledColumns=e,this.configureLastDisplayedColumn(),this.initialized&&setTimeout((function(){t.scrollListener()}))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"dataTableService",{set:function(e){this.loading=!1,e||(e=new qt([])),this.dataSource=new Yt(e,this.state,this.ref),this.ref.detectChanges()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{set:function(e){this.loading=!1;var t=new qt(e);this.dataSource=new Yt(t,this.state,this.ref),this.ref.detectChanges()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"outsideFilter",{set:function(e){var t=this;this.outsideFilterSubscription&&this.outsideFilterSubscription.unsubscribe(),e&&(this.outsideFilterSubscription=e.subscribe((function(e){t.state.outsideFilter=e,t.state.updates.next({globalSearch:t.state.globalSearch,filter:t.state.filter,sort:t.state.sort}),t.ref.markForCheck()})))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"refreshSubject",{set:function(e){var t=this;this.refreshSubscription&&this.refreshSubscription.unsubscribe(),e&&(this.refreshSubscription=e.subscribe((function(e){t.state.isForceRefresh=!0,t.state.updates.next({globalSearch:t.state.globalSearch,filter:t.state.filter,sort:t.state.sort}),t.ref.markForCheck()})))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"columns",{get:function(){return this._columns},set:function(e){this._columns=e,this.configureColumns(),this.performInteractions("init")},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"customFilter",{get:function(){return this._customFilter},set:function(e){this._customFilter=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasExandedRows",{get:function(){return this._hasExandedRows},set:function(e){this._hasExandedRows=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"forceShowHeader",{get:function(){return this._forceShowHeader},set:function(e){this._forceShowHeader=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hideGlobalSearch",{get:function(){return this._hideGlobalSearch},set:function(e){this._hideGlobalSearch=m.coerceBooleanProperty(e),this.globalSearchHiddenClassToggle=this._hideGlobalSearch},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"empty",{get:function(){return this.dataSource&&this.dataSource.totallyEmpty},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"loadingClass",{get:function(){return this.loading||this.dataSource&&this.dataSource.loading},enumerable:!1,configurable:!0}),e.prototype.modifyCellHeaderMultiSelectFilterOptions=function(e,t){var n=this.cellHeaders.find((function(t){return t.id===e}));if(n&&n.config&&n.config.filterConfig&&n.config.filterConfig.options){var o=n.config.filterConfig.options.filter((function(e){return n.isSelected(e,n.multiSelectedOptions)&&!t.find((function(t){return e.value&&t.value&&t.value===e.value}))}));n.config.filterConfig.options=ae(o,t)}else n.config.filterConfig.options=t;n.setupFilterOptions(),n.changeDetectorRef.markForCheck()},e.prototype.ngOnDestroy=function(){this.outsideFilterSubscription&&this.outsideFilterSubscription.unsubscribe(),this.novoDataTableContainer&&this.novoDataTableContainer.nativeElement.removeEventListener("scroll",this.scrollListenerHandler),this.refreshSubscription&&this.refreshSubscription.unsubscribe(),this.resetSubscription&&this.resetSubscription.unsubscribe(),this.sortFilterSubscription&&this.sortFilterSubscription.unsubscribe()},e.prototype.ngAfterContentInit=function(){var e,t=this;this.displayedColumns&&this.displayedColumns.length&&(this.expandable=this.displayedColumns.includes("expand")),this.defaultTemplates.forEach((function(e){t.templates[e.getType()]||(t.templates[e.getType()]=e.template)})),this.customTemplates.forEach((function(e){t.templates[e.getType()]=e.template})),this.configureColumns(),this.paginationOptions&&!this.paginationOptions.page&&(this.paginationOptions.page=0),this.paginationOptions&&!this.paginationOptions.pageSize&&(this.paginationOptions.pageSize=50),this.paginationOptions&&!this.paginationOptions.pageSizeOptions&&(this.paginationOptions.pageSizeOptions=[10,25,50,100]),this.state.page=this.paginationOptions?this.paginationOptions.page:void 0,this.state.pageSize=this.paginationOptions?this.paginationOptions.pageSize:void 0,this.state.selectionOptions=null!==(e=this.selectionOptions)&&void 0!==e?e:void 0,this.novoDataTableContainer.nativeElement.addEventListener("scroll",this.scrollListenerHandler),this.initialized=!0,this.ref.markForCheck()},e.prototype.onSearchChange=function(e){this.state.globalSearch=e,this.state.reset(!1,!0),this.state.updates.next({globalSearch:e,filter:this.state.filter,sort:this.state.sort})},e.prototype.trackColumnsBy=function(e,t){return t.id},e.prototype.isDisabled=function(e,t){return!0===e.disabled||!!e.disabledFunc&&e.disabledFunc(t)},e.prototype.isExpanded=function(e){return!!e&&this.state.expandedRows.has(""+e[this.rowIdentifier])},e.prototype.expandRow=function(e){this.isExpanded(e)?this.state.expandedRows.delete(""+e[this.rowIdentifier]):this.state.expandedRows.add(""+e[this.rowIdentifier]),this.state.onExpandChange(e.id)},e.prototype.expandRows=function(e){var t=this;(this.dataSource.data||[]).forEach((function(n){e?t.state.expandedRows.add(""+n[t.rowIdentifier]):t.state.expandedRows.delete(""+n[t.rowIdentifier])})),this.state.onExpandChange()},e.prototype.allCurrentRowsExpanded=function(){for(var e=0;e<(this.dataSource.data||[]).length;e++)if(!this.isExpanded((this.dataSource.data||[])[e]))return!1;return!0},e.prototype.isSelected=function(e){return!!e&&this.state.selectedRows.has(""+e[this.rowIdentifier])},e.prototype.selectRow=function(e){this.isSelected(e)?this.state.selectedRows.delete(""+e[this.rowIdentifier]):this.state.selectedRows.set(""+e[this.rowIdentifier],e),this.state.onSelectionChange()},e.prototype.selectRows=function(e){var t=this;(this.dataSource.data||[]).forEach((function(n){e?t.state.selectedRows.set(""+n[t.rowIdentifier],n):t.state.selectedRows.delete(""+n[t.rowIdentifier])})),this.state.onSelectionChange()},e.prototype.allCurrentRowsSelected=function(){for(var e=0;e<(this.dataSource.data||[]).length;e++)if(!this.isSelected((this.dataSource.data||[])[e]))return!1;return!0},e.prototype.configureLastDisplayedColumn=function(){var e=this;if(this.columns&&this.displayedColumns&&0!==this.columns.length&&0!==this.displayedColumns.length){this.columns.forEach((function(e){e.initialResizable&&(e.resizable=e.initialResizable.resizable,e.width=e.initialResizable.width,e.initialResizable=void 0)}));var t=this.displayedColumns.filter((function(t){return-1!==e.columns.findIndex((function(e){return e.resizable&&e.id===t}))}));if(t&&t.length>0){var n=this.columns.find((function(e){return e.id===t[t.length-1]}));n.initialResizable={resizable:n.resizable,width:n.width},n.width=void 0,n.resizable=!1}}},e.prototype.configureColumns=function(){var e=this;this.columns&&0!==this.columns.length&&0!==Object.keys(this.templates).length&&(this.columns.forEach((function(t){var n;t.template?n=t.template:e.templates[t.id]?n=t.id:"action"===t.type?t.action&&t.action.options?(t.action.icon||(t.action.icon="collapse"),n="dropdownCellTemplate"):n="buttonCellTemplate":n="link:tel"===t.type||"link:mailto"===t.type?t.type.split(":")[1]+"CellTemplate":t.type+"CellTemplate",e.columnToTemplate[t.id]=e.templates[n]})),this.configureLastDisplayedColumn(),this.columnsLoaded=!0)},e.prototype.scrollListener=function(){var e=this.novoDataTableContainer.nativeElement;e.scrollLeft!==this.scrollLeft&&(this.scrollLeft=e.scrollLeft),this.ref.markForCheck()},e.prototype.performInteractions=function(e){var t,n;if(this.listInteractions)try{for(var o=ne(this.columns),a=o.next();!a.done;a=o.next()){var i=a.value,r=this.listInteractions[i.id],s=r&&r.find((function(t){return t.event.includes(e)}));s&&s.script(this,i.id)}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}},e}();on.decorators=[{type:t.Component,args:[{selector:"novo-data-table",animations:[d.trigger("expand",[d.state("void",d.style({height:"0px",minHeight:"0",visibility:"hidden"})),d.state("*",d.style({height:"*",visibility:"visible"})),d.transition("void <=> *",d.animate("70ms cubic-bezier(0.4, 0.0, 0.2, 1)"))])],template:'\n <header\n *ngIf="(!(dataSource?.totallyEmpty && !state.userFiltered) && !loading) || forceShowHeader"\n [class.empty]="hideGlobalSearch && !paginationOptions && !templates[\'customActions\']"\n >\n <ng-container *ngTemplateOutlet="templates[\'customHeader\']"></ng-container>\n <novo-search\n alwaysOpen="true"\n (searchChanged)="onSearchChange($event)"\n [(ngModel)]="state.globalSearch"\n *ngIf="!hideGlobalSearch"\n [placeholder]="searchOptions?.placeholder"\n [hint]="searchOptions?.tooltip"\n >\n </novo-search>\n <novo-data-table-pagination\n *ngIf="paginationOptions"\n [theme]="paginationOptions.theme"\n [length]="dataSource?.currentTotal"\n [page]="paginationOptions.page"\n [pageSize]="paginationOptions.pageSize"\n [pageSizeOptions]="paginationOptions.pageSizeOptions"\n [dataFeatureId]="paginatorDataFeatureId"\n >\n </novo-data-table-pagination>\n <div class="novo-data-table-actions" *ngIf="templates[\'customActions\']">\n <ng-container *ngTemplateOutlet="templates[\'customActions\']"></ng-container>\n </div>\n </header>\n <div class="novo-data-table-loading-mask" *ngIf="dataSource?.loading || loading" data-automation-id="novo-data-table-loading">\n <novo-loading></novo-loading>\n </div>\n <div class="novo-data-table-outside-container" [ngClass]="{ \'novo-data-table-outside-container-fixed\': fixedHeader }">\n <div class="novo-data-table-custom-filter" *ngIf="customFilter">\n <ng-container *ngTemplateOutlet="templates[\'customFilter\']"></ng-container>\n </div>\n <div\n #novoDataTableContainer\n class="novo-data-table-container"\n [ngClass]="{ \'novo-data-table-container-fixed\': fixedHeader }"\n [class.empty-user-filtered]="dataSource?.currentlyEmpty && state.userFiltered"\n [class.empty]="dataSource?.totallyEmpty && !dataSource?.loading && !loading && !state.userFiltered && !dataSource.pristine"\n >\n <cdk-table\n *ngIf="columns?.length > 0 && columnsLoaded && dataSource"\n [dataSource]="dataSource"\n [trackBy]="trackByFn"\n novoDataTableSortFilter\n [class.expandable]="expandable"\n [class.empty]="dataSource?.currentlyEmpty && state.userFiltered"\n [hidden]="dataSource?.totallyEmpty && !state.userFiltered"\n >\n <ng-container cdkColumnDef="selection">\n <novo-data-table-checkbox-header-cell *cdkHeaderCellDef [maxSelected]="maxSelected"></novo-data-table-checkbox-header-cell>\n <novo-data-table-checkbox-cell *cdkCellDef="let row; let i = index" [row]="row" [maxSelected]="maxSelected"></novo-data-table-checkbox-cell>\n </ng-container>\n <ng-container cdkColumnDef="expand">\n <novo-data-table-expand-header-cell *cdkHeaderCellDef></novo-data-table-expand-header-cell>\n <novo-data-table-expand-cell *cdkCellDef="let row; let i = index" [row]="row"></novo-data-table-expand-cell>\n </ng-container>\n <ng-container *ngFor="let column of columns; trackBy: trackColumnsBy" [cdkColumnDef]="column.id">\n <novo-data-table-header-cell\n *cdkHeaderCellDef\n [column]="column"\n [filterTemplate]="templates[\'column-filter-\' + column.id]"\n [novo-data-table-cell-config]="column"\n [resized]="resized"\n [defaultSort]="defaultSort"\n [allowMultipleFilters]="allowMultipleFilters"\n [class.empty]="column?.type === \'action\' && !column?.label"\n [class.button-header-cell]="column?.type === \'expand\' || (column?.type === \'action\' && !column?.action?.options)"\n [class.dropdown-header-cell]="column?.type === \'action\' && column?.action?.options"\n [class.fixed-header]="fixedHeader"\n ></novo-data-table-header-cell>\n <novo-data-table-cell\n *cdkCellDef="let row"\n [resized]="resized"\n [column]="column"\n [row]="row"\n [template]="columnToTemplate[column.id]"\n [class.empty]="column?.type === \'action\' && !column?.label"\n [class.button-cell]="column?.type === \'expand\' || (column?.type === \'action\' && !column?.action?.options)"\n [class.dropdown-cell]="column?.type === \'action\' && column?.action?.options"\n ></novo-data-table-cell>\n </ng-container>\n <novo-data-table-header-row\n *cdkHeaderRowDef="displayedColumns"\n [fixedHeader]="fixedHeader"\n data-automation-id="novo-data-table-header-row"\n ></novo-data-table-header-row>\n <novo-data-table-row\n *cdkRowDef="let row; columns: displayedColumns"\n [ngClass]="{ active: row[rowIdentifier] == activeRowIdentifier }"\n [novoDataTableExpand]="detailRowTemplate"\n [row]="row"\n [id]="name + \'-\' + row[rowIdentifier]"\n [dataAutomationId]="row[rowIdentifier]"\n ></novo-data-table-row>\n </cdk-table>\n <div class="novo-data-table-footer" *ngIf="templates[\'footer\']">\n <ng-container *ngTemplateOutlet="templates[\'footer\']; context: { $implicit: columns, data: dataSource.data }"></ng-container>\n </div>\n <div\n class="novo-data-table-no-results-container"\n [style.left.px]="scrollLeft"\n *ngIf="dataSource?.currentlyEmpty && state.userFiltered && !dataSource?.loading && !loading && !dataSource.pristine"\n >\n <div class="novo-data-table-empty-message">\n <ng-container *ngTemplateOutlet="templates[\'noResultsMessage\'] || templates[\'defaultNoResultsMessage\']"></ng-container>\n </div>\n </div>\n </div>\n <div\n class="novo-data-table-empty-container"\n *ngIf="dataSource?.totallyEmpty && !dataSource?.loading && !loading && !state.userFiltered && !dataSource.pristine"\n >\n <div class="novo-data-table-empty-message">\n <ng-container *ngTemplateOutlet="templates[\'emptyMessage\'] || templates[\'defaultNoResultsMessage\']"></ng-container>\n </div>\n </div>\n </div>\n \x3c!-- DEFAULT CELL TEMPLATE --\x3e\n <ng-template novoTemplate="textCellTemplate" let-row let-col="col">\n <span [style.width.px]="col?.width" [style.min-width.px]="col?.width" [style.max-width.px]="col?.width">{{\n row[col.id] | dataTableInterpolate: col\n }}</span>\n </ng-template>\n <ng-template novoTemplate="dateCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableDateRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="datetimeCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableDateTimeRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="timeCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableTimeRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="currencyCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableCurrencyRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="bigdecimalCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableBigDecimalRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="numberCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableNumberRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="percentCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableNumberRenderer: col:true }}</span>\n </ng-template>\n <ng-template novoTemplate="linkCellTemplate" let-row let-col="col">\n <a\n [attr.data-feature-id]="col?.attributes?.dataFeatureId"\n (click)="col.handlers?.click({ originalEvent: $event, row: row })"\n [style.width.px]="col?.width"\n [style.min-width.px]="col?.width"\n [style.max-width.px]="col?.width"\n >{{ row[col.id] | dataTableInterpolate: col }}</a\n >\n </ng-template>\n <ng-template novoTemplate="telCellTemplate" let-row let-col="col">\n <a href="tel:{{ row[col.id] | dataTableInterpolate: col }}" [target]="col?.attributes?.target">{{\n row[col.id] | dataTableInterpolate: col\n }}</a>\n </ng-template>\n <ng-template novoTemplate="mailtoCellTemplate" let-row let-col="col">\n <a href="mailto:{{ row[col.id] | dataTableInterpolate: col }}" [target]="col?.attributes?.target">{{\n row[col.id] | dataTableInterpolate: col\n }}</a>\n </ng-template>\n <ng-template novoTemplate="buttonCellTemplate" let-row let-col="col">\n <p [tooltip]="col?.action?.tooltip" tooltipPosition="right" [attr.data-feature-id]="col?.attributes?.dataFeatureId">\n <i\n class="bhi-{{ col?.action?.icon }} data-table-icon"\n (click)="col.handlers?.click({ originalEvent: $event, row: row })"\n [class.disabled]="isDisabled(col, row)"\n ></i>\n </p>\n </ng-template>\n <ng-template novoTemplate="dropdownCellTemplate" let-row let-col="col">\n <novo-dropdown parentScrollSelector=".novo-data-table-container" containerClass="novo-data-table-dropdown">\n <button type="button" theme="dialogue" [icon]="col.action.icon" inverse>{{ col.label }}</button>\n <list>\n <item\n *ngFor="let option of col?.action?.options"\n (action)="option.handlers.click({ originalEvent: $event?.originalEvent, row: row })"\n [disabled]="isDisabled(option, row)"\n >\n <span [attr.data-automation-id]="option.label">{{ option.label }}</span>\n </item>\n </list>\n </novo-dropdown>\n </ng-template>\n <ng-template novoTemplate="defaultNoResultsMessage">\n <h4><i class="bhi-search-question"></i> {{ labels.noMatchingRecordsMessage }}</h4>\n </ng-template>\n <ng-template novoTemplate="defaultEmptyMessage">\n <h4><i class="bhi-search-question"></i> {{ labels.emptyTableMessage }}</h4>\n </ng-template>\n <ng-template novoTemplate="expandedRow"> You did not provide an "expandedRow" template! </ng-template>\n <ng-template #detailRowTemplate let-row>\n <div class="novo-data-table-detail-row" [@expand] style="overflow: hidden">\n <ng-container *ngTemplateOutlet="templates[\'expandedRow\']; context: { $implicit: row }"></ng-container>\n </div>\n </ng-template>\n \x3c!-- CUSTOM CELLS PASSED IN --\x3e\n <ng-content></ng-content>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[Wt]}]}],on.ctorParameters=function(){return[{type:Ne},{type:t.ChangeDetectorRef},{type:Wt}]},on.propDecorators={globalSearchHiddenClassToggle:[{type:t.HostBinding,args:["class.global-search-hidden"]}],customTemplates:[{type:t.ContentChildren,args:[zt]}],defaultTemplates:[{type:t.ViewChildren,args:[zt]}],cellHeaders:[{type:t.ViewChildren,args:[nn]}],novoDataTableContainer:[{type:t.ViewChild,args:["novoDataTableContainer"]}],resized:[{type:t.Output}],displayedColumns:[{type:t.Input}],paginationOptions:[{type:t.Input}],searchOptions:[{type:t.Input}],selectionOptions:[{type:t.Input}],defaultSort:[{type:t.Input}],name:[{type:t.Input}],allowMultipleFilters:[{type:t.Input}],rowIdentifier:[{type:t.Input}],activeRowIdentifier:[{type:t.Input}],trackByFn:[{type:t.Input}],templates:[{type:t.Input}],fixedHeader:[{type:t.Input}],paginatorDataFeatureId:[{type:t.Input}],maxSelected:[{type:t.Input}],dataTableService:[{type:t.Input}],rows:[{type:t.Input}],outsideFilter:[{type:t.Input}],refreshSubject:[{type:t.Input}],columns:[{type:t.Input}],customFilter:[{type:t.Input}],hasExandedRows:[{type:t.Input}],forceShowHeader:[{type:t.Input}],hideGlobalSearch:[{type:t.Input}],preferencesChanged:[{type:t.Output}],empty:[{type:t.HostBinding,args:["class.empty"]}],loadingClass:[{type:t.HostBinding,args:["class.loading"]}],listInteractions:[{type:t.Input}]};var an=function(){};an.decorators=[{type:t.NgModule,args:[{imports:[vt],declarations:[Jt,Xt,Qt,en],exports:[Jt,Xt,Qt,en]}]}];var rn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return sn})),multi:!0},sn=function(){function e(e,n,o,a,i){this.element=e,this.labels=n,this.ref=o,this.focusMonitor=a,this.ngZone=i,this.placeholder="Select...",this.onSelect=new t.EventEmitter,this.selectedIndex=-1,this.empty=!0,this.header={open:!1,valid:!0,value:""},this.onModelChange=function(){},this.onModelTouched=function(){},this.filterTerm="",this.disabled=!1}return e.prototype.ngOnInit=function(){var e=this;this.focusMonitor.monitor(this.dropdown.nativeElement).subscribe((function(t){return e.ngZone.run((function(){"keyboard"!==t||e.disabled||e.openPanel()}))})),this.ngOnChanges()},e.prototype.ngOnChanges=function(e){var t=this;if(this.readonly=!0===this.readonly,this.options&&this.options.length&&"string"==typeof this.options[0]?this.filteredOptions=this.options.map((function(e){return{value:e,label:e}})):this.filteredOptions=(this.options||[]).filter((function(e){return!e.readOnly})).map((function(e){return Object.assign(Object.assign({},e),{active:!1})})),this.model||this.createdItem)if(this.createdItem){var n=this.options.find((function(e){return e.label===t.createdItem})),o=this.options.indexOf(n);this.select(n,o)}else this.writeValue(this.model);else this.clear();this.panelOpen&&this.openPanel()},e.prototype.ngOnDestroy=function(){this.focusMonitor.stopMonitoring(this.dropdown.nativeElement)},e.prototype.openPanel=function(){this.overlay.openPanel()},e.prototype.closePanel=function(){this.overlay.closePanel()},e.prototype.togglePanel=function(){var e=this;this.panelOpen?this.closePanel():(setTimeout((function(){e.dropdown.nativeElement.focus()})),this.openPanel())},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),e.prototype.setValueAndClose=function(e){var t;(null===(t=e.value)||void 0===t?void 0:t.disabled)||(e.value&&e.index>=0&&this.select(e.value,e.index),this.closePanel())},e.prototype.select=function(e,t,n){void 0===n&&(n=!0),this.selected&&(this.selected.active=!1),this.selectedIndex=t,this.selected=e,this.selected.active=!0,this.empty=!1,n&&(this.onModelChange(this.selected.value),this.onSelect.emit({selected:this.selected.value}))},e.prototype.clear=function(){this.selected&&(this.selected.active=!1),this.selected={label:this.placeholder,value:null,active:!1},this.header={open:!1,valid:!0,value:""},this.selectedIndex=-1,this.empty=!0},e.prototype.onKeyDown=function(e){var t=this;if([We.UP,We.DOWN].includes(e.keyCode)&&e.preventDefault(),[We.ESC,We.TAB].includes(e.keyCode))this.closePanel();else if(e.keyCode===We.ENTER)this.header.open&&this.header.value?this.saveHeader():this.setValueAndClose({value:this.filteredOptions[this.selectedIndex],index:this.selectedIndex});else if(e.keyCode===We.UP)this.panelOpen||this.openPanel(),this.selectedIndex>0&&(this.selectedIndex--,this.select(this.filteredOptions[this.selectedIndex],this.selectedIndex),this.scrollToSelected());else if(e.keyCode===We.DOWN)this.panelOpen||this.openPanel(),this.selectedIndex<this.filteredOptions.length-1&&(this.selectedIndex++,this.select(this.filteredOptions[this.selectedIndex],this.selectedIndex),this.scrollToSelected(),this.header.open&&this.toggleHeader(null,!1));else if(e.keyCode===We.UP&&0===this.selectedIndex)this.panelOpen||this.openPanel(),this.selectedIndex--,this.toggleHeader(null,!0);else if(e.keyCode>=65&&e.keyCode<=90||e.keyCode===We.SPACE){e.keyCode===We.SPACE&&e.preventDefault(),this.panelOpen||this.openPanel(),clearTimeout(this.filterTermTimeout),this.filterTermTimeout=setTimeout((function(){t.filterTerm=""}),2e3);var n=e.key;this.filterTerm=this.filterTerm.concat(n).toUpperCase();var o=this.filteredOptions.find((function(e){return 0===e.label.toUpperCase().indexOf(t.filterTerm)}));o&&(this.select(o,this.filteredOptions.indexOf(o)),this.scrollToSelected())}else[We.BACKSPACE,We.DELETE].includes(e.keyCode)&&(clearTimeout(this.filterTermTimeout),this.filterTermTimeout=setTimeout((function(){t.filterTerm=""}),2e3),this.filterTerm=this.filterTerm.slice(0,-1))},e.prototype.scrollToSelected=function(){this.scrollToIndex(this.selectedIndex)},e.prototype.scrollToIndex=function(e){var t=this.overlay.overlayRef.overlayElement.querySelector(".novo-select-list"),n=t.querySelectorAll("li")[this.headerConfig?e+1:e];n&&(t.scrollTop=n.offsetTop)},e.prototype.toggleHeader=function(e,t){void 0===t&&(t=!1),e&&(e.stopPropagation(),e.preventDefault()),this.header={open:void 0!==t?t:!this.header.open,value:"",valid:!0}},e.prototype.highlight=function(e,t){return t?e.replace(new RegExp(this.escapeRegexp(t),"gi"),"<strong>$&</strong>"):e},e.prototype.escapeRegexp=function(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")},e.prototype.saveHeader=function(){this.header.value?(this.headerConfig.onSave(this.header.value),this.createdItem=this.header.value,this.closePanel()):this.header.valid=!1},e.prototype.writeValue=function(e){if(this.model=e,this.options){var t=this.filteredOptions.find((function(t){return t.value===e||e&&t.value===e.id}))||this.options.find((function(t){return t.value===e||e&&t.value===e.id}));t||R.isEmpty(e)||(t={label:e,value:e}).readOnly||this.options.unshift(t),t?(this.select(t,this.filteredOptions.indexOf(t),!1),this.empty=!1):this.clear()}this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();sn.decorators=[{type:t.Component,args:[{selector:"novo-select",providers:[rn],template:'\n <div #dropdownElement (click)="togglePanel(); (false)" tabIndex="{{ disabled ? -1 : 0 }}" type="button" [class.empty]="empty">\n {{ selected.label }}<i class="bhi-collapse"></i>\n </div>\n <novo-overlay-template [parent]="element" position="center" (closing)="dropdown.nativeElement.focus()">\n <ul class="novo-select-list" tabIndex="-1" [class.header]="headerConfig" [class.active]="panelOpen">\n <ng-content></ng-content>\n <li *ngIf="headerConfig" class="select-header" [class.open]="header.open">\n <button *ngIf="!header.open" (click)="toggleHeader($event); (false)" tabIndex="-1" type="button" class="header">\n <i class="bhi-add-thin"></i> {{ headerConfig.label }}\n </button>\n <div *ngIf="header.open" [ngClass]="{ active: header.open }">\n <input\n autofocus\n type="text"\n [placeholder]="headerConfig.placeholder"\n [attr.id]="name"\n autocomplete="false"\n [(ngModel)]="header.value"\n [ngClass]="{ invalid: !header.valid }"\n />\n <footer>\n <button (click)="toggleHeader($event, false)">{{ labels.cancel }}</button>\n <button (click)="saveHeader()" class="primary">{{ labels.save }}</button>\n </footer>\n </div>\n </li>\n <li\n *ngFor="let option of filteredOptions; let i = index"\n [ngClass]="{ active: option.active, disabled: option.disabled }"\n (click)="setValueAndClose({ value: option, index: i })"\n [attr.data-automation-value]="option.label"\n [tooltip]="option.tooltip"\n [tooltipPosition]="option.tooltipPosition || \'right\'"\n >\n <span [innerHtml]="highlight(option.label, filterTerm)"></span> <i *ngIf="option.active" class="bhi-check"></i>\n </li>\n </ul>\n </novo-overlay-template>\n ',host:{"(keydown)":"onKeyDown($event)"}}]}],sn.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef},{type:v.FocusMonitor},{type:t.NgZone}]},sn.propDecorators={name:[{type:t.Input}],options:[{type:t.Input}],placeholder:[{type:t.Input}],readonly:[{type:t.Input}],headerConfig:[{type:t.Input}],onSelect:[{type:t.Output}],overlay:[{type:t.ViewChild,args:[yt,{static:!0}]}],dropdown:[{type:t.ViewChild,args:["dropdownElement",{static:!0}]}],onKeyDown:[{type:t.HostListener,args:["keydown",["$event"]]}]};var ln=function(){};ln.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,v.A11yModule,vt,U],declarations:[sn],exports:[sn]}]}];var cn=D,dn=function(){function e(){this.cancel=new t.EventEmitter,this.cloned=new t.EventEmitter,this.drag=new t.EventEmitter,this.dragend=new t.EventEmitter,this.drop=new t.EventEmitter,this.out=new t.EventEmitter,this.over=new t.EventEmitter,this.remove=new t.EventEmitter,this.shadow=new t.EventEmitter,this.dropModel=new t.EventEmitter,this.removeModel=new t.EventEmitter,this.events=["cancel","cloned","drag","dragend","drop","out","over","remove","shadow","dropModel","removeModel"],this.bags=[]}return e.prototype.add=function(e,t){var n=this.find(e);if(n)throw new Error("Bag named: "+e+" already exists.");return n={name:e,drake:t},this.bags.push(n),t.models&&this.handleModels(e,t),n.initEvents||this.setupEvents(n),n},e.prototype.find=function(e){for(var t=0;t<this.bags.length;t++)if(this.bags[t].name===e)return this.bags[t];return null},e.prototype.destroy=function(e){var t=this.find(e),n=this.bags.indexOf(t);this.bags.splice(n,1),t.drake.destroy()},e.prototype.setOptions=function(e,t){var n=this.add(e,cn(t));this.handleModels(e,n.drake)},e.prototype.handleModels=function(e,t){var n,o,a,i,r=this;t.on("remove",(function(n,a){t.models&&((i=t.models[t.containers.indexOf(a)]).splice(o,1),r.removeModel.emit([e,n,a]))})),t.on("drag",(function(e,t){n=e,o=r.domIndexOf(e,t)})),t.on("drop",(function(s,l,c){if(t.models){if(a=r.domIndexOf(s,l),i=t.models[t.containers.indexOf(c)],l===c)i.splice(a,0,i.splice(o,1)[0]);else{var d=n===s,p=t.models[t.containers.indexOf(l)],u=d?i[o]:JSON.parse(JSON.stringify(i[o]));d&&i.splice(o,1),p.splice(a,0,u),l.removeChild(s)}r.dropModel.emit([e,s,l,c])}}))},e.prototype.setupEvents=function(e){e.initEvents=!0;var t=this;this.events.forEach((function(n){e.drake.on(n,(function(){var o=Array.prototype.slice.call(arguments);t[n].emit([e.name].concat(o))}))}))},e.prototype.domIndexOf=function(e,t){return Array.prototype.indexOf.call(t.children,e)},e}();dn.decorators=[{type:t.Injectable}];var pn=D,un=function(){function e(e,t){this.dragulaService=t,this.drake=null,this.container=e.nativeElement}return e.prototype.ngOnInit=function(){var e=this.dragulaService.find(this.bag);e?(this.drake=e.drake,this.checkModel(),this.drake.containers.push(this.container)):(this.drake=pn({containers:[this.container]}),this.checkModel(),this.dragulaService.add(this.bag,this.drake))},e.prototype.checkModel=function(){this.dragulaModel&&(this.drake.models?this.drake.models.push(this.dragulaModel):this.drake.models=[this.dragulaModel])},e.prototype.ngOnChanges=function(e){if(e&&e.dragulaModel&&this.drake)if(this.drake.models){var t=this.drake.models.indexOf(e.dragulaModel.previousValue);this.drake.models.splice(t,1,e.dragulaModel.currentValue)}else this.drake.models=[e.dragulaModel.currentValue]},e}();un.decorators=[{type:t.Directive,args:[{selector:"[dragula]"}]}],un.ctorParameters=function(){return[{type:t.ElementRef},{type:dn}]},un.propDecorators={bag:[{type:t.Input,args:["dragula"]}],dragulaModel:[{type:t.Input}]};var mn=function(){};mn.decorators=[{type:t.NgModule,args:[{declarations:[un],exports:[un]}]}];var hn=[{code:"US",id:1,name:"United States",states:[{code:"AL",name:"Alabama"},{code:"AK",name:"Alaska"},{code:"AZ",name:"Arizona"},{code:"AR",name:"Arkansas"},{code:"CA",name:"California"},{code:"CO",name:"Colorado"},{code:"CT",name:"Connecticut"},{code:"DE",name:"Delaware"},{code:"DC",name:"District Of Columbia"},{code:"FL",name:"Florida"},{code:"GA",name:"Georgia"},{code:"GU",name:"Guam"},{code:"HI",name:"Hawaii"},{code:"ID",name:"Idaho"},{code:"IL",name:"Illinois"},{code:"IN",name:"Indiana"},{code:"IA",name:"Iowa"},{code:"KS",name:"Kansas"},{code:"KY",name:"Kentucky"},{code:"LA",name:"Louisiana"},{code:"ME",name:"Maine"},{code:"MH",name:"Marshall Islands"},{code:"MD",name:"Maryland"},{code:"MA",name:"Massachusetts"},{code:"MI",name:"Michigan"},{code:"MN",name:"Minnesota"},{code:"MS",name:"Mississippi"},{code:"MO",name:"Missouri"},{code:"MT",name:"Montana"},{code:"NE",name:"Nebraska"},{code:"NV",name:"Nevada"},{code:"NH",name:"New Hampshire"},{code:"NJ",name:"New Jersey"},{code:"NM",name:"New Mexico"},{code:"NY",name:"New York"},{code:"NC",name:"North Carolina"},{code:"ND",name:"North Dakota"},{code:"MP",name:"Northern Mariana Islands"},{code:"OH",name:"Ohio"},{code:"OK",name:"Oklahoma"},{code:"OR",name:"Oregon"},{code:"PW",name:"Palau"},{code:"PA",name:"Pennsylvania"},{code:"PR",name:"Puerto Rico"},{code:"RI",name:"Rhode Island"},{code:"SC",name:"South Carolina"},{code:"SD",name:"South Dakota"},{code:"TN",name:"Tennessee"},{code:"TX",name:"Texas"},{code:"UT",name:"Utah"},{code:"VT",name:"Vermont"},{code:"VI",name:"Virgin Islands"},{code:"VA",name:"Virginia"},{code:"WA",name:"Washington"},{code:"WV",name:"West Virginia"},{code:"WI",name:"Wisconsin"},{code:"WY",name:"Wyoming"}]},{code:"UK",id:2359,name:"United Kingdom",states:[{code:"ABD",name:"Aberdeenshire"},{code:"ALD",name:"Alderney"},{code:"ANS",name:"Angus"},{code:"ANN",name:"Antrim and Newtownabbey"},{code:"AGB",name:"Argyllshire"},{code:"ABC",name:"Armagh"},{code:"EAY",name:"Ayrshire"},{code:"BLA",name:"Ballymena"},{code:"BAY",name:"Ballymoney"},{code:"BNB",name:"Banbridge"},{code:"BAN",name:"Banffshire"},{code:"BDF",name:"Bedfordshire"},{code:"BFS",name:"Belfast"},{code:"BRK",name:"Berkshire"},{code:"BGW",name:"Blaenau Gwent"},{code:"SCB",name:"Borders"},{code:"BGE",name:"Bridgend"},{code:"BST",name:"Bristol"},{code:"BKM",name:"Buckinghamshire"},{code:"CAY",name:"Caerphilly"},{code:"CAI",name:"Caithness"},{code:"CAM",name:"Cambridgeshire"},{code:"CRF",name:"Cardiff"},{code:"CMN",name:"Carmarthenshire"},{code:"CKF",name:"Carrickfergus"},{code:"CAS",name:"Castlereagh"},{code:"CGN",name:"Ceredigion"},{code:"CHE",name:"Cheshire"},{code:"CLK",name:"Clackmannanshire"},{code:"CLR",name:"Coleraine"},{code:"CWY",name:"Conwy"},{code:"CKT",name:"Cookstown"},{code:"CON",name:"Cornwall"},{code:"DUR",name:"County Durham"},{code:"DRS",name:"County Londonderry"},{code:"CRA",name:"Craigavon"},{code:"CMA",name:"Cumbria"},{code:"DEN",name:"Denbighshire"},{code:"DBY",name:"Derbyshire"},{code:"DEV",name:"Devon"},{code:"DOR",name:"Dorset"},{code:"EDU",name:"Dumbartonshire"},{code:"DGY",name:"Dumfries and Galloway"},{code:"DGN",name:"Dungannon and South Tyrone"},{code:"ELN",name:"East Lothian"},{code:"ESX",name:"East Sussex"},{code:"ERY",name:"East Yorkshire"},{code:"ESS",name:"Essex"},{code:"FMO",name:"Fermanagh and Omagh"},{code:"FIF",name:"Fife"},{code:"FLN",name:"Flintshire"},{code:"GLG",name:"Glasgow"},{code:"GLS",name:"Gloucestershire"},{code:"LND",name:"Greater London"},{code:"MAN",name:"Greater Manchester"},{code:"GSY",name:"Guernsey"},{code:"GWN",name:"Gwynedd"},{code:"HAM",name:"Hampshire"},{code:"HEF",name:"Herefordshire"},{code:"HRM",name:"Herm"},{code:"HRT",name:"Hertfordshire"},{code:"HLD",name:"Highland"},{code:"INV",name:"Inverness-shire"},{code:"AGY",name:"Isle of Anglesey"},{code:"IOM",name:"Isle of Man"},{code:"IOW",name:"Isle of Wight"},{code:"JSY",name:"Jersey"},{code:"KEN",name:"Kent"},{code:"KCD",name:"Kincardineshire"},{code:"KKD",name:"Kirkcudbrightshire"},{code:"LAN",name:"Lancashire"},{code:"LRN",name:"Larne"},{code:"LEC",name:"Leicestershire"},{code:"LMV",name:"Limavady"},{code:"LIN",name:"Lincolnshire"},{code:"LBC",name:"Lisburn and Castlereagh"},{code:"MFT",name:"Magherafelt"},{code:"MER",name:"Merseyside"},{code:"MTY",name:"Merthyr Tydfil"},{code:"MLN",name:"Midlothian"},{code:"MON",name:"Monmouthshire"},{code:"MRY",name:"Morayshire"},{code:"MYL",name:"Moyle"},{code:"NAI",name:"Nairn"},{code:"NTL",name:"Neath Port Talbot"},{code:"NWP",name:"Newport"},{code:"NMD",name:"Newry, Mourne and Down"},{code:"NFK",name:"Norfolk"},{code:"AND",name:"North Down and Ards"},{code:"NLK",name:"North Lanarkshire"},{code:"NYK",name:"North Yorkshire"},{code:"NTH",name:"Northamptonshire"},{code:"NBL",name:"Northumberland"},{code:"NTT",name:"Nottinghamshire"},{code:"OMA",name:"Omagh"},{code:"ORK",name:"Orkney Islands"},{code:"OXF",name:"Oxfordshire"},{code:"PEM",name:"Pembrokeshire"},{code:"PKN",name:"Perth and Kinross"},{code:"PER",name:"Perthshire and Kinross"},{code:"POW",name:"Powys"},{code:"RCC",name:"Redcar and Cleveland"},{code:"RFW",name:"Renfrewshire"},{code:"RCT",name:"Rhondda Cynon Taff"},{code:"RUT",name:"Rutland"},{code:"SRK",name:"Sark"},{code:"ZET",name:"Shetland Islands"},{code:"SHR",name:"Shropshire"},{code:"SOM",name:"Somerset"},{code:"SLK",name:"South Lanarkshire"},{code:"SYK",name:"South Yorkshire"},{code:"STS",name:"Staffordshire"},{code:"STG",name:"Stirlingshire"},{code:"STR",name:"Strabane"},{code:"SFK",name:"Suffolk"},{code:"SRY",name:"Surrey"},{code:"SSX",name:"Sussex"},{code:"SUT",name:"Sutherland"},{code:"SWA",name:"Swansea"},{code:"TOF",name:"Torfaen"},{code:"TWR",name:"Tyne and Wear"},{code:"VGL",name:"Vale of Glamorgan"},{code:"WAR",name:"Warwickshire"},{code:"WLN",name:"West Lothian"},{code:"WMD",name:"West Midlands"},{code:"WSX",name:"West Sussex"},{code:"WRY",name:"West Yorkshire"},{code:"ELS",name:"Western Isles"},{code:"WIL",name:"Wiltshire"},{code:"WOR",name:"Worcestershire"},{code:"WRX",name:"Wrexham"}]},{code:"AF",id:2185,name:"Afghanistan",states:[{code:"AF01",name:"Badakhshan"},{code:"AF02",name:"Badghis"},{code:"AF03",name:"Baghlan"},{code:"AF30",name:"Balkh"},{code:"AF05",name:"Bamian"},{code:"AF41",name:"Daikondi"},{code:"AF06",name:"Farah"},{code:"AF07",name:"Faryab"},{code:"AF08",name:"Ghazni"},{code:"AF09",name:"Ghowr"},{code:"AF10",name:"Helmand"},{code:"AF11",name:"Herat"},{code:"AF31",name:"Jowzjan"},{code:"AF13",name:"Kabul"},{code:"AF23",name:"Kandahar"},{code:"AF14",name:"Kapisa"},{code:"AF37",name:"Khowst"},{code:"AF34",name:"Konar"},{code:"AF24",name:"Kondoz"},{code:"AF35",name:"Laghman"},{code:"AF17",name:"Lowgar"},{code:"AF18",name:"Nangarhar"},{code:"AF19",name:"Nimruz"},{code:"AF38",name:"Nurestan"},{code:"AF39",name:"Oruzgan"},{code:"AF36",name:"Paktia"},{code:"AF29",name:"Paktika"},{code:"AF42",name:"Panjshir"},{code:"AF40",name:"Parvan"},{code:"AF32",name:"Samangan"},{code:"AF33",name:"Sar-e Pol"},{code:"AF26",name:"Takhar"},{code:"AF27",name:"Vardak"},{code:"AF28",name:"Zabol"}]},{code:"AX",id:2407,name:"Åland Islands",states:[]},{code:"AL",id:2186,name:"Albania",states:[]},{code:"DZ",id:2187,name:"Algeria",states:[{code:"DZ.AR",name:"Adrar"},{code:"DZ.AD",name:"Aïn Defla"},{code:"DZ.AT",name:"Aïn Témouchent"},{code:"DZ.AL",name:"Algiers"},{code:"DZ.AN",name:"Annaba"},{code:"DZ.BT",name:"Batna"},{code:"DZ.BC",name:"Béchar"},{code:"DZ.BJ",name:"Béjaïa"},{code:"DZ.BS",name:"Biskra"},{code:"DZ.BL",name:"Blida"},{code:"DZ.BB",name:"Bordj Bou Arréridj"},{code:"DZ.BU",name:"Bouira"},{code:"DZ.BM",name:"Boumerdès"},{code:"DZ.CH",name:"Chlef"},{code:"DZ.CO",name:"Constantine"},{code:"DZ.DJ",name:"Djelfa"},{code:"DZ.EB",name:"El Bayadh"},{code:"DZ.EO",name:"El Oued"},{code:"DZ.ET",name:"El Tarf"},{code:"DZ.GR",name:"Ghardaïa"},{code:"DZ.GL",name:"Guelma"},{code:"DZ.IL",name:"Illizi"},{code:"DZ.JJ",name:"Jijel"},{code:"DZ.KH",name:"Khenchela"},{code:"DZ.LG",name:"Laghouat"},{code:"DZ.MC",name:"Mascara"},{code:"DZ.MD",name:"Médéa"},{code:"DZ.ML",name:"Mila"},{code:"DZ.MG",name:"Mostaganem"},{code:"DZ.MS",name:"Msila"},{code:"DZ.NA",name:"Naama"},{code:"DZ.OR",name:"Oran"},{code:"DZ.OG",name:"Ouargla"},{code:"DZ.OB",name:"Oum el Bouaghi"},{code:"DZ.RE",name:"Relizane"},{code:"DZ.SD",name:"Saïda"},{code:"DZ.SF",name:"Sétif"},{code:"DZ.SB",name:"Sidi Bel Abbès"},{code:"DZ.SK",name:"Skikda"},{code:"DZ.SA",name:"Souk Ahras"},{code:"DZ.TM",name:"Tamanrasset"},{code:"DZ.TB",name:"Tébessa"},{code:"DZ.TR",name:"Tiaret"},{code:"DZ.TN",name:"Tindouf"},{code:"DZ.TP",name:"Tipaza"},{code:"DZ.TS",name:"Tissemsilt"},{code:"DZ.TO",name:"Tizi Ouzou"},{code:"DZ.TL",name:"Tlemcen"}]},{code:"AS",id:2408,name:"American Samoa",states:[]},{code:"AD",id:2188,name:"Andorra",states:[]},{code:"AO",id:2189,name:"Angola",states:[{code:"AO19",name:"Bengo"},{code:"AO01",name:"Benguela"},{code:"AO02",name:"Bié"},{code:"AO03",name:"Cabinda"},{code:"AO04",name:"Cuando Cubango"},{code:"AO05",name:"Cuanza Norte"},{code:"AO06",name:"Cuanza Sul"},{code:"AO07",name:"Cunene"},{code:"AO08",name:"Huambo"},{code:"AO09",name:"Huíla"},{code:"AO20",name:"Luanda"},{code:"AO17",name:"Lunda Norte"},{code:"AO18",name:"Lunda Sul"},{code:"AO12",name:"Malanje"},{code:"AO14",name:"Moxico"},{code:"AO13",name:"Namibe"},{code:"AO15",name:"Uíge"},{code:"AO16",name:"Zaire"}]},{code:"AI",id:2409,name:"Anguilla",states:[]},{code:"AQ",id:2190,name:"Antarctica",states:[]},{code:"AG",id:2191,name:"Antigua and Barbuda",states:[]},{code:"AR",id:2192,name:"Argentina",states:[{code:"AR01",name:"Buenos Aires"},{code:"AR02",name:"Catamarca"},{code:"AR03",name:"Chaco"},{code:"AR04",name:"Chubut"},{code:"AR07",name:"Ciudad de Buenos Aires"},{code:"AR05",name:"Córdoba"},{code:"AR06",name:"Corrientes"},{code:"AR08",name:"Entre Ríos"},{code:"AR09",name:"Formosa"},{code:"AR10",name:"Jujuy"},{code:"AR11",name:"La Pampa"},{code:"AR12",name:"La Rioja"},{code:"AR13",name:"Mendoza"},{code:"AR14",name:"Misiones"},{code:"AR15",name:"Neuquén"},{code:"AR16",name:"Río Negro"},{code:"AR17",name:"Salta"},{code:"AR18",name:"San Juan"},{code:"AR19",name:"San Luis"},{code:"AR20",name:"Santa Cruz"},{code:"AR21",name:"Santa Fe"},{code:"AR22",name:"Santiago del Estero"},{code:"AR23",name:"Tierra del Fuego"},{code:"AR24",name:"Tucumán"}]},{code:"AM",id:2193,name:"Armenia",states:[]},{code:"AB",id:2373,name:"Aruba",states:[{code:"AW.AA",name:"Aruba"}]},{code:"AU",id:2194,name:"Australia",states:[{code:"ACT",name:"Australian Capital Territory"},{code:"NSW",name:"New South Wales"},{code:"NT",name:"Northern Territory"},{code:"QLD",name:"Queensland"},{code:"SA",name:"South Australia"},{code:"TAS",name:"Tasmania"},{code:"VIC",name:"Victoria"},{code:"WA",name:"Western Australia"}]},{code:"AT",id:2195,name:"Austria",states:[{code:"AU01",name:"Burgenland"},{code:"AU02",name:"Carinthia"},{code:"AU03",name:"Lower Austria"},{code:"AU05",name:"Salzburg"},{code:"AU06",name:"Styria"},{code:"AU07",name:"Tyrol"},{code:"AU04",name:"Upper Austria"},{code:"AU09",name:"Vienna"},{code:"AU08",name:"Vorarlberg"}]},{code:"AZ",id:2196,name:"Azerbaijan",states:[{code:"AZ-ABS",name:"Absheron"},{code:"AZ-AGM",name:"Aghdam"},{code:"AZ-AGS",name:"Aghdash"},{code:"AZ-AGC",name:"Aghjabedi"},{code:"AZ-AGA",name:"Aghstafa"},{code:"AZ-AGU",name:"Aghsu"},{code:"AZ-AB",name:"Ali-Bairamly"},{code:"AZ-AST",name:"Astara"},{code:"AZ-BAB",name:"Babek"},{code:"AZ-BA",name:"Baku"},{code:"AZ-BAL",name:"Balaken"},{code:"AZ-BAR",name:"Barda"},{code:"AZ-BEY",name:"Beilagan"},{code:"AZ-BIL",name:"Bilasuvar"},{code:"AZ-DAS",name:"Dashkesan"},{code:"AZ-DAV",name:"Devechi"},{code:"AZ-FUZ",name:"Fizuli"},{code:"AZ-QAB",name:"Gabala"},{code:"AZ-GAD",name:"Gadabey"},{code:"AZ-QAX",name:"Gakh"},{code:"AZ-GA",name:"Ganja"},{code:"AZ-QAZ",name:"Gazakh"},{code:"AZ-GOR",name:"Geranboy"},{code:"AZ-QOB",name:"Gobustan"},{code:"AZ-GOY",name:"Goychay"},{code:"AZ-QBA",name:"Guba"},{code:"AZ-QBI",name:"Gubadly"},{code:"AZ-QUS",name:"Gusar"},{code:"AZ-HAC",name:"Hacuqabul"},{code:"AZ-IMI",name:"Imishli"},{code:"AZ-ISM",name:"Ismailly"},{code:"AZ-CAL",name:"Jalilabad"},{code:"AZ-CAB",name:"Jebrail"},{code:"AZ-CUL",name:"Julfa"},{code:"AZ-KAL",name:"Kelbajar"},{code:"AZ-XAC",name:"Khachmaz"},{code:"AZ-XA",name:"Khankendy"},{code:"AZ-XAN",name:"Khanlar"},{code:"AZ-XCI",name:"Khojaly"},{code:"AZ-XVD",name:"Khojavend"},{code:"AZ-XIZ",name:"Khyzy"},{code:"AZ-KUR",name:"Kyurdamir"},{code:"AZ-LAC",name:"Lachin"},{code:"AZ-LAN",name:"Lenkaran"},{code:"AZ-LA",name:"Lenkaran"},{code:"AZ-LER",name:"Lerik"},{code:"AZ-MAS",name:"Masally"},{code:"AZ-MI",name:"Mingechevir"},{code:"AZ-NA",name:"Naftalan"},{code:"AZ-NX",name:"Nakhchivan"},{code:"AZ-NEF",name:"Neftchala"},{code:"AZ-OGU",name:"Oghuz"},{code:"AZ-ORD",name:"Ordubad"},{code:"AZ-SAT",name:"Saatly"},{code:"AZ-SAB",name:"Sabirabad"},{code:"AZ-SAL",name:"Salyan"},{code:"AZ-SMX",name:"Samuh"},{code:"AZ-SAD",name:"Sedarak"},{code:"AZ-SAH",name:"Shahbuz"},{code:"AZ-SMI",name:"Shamakhy"},{code:"AZ-SKR",name:"Shamkir"},{code:"AZ-SAK",name:"Sheki"},{code:"AZ-SA",name:"Sheki"},{code:"AZ-SAR",name:"Sherur"},{code:"AZ-SS",name:"Shusha"},{code:"AZ-SUS",name:"Shusha"},{code:"AZ-SIY",name:"Siazan"},{code:"AZ-SM",name:"Sumgayit"},{code:"AZ-TAR",name:"Terter"},{code:"AZ-TOV",name:"Tovuz"},{code:"AZ-UCA",name:"Ujar"},{code:"AZ-YAR",name:"Yardymly"},{code:"AZ-YE",name:"Yevlakh"},{code:"AZ-YEV",name:"Yevlakh"},{code:"AZ-ZAQ",name:"Zagatala"},{code:"AZ-ZAN",name:"Zangilan"},{code:"AZ-ZAR",name:"Zerdab"}]},{code:"BS",id:2197,name:"Bahamas",states:[{code:"BF24",name:"Acklins"},{code:"BF32",name:"Berry Islands"},{code:"BF05",name:"Bimini"},{code:"BF36",name:"Black Point"},{code:"BF06",name:"Cat Island"},{code:"BF37",name:"Central Abaco"},{code:"BF38",name:"Central Andros"},{code:"BF39",name:"Central Eleuthera"},{code:"BF25",name:"City of Freeport"},{code:"BF40",name:"Crooked Island"},{code:"BF41",name:"East Grand Bahama"},{code:"BF10",name:"Exuma"},{code:"BF42",name:"Grand Cay"},{code:"BS.GT\t",name:"Green Turtle Cay"},{code:"BF22",name:"Harbour Island"},{code:"BF43",name:"Hope Town"},{code:"BF13",name:"Inagua"},{code:"BF15",name:"Long Island"},{code:"BF44",name:"Mangrove Cay"},{code:"BF16",name:"Mayaguana"},{code:"BF45",name:"Moore's Island"},{code:"BS.NW",name:"New Providence"},{code:"BF46",name:"North Abaco"},{code:"BF47",name:"North Andros"},{code:"BF48",name:"North Eleuthera"},{code:"BF18",name:"Ragged Island"},{code:"BF49",name:"Rum Cay"},{code:"BF35",name:"San Salvador"},{code:"BF50",name:"South Abaco"},{code:"BF51",name:"South Andros"},{code:"BF52",name:"South Eleuthera"},{code:"BF53",name:"Spanish Wells"},{code:"BF54",name:"West Grand Bahama"}]},{code:"BH",id:2198,name:"Bahrain",states:[{code:"BA16",name:"Capital"},{code:"BA19",name:"Central"},{code:"BA15",name:"Muharraq"},{code:"BA18",name:"Northern"},{code:"BA17",name:"Southern"}]},{code:"BD",id:2199,name:"Bangladesh",states:[{code:"BG85",name:"Barisal"},{code:"BG84",name:"Chittagong"},{code:"BG81",name:"Dhaka"},{code:"BG82",name:"Khulna"},{code:"BG81",name:"Mymensingh"},{code:"BG83",name:"Rajshahi"},{code:"BG87",name:"Rangpur"},{code:"BG86",name:"Sylhet"}]},{code:"BB",id:2200,name:"Barbados",states:[{code:"BB01",name:"Christ Church"},{code:"BB02",name:"Saint Andrew"},{code:"BB03",name:"Saint George"},{code:"BB04",name:"Saint James"},{code:"BB05",name:"Saint John"},{code:"BB06",name:"Saint Joseph"},{code:"BB07",name:"Saint Lucy"},{code:"BB08",name:"Saint Michael"},{code:"BB09",name:"Saint Peter"},{code:"BB10",name:"Saint Philip"},{code:"BB11",name:"Saint Thomas"}]},{code:"BY",id:2201,name:"Belarus",states:[{code:"BO01",name:"Brest"},{code:"BO02",name:"Gomel"},{code:"BO03",name:"Grodno"},{code:"BO05",name:"Minsk"},{code:"BO04",name:"Minsk City"},{code:"BO06",name:"Mogilev"},{code:"BO07",name:"Vitebsk"}]},{code:"BE",id:2202,name:"Belgium",states:[{code:"BE01",name:"Antwerpen Province"},{code:"BE11",name:"Brussels-Capital Region"},{code:"BE12",name:"Flemish Brabant Province"},{code:"BE03",name:"Hainaut Province"},{code:"BE04",name:"Liege Province"},{code:"BE05",name:"Limburg Province"},{code:"BE06",name:"Luxembourg Province"},{code:"BE07",name:"Namur Province"},{code:"BE08",name:"Oost-Vlaanderen Province"},{code:"BE10",name:"Walloon Brabant Province"},{code:"BE09",name:"West-Vlaanderen Province"}]},{code:"BZ",id:2203,name:"Belize",states:[]},{code:"BJ",id:2204,name:"Benin",states:[{code:"BN07",name:"Alibori"},{code:"BN08",name:"Atacora"},{code:"BN09",name:"Atlantique"},{code:"BN10",name:"Borgou"},{code:"BN11",name:"Collines"},{code:"BN12",name:"Couffo"},{code:"BN13",name:"Donga"},{code:"BN14",name:"Littoral"},{code:"BN15",name:"Mono"},{code:"BN16",name:"Ouémé"},{code:"BN17",name:"Plateau"},{code:"BN18",name:"Zou"}]},{code:"BU",id:2372,name:"Bermuda",states:[{code:"BM.BD",name:"Bermuda"},{code:"BD01",name:"Devonshire"},{code:"BD03",name:"Hamilton municipality"},{code:"BD02",name:"Hamilton"},{code:"BD04",name:"Paget"},{code:"BD05",name:"Pembroke"},{code:"BD06",name:"Saint George municipality"},{code:"BD07",name:"Saint George's"},{code:"BD08",name:"Sandys"},{code:"BD09",name:"Smiths"},{code:"BD10",name:"Southampton"},{code:"BD11",name:"Warwick"}]},{code:"BT",id:2205,name:"Bhutan",states:[]},{code:"BO",id:2206,name:"Bolivia; Plurinational State",states:[{code:"BL01",name:"Chuquisaca"},{code:"BL02",name:"Cochabamba"},{code:"BL03",name:"El Beni"},{code:"BL04",name:"La Paz"},{code:"BL05",name:"Oruro"},{code:"BL06",name:"Pando"},{code:"BL07",name:"Potosí"},{code:"BL08",name:"Santa Cruz"},{code:"BL09",name:"Tarija"}]},{code:"BQ",id:2449,name:"Bonaire",states:[{code:"BQ.BO",name:"Bonaire"},{code:"BQ.SB",name:"Saba"},{code:"BQ.SE",name:"Sint Eustatius"}]},{code:"BA",id:2207,name:"Bosnia and Herzegovina",states:[{code:"BA-05",name:"Bosansko-podrinjski kanton"},{code:"BA-BRC",name:"Brcko distrikt"},{code:"BA-BIH",name:"Federacija Bosna i Hercegovina"},{code:"BA-07",name:"Hercegovacko-neretvanski kanton"},{code:"BA-09",name:"Kanton Sarajevo"},{code:"BA-10",name:"Livanjski kanton"},{code:"BA-02",name:"Posavski kanton"},{code:"BA-SRP",name:"Republika Srpska"},{code:"BA-06",name:"Srednjobosanski kanton"},{code:"BA-03",name:"Tuzlanski kanton"},{code:"BA-01",name:"Unsko-sanski kanton"},{code:"BA-08",name:"Zapadnohercegovacki kanton"},{code:"BA-04",name:"Zenicko-dobojski kanton"}]},{code:"BW",id:2208,name:"Botswana",states:[{code:"BC01",name:"Central"},{code:"BC12",name:"Chobe"},{code:"BC13",name:"Francistown"},{code:"BC14",name:"Gaborone"},{code:"BC03",name:"Ghanzi"},{code:"BC15",name:"Jwaneng"},{code:"BC04",name:"Kgalagadi"},{code:"BC05",name:"Kgatleng"},{code:"BC06",name:"Kweneng"},{code:"BC16",name:"Lobatse"},{code:"BC08",name:"North-East"},{code:"BC11",name:"North-West"},{code:"BC17",name:"Selibe Phikwe"},{code:"BC09",name:"South East"},{code:"BC10",name:"Southern"},{code:"BC18",name:"Sowa Town"}]},{code:"BV",id:2410,name:"Bouvet Island",states:[]},{code:"BR",id:2209,name:"Brazil",states:[{code:"AC",name:"Acre"},{code:"AL",name:"Alagoas"},{code:"AP",name:"Amapá"},{code:"AM",name:"Amazonas"},{code:"BA",name:"Bahia"},{code:"CE",name:"Ceará"},{code:"DF",name:"Distrito Federal"},{code:"ES",name:"Espírito Santo"},{code:"GO",name:"Goiás"},{code:"MA",name:"Maranhão"},{code:"MT",name:"Mato Grosso"},{code:"MS",name:"Mato Grosso do Sul"},{code:"MG",name:"Minas Gerais"},{code:"PA",name:"Pará"},{code:"PR",name:"Paraná"},{code:"PB",name:"Paraíba"},{code:"PE",name:"Pernambuco"},{code:"PI",name:"Piauí"},{code:"RN",name:"Rio Grande do Norte"},{code:"RS",name:"Rio Grande do Sul"},{code:"RJ",name:"Rio de Janeiro"},{code:"RO",name:"Rondônia"},{code:"RR",name:"Roraima"},{code:"SC",name:"Santa Catarina"},{code:"SP",name:"São Paulo"},{code:"SE",name:"Sergipe"},{code:"TO",name:"Tocantins"}]},{code:"IO",id:2411,name:"British Indian Ocean Territory",states:[]},{code:"BN",id:2210,name:"Brunei Darussalam",states:[{code:"BX01",name:"Amo"},{code:"BX02",name:"Bandar Seri Begawan"},{code:"BX03",name:"Bangar"},{code:"BX04",name:"Batu Apoi"},{code:"BX05",name:"Berakas"},{code:"BX06",name:"Bokok"},{code:"BX07",name:"Bukit Sawat"},{code:"BX08",name:"Burong Pinggai Ayer"},{code:"BX09",name:"Gadong"},{code:"BX10",name:"Keriam"},{code:"BX11",name:"Kianggeh"},{code:"BX12",name:"Kilanas"},{code:"BX13",name:"Kiudang"},{code:"BX14",name:"Kota Batu"},{code:"BX15",name:"Kuala Balai"},{code:"BX16",name:"Kuala Belait"},{code:"BX17",name:"Labi"},{code:"BX18",name:"Labu"},{code:"BX19",name:"Lamunin"},{code:"BX20",name:"Liang"},{code:"BX21",name:"Lumapas"},{code:"BX22",name:"Melilas"},{code:"BX23",name:"Mentiri"},{code:"BX24",name:"Pekan Tutong"},{code:"BX25",name:"Pengkalan Batu"},{code:"BX26",name:"Peramu"},{code:"BX27",name:"Rambai"},{code:"BX28",name:"Saba"},{code:"BX29",name:"Sengkurong"},{code:"BX30",name:"Serasa"},{code:"BX31",name:"Seria"},{code:"BX32",name:"Sukang"},{code:"BX33",name:"Sungai Kebun"},{code:"BX34",name:"Sungai Kedayan"},{code:"BX35",name:"Tamoi"},{code:"BX36",name:"Tanjong Maya"},{code:"BX37",name:"Telisai"},{code:"BX38",name:"Ukong"}]},{code:"BG",id:2211,name:"Bulgaria",states:[{code:"BU38",name:"Blagoevgrad"},{code:"BU39",name:"Burgas"},{code:"BU40",name:"Dobrich"},{code:"BU41",name:"Gabrovo"},{code:"BU42",name:"Grad Sofiya"},{code:"BU43",name:"Khaskovo"},{code:"BU44",name:"Kurdzhali"},{code:"BU45",name:"Kyustendil"},{code:"BU46",name:"Lovech"},{code:"BU47",name:"Montana"},{code:"BU48",name:"Pazardzhik"},{code:"BU49",name:"Pernik"},{code:"BU50",name:"Pleven"},{code:"BU51",name:"Plovdiv"},{code:"BU52",name:"Razgrad"},{code:"BU53",name:"Ruse"},{code:"BU54",name:"Shumen"},{code:"BU55",name:"Silistra"},{code:"BU56",name:"Sliven"},{code:"BU57",name:"Smolyan"},{code:"BU58",name:"Sofiya"},{code:"BU59",name:"Stara Zagora"},{code:"BU60",name:"Turgovishte"},{code:"BU61",name:"Varna"},{code:"BU62",name:"Veliko Turnovo"},{code:"BU63",name:"Vidin"},{code:"BU64",name:"Vratsa"},{code:"BU65",name:"Yambol"}]},{code:"BF",id:2212,name:"Burkina Faso",states:[{code:"UV79",name:"Boucle du Mouhoun"},{code:"UV80",name:"Cascades"},{code:"UV82",name:"Centre Est"},{code:"UV83",name:"Centre Nord"},{code:"UV84",name:"Centre Ouest"},{code:"UV81",name:"Centre"},{code:"UV85",name:"Centre Sud"},{code:"UV86",name:"Est"},{code:"UV87",name:"Hauts Bassins"},{code:"UV88",name:"Nord"},{code:"UV89",name:"Plateau Central"},{code:"UV90",name:"Sahel"},{code:"UV91",name:"Sud-Ouest"}]},{code:"BM",id:2385,name:"Burma",states:[{code:"BM03",name:"Ayeyarwady"},{code:"BM16",name:"Bago"},{code:"BM02",name:"Chin"},{code:"BM04",name:"Kachin"},{code:"BM06",name:"Kayah"},{code:"BM05",name:"Kayin"},{code:"BM15",name:"Magway"},{code:"BM08",name:"Mandalay"},{code:"BM13",name:"Mon"},{code:"BM18",name:"Naypyidaw"},{code:"BM01",name:"Rakhine"},{code:"BM10",name:"Sagaing"},{code:"BM11",name:"Shan"},{code:"BM12",name:"Tanintharyi"},{code:"BM17",name:"Yangon"}]},{code:"BI",id:2213,name:"Burundi",states:[]},{code:"KH",id:2214,name:"Cambodia",states:[{code:"CB25",name:"Bântéay Méanchey"},{code:"CB29",name:"Batdâmbâng"},{code:"CB02",name:"Kâmpóng Cham"},{code:"CB03",name:"Kâmpóng Chhnang"},{code:"CB04",name:"Kâmpóng Spœ"},{code:"CB05",name:"Kâmpóng Thum"},{code:"CB21",name:"Kâmpôt"},{code:"CB07",name:"Kândal"},{code:"CB08",name:"Kaôh Kong"},{code:"CB09",name:"Krâchéh"},{code:"CB26",name:"Krong Keb"},{code:"CB30",name:"Krong Pailin"},{code:"CB28",name:"Krong Preah Sihanouk"},{code:"CB10",name:"Môndól Kiri"},{code:"CB27",name:"Otdâr Méanchey"},{code:"CB22",name:"Phnom Penh"},{code:"CB12",name:"Pouthisat"},{code:"CB13",name:"Preah Vihéar"},{code:"CB14",name:"Prey Vêng"},{code:"CB23",name:"Rôtânôkiri"},{code:"CB24",name:"Siemréab"},{code:"CB17",name:"Stœ?ng Trêng"},{code:"CB18",name:"Svay Rieng"},{code:"CB19",name:"Takêv"},{code:"CB31",name:"Tbong Khmum"}]},{code:"CM",id:2215,name:"Cameroon",states:[{code:"CM10",name:"Adamaoua"},{code:"CM11",name:"Centre"},{code:"CM04",name:"Est"},{code:"CM12",name:"Extrême-Nord"},{code:"CM05",name:"Littoral"},{code:"CM07",name:"Nord-Ouest"},{code:"CM13",name:"Nord"},{code:"CM08",name:"Ouest"},{code:"CM09",name:"Sud-Ouest"},{code:"CM14",name:"Sud"}]},{code:"CA",id:2216,name:"Canada",states:[{code:"AB",name:"Alberta"},{code:"BC",name:"British Columbia"},{code:"MB",name:"Manitoba"},{code:"NB",name:"New Brunswick"},{code:"NL",name:"Newfoundland and Labrador"},{code:"NT",name:"Northwest Territories"},{code:"NS",name:"Nova Scotia"},{code:"NU",name:"Nunavut"},{code:"ON",name:"Ontario"},{code:"PE",name:"Prince Edward Island"},{code:"QC",name:"Quebec"},{code:"SK",name:"Saskatchewan"},{code:"YT",name:"Yukon"}]},{code:"CV",id:2217,name:"Cape Verde",states:[]},{code:"KY",id:2379,name:"Cayman Islands",states:[{code:"KY.BT",name:"Bodden Town"},{code:"KY.CJ",name:"Cayman Islands"},{code:"KY.EE",name:"East End"},{code:"KY.GT",name:"George Town"},{code:"KY.NS",name:"North Side"},{code:"KY.SI",name:"Sister Islands"},{code:"KY.WB",name:"West Bay"}]},{code:"CF",id:2218,name:"Central African Republic",states:[{code:"CT01",name:"Bamingui-Bangoran"},{code:"CT18",name:"Bangui"},{code:"CT02",name:"Basse-Kotto"},{code:"CT05",name:"Haut-Mbomou"},{code:"CT03",name:"Haute-Kotto"},{code:"CT06",name:"Kémo"},{code:"CT07",name:"Lobaye"},{code:"CT04",name:"Mambéré-Kadéï"},{code:"CT08",name:"Mbomou"},{code:"CT15",name:"Nana-Grébizi"},{code:"CT09",name:"Nana-Mambéré"},{code:"CT17",name:"Ombella-M'Poko"},{code:"CT11",name:"Ouaka"},{code:"CT12",name:"Ouham"},{code:"CT13",name:"Ouham-Pendé"},{code:"CT16",name:"Sangha-Mbaéré"},{code:"CT14",name:"Vakaga"}]},{code:"TD",id:2219,name:"Chad",states:[{code:"CD22",name:"Barh el Ghazel"},{code:"CD01",name:"Batha"},{code:"CD23",name:"Borkou"},{code:"CD15",name:"Chari-Baguirmi"},{code:"CD27",name:"Ennedi Est"},{code:"CD28",name:"Ennedi Ouest"},{code:"CD05",name:"Guéra"},{code:"CD18",name:"Hadjer-Lamis"},{code:"CD06",name:"Kanem"},{code:"CD07",name:"Lac"},{code:"CD08",name:"Logone Occidental"},{code:"CD09",name:"Logone Oriental"},{code:"CD19",name:"Mandoul"},{code:"CD16",name:"Mayo-Kebbi Est"},{code:"CD20",name:"Mayo-Kebbi Ouest"},{code:"CD17",name:"Moyen-Chari"},{code:"CD12",name:"Ouaddaï"},{code:"CD13",name:"Salamat"},{code:"CD25",name:"Sila"},{code:"CD14",name:"Tandjilé"},{code:"CD26",name:"Tibesti"},{code:"CD21",name:"Ville de N'Djamena"},{code:"CD02",name:"Wadi Fira"}]},{code:"CH99",id:2386,name:"Channel Islands",states:[]},{code:"CL",id:2220,name:"Chile",states:[{code:"CL.AI",name:"Aisén del General Carlos Ibáñez del Campo"},{code:"CL.AN",name:"Antofagasta"},{code:"CL.AR",name:"Araucanía"},{code:"CL.AP",name:"Arica and Parinacota"},{code:"CL.AT",name:"Atacama"},{code:"CL.BI",name:"Bío-Bío"},{code:"CL.CO",name:"Coquimbo"},{code:"CL.LI",name:"Libertador General Bernardo O'Higgins"},{code:"CL.LG",name:"Los Lagos"},{code:"CL.LR",name:"Los Ríos"},{code:"CL.MA",name:"Magallanes y Antártica Chilena"},{code:"CL.ML",name:"Maule"},{code:"CL.RM",name:"Región Metropolitana de Santiago"},{code:"CL.TP",name:"Tarapacá"},{code:"CL.VS",name:"Valparaíso"}]},{code:"CN",id:2221,name:"China",states:[{code:"CH01",name:"Anhui"},{code:"CH22",name:"Beijing"},{code:"CH33",name:"Chongqing"},{code:"CH07",name:"Fujian"},{code:"CH15",name:"Gansu"},{code:"CH17",name:"Guangdon"},{code:"CH30",name:"Guangdong"},{code:"CH16",name:"Guangxi"},{code:"CH18",name:"Guizhou"},{code:"CH31",name:"Hainan"},{code:"CH10",name:"Hebei"},{code:"CH08",name:"Heilongjiang"},{code:"CH09",name:"Henan"},{code:"CH34",name:"Hong Kong"},{code:"CH12",name:"Hubei"},{code:"CH11",name:"Hunan"},{code:"CH04",name:"Jiangsu"},{code:"CH03",name:"Jiangxi"},{code:"CH05",name:"Jilin"},{code:"CH19",name:"Liaoning"},{code:"CH20",name:"Nei Mongol"},{code:"CH21",name:"Ningxia"},{code:"CH06",name:"Qinghai"},{code:"CH26",name:"Shaanxi"},{code:"CH25",name:"Shandong"},{code:"CH23",name:"Shanghai"},{code:"CH24",name:"Shanxi"},{code:"CH32",name:"Sichuan"},{code:"CH27",name:"Sichuan"},{code:"CH28",name:"Tianjin"},{code:"CH13",name:"Xinjiang"},{code:"CH14",name:"Xizang"},{code:"CH29",name:"Yunnan"},{code:"CH02",name:"Zhejiang"}]},{code:"CX",id:2412,name:"Christmas Island",states:[]},{code:"CC",id:2413,name:"Cocos (Keeling) Islands",states:[]},{code:"CO",id:2222,name:"Colombia",states:[{code:"CO01",name:"Amazonas"},{code:"CO02",name:"Antioquia"},{code:"CO03",name:"Arauca"},{code:"CO04",name:"Atlántico"},{code:"CO35",name:"Bolívar"},{code:"CO36",name:"Boyacá"},{code:"CO37",name:"Caldas"},{code:"CO08",name:"Caquetá"},{code:"CO32",name:"Casanare"},{code:"CO09",name:"Cauca"},{code:"CO10",name:"Cesar"},{code:"CO11",name:"Chocó"},{code:"CO12",name:"Córdoba"},{code:"CO33",name:"Cundinamarca"},{code:"CO34",name:"Distrito Capital"},{code:"CO15",name:"Guainía"},{code:"CO14",name:"Guaviare"},{code:"CO16",name:"Huila"},{code:"CO17",name:"La Guajira"},{code:"CO38",name:"Magdalena"},{code:"CO19",name:"Meta"},{code:"CO20",name:"Nariño"},{code:"CO21",name:"Norte de Santander"},{code:"CO22",name:"Putumayo"},{code:"CO23",name:"Quindío"},{code:"CO24",name:"Risaralda"},{code:"CO25",name:"San Andrés y Providencia"},{code:"CO26",name:"Santander"},{code:"CO27",name:"Sucre"},{code:"CO28",name:"Tolima"},{code:"CO29",name:"Valle del Cauca"},{code:"CO30",name:"Vaupés"},{code:"CO31",name:"Vichada"}]},{code:"KM",id:2223,name:"Comoros",states:[]},{code:"ZR",id:2368,name:"Congo; Democratic Republic of",states:[{code:"CD.BU",name:"Bas-Uélé"},{code:"CD.HK",name:"Haut-Katanga"},{code:"CD.HL",name:"Haut-Lomami"},{code:"CD.HU",name:"Haut-Uélé"},{code:"CD.IT",name:"Ituri"},{code:"CD.KS",name:"Kasaï"},{code:"CD.LL",name:"Kasaï-Central"},{code:"CD.KO",name:"Kasaï Oriental"},{code:"CD.KN",name:"Kinshasa"},{code:"CD.BC",name:"Kongo Central"},{code:"CD.KG",name:"Kwango"},{code:"CD.KU",name:"Kwilu"},{code:"CD.LM",name:"Lomami"},{code:"CD.LB",name:"Lualaba"},{code:"CD.MA",name:"Mai-Ndombe"},{code:"CD.MN",name:"Maniema"},{code:"CD.MO",name:"Mongala"},{code:"CD.NK",name:"Nord-Kivu"},{code:"CD.NU",name:"Nord-Ubangi"},{code:"CD.SN",name:"Sankuru"},{code:"CD.SK",name:"Sud-Kivu"},{code:"CD.SU",name:"Sud-Ubangi"},{code:"CD.TG",name:"Tanganyika"},{code:"CD.TO",name:"Tshopo"},{code:"CD.TP",name:"Tshuapa"},{code:"CD.ET",name:"Équateur"}]},{code:"CG",id:2383,name:"Congo; Republic of",states:[]},{code:"CK",id:2414,name:"Cook Islands",states:[]},{code:"CR",id:2226,name:"Costa Rica",states:[{code:"CS01",name:"Alajuela"},{code:"CS02",name:"Cartago"},{code:"CS03",name:"Guanacaste"},{code:"CS04",name:"Heredia"},{code:"CS06",name:"Limón"},{code:"CS07",name:"Puntarenas"},{code:"CS08",name:"San José"}]},{code:"CI",id:2227,name:"Cote D'Ivoire",states:[{code:"IV93",name:"Abidjan"},{code:"IV76",name:"Bas-Sassandra"},{code:"IV94",name:"Comoé"},{code:"IV77",name:"Denguélé"},{code:"IV95",name:"Gôh-Djiboua"},{code:"IV81",name:"Lacs"},{code:"IV82",name:"Lagunes"},{code:"IV78",name:"Montagnes"},{code:"IV96",name:"Sassandra-Marahoué"},{code:"IV87",name:"Savanes"},{code:"IV90",name:"Vallée du Bandama"},{code:"IV97",name:"Woroba"},{code:"IV98",name:"Yamoussoukro"},{code:"IV92",name:"Zanzan"}]},{code:"HR",id:2228,name:"Croatia",states:[{code:"HR07",name:"Bjelovarsko-bilogorska"},{code:"HR12",name:"Brodsko-posavska"},{code:"HR19",name:"Dubrovacko-neretvanska"},{code:"HR21",name:"Grad Zagreb"},{code:"HR-18",name:"Istarska"},{code:"HR04",name:"Karlovacka"},{code:"HR06",name:"Koprivnicko-križevacka"},{code:"HR02",name:"Krapinsko-zagorska"},{code:"HR09",name:"Licko-senjska"},{code:"HR20",name:"Medimurska"},{code:"HR14",name:"Osjecko-baranjska"},{code:"HR11",name:"Požeško-slavonska"},{code:"HR08",name:"Primorsko-goranska"},{code:"HR15",name:"Šibensko-kninska"},{code:"HR03",name:"Sisacko-moslavacka"},{code:"HR17",name:"Splitsko-dalmatinska"},{code:"HR05",name:"Varaždinska"},{code:"HR10",name:"Viroviticko-podravska"},{code:"HR16",name:"Vukovarsko-srijemska"},{code:"HR13",name:"Zadarska"},{code:"HR01",name:"Zagrebacka"}]},{code:"CU",id:2229,name:"Cuba",states:[{code:"CU17",name:"Artemisa"},{code:"CU05",name:"Camagüey"},{code:"CU07",name:"Ciego de Ávila"},{code:"CU08",name:"Cienfuegos"},{code:"CU09",name:"Granma"},{code:"CU10",name:"Guantánamo"},{code:"CU12",name:"Holguín"},{code:"CU04",name:"Isla de la Juventud"},{code:"CU02",name:"La Habana"},{code:"CU13",name:"Las Tunas"},{code:"CU03",name:"Matanzas"},{code:"CU18",name:"Mayabeque"},{code:"CU01",name:"Pinar del Río"},{code:"CU14",name:"Sancti Spíritus"},{code:"CU15",name:"Santiago de Cuba"},{code:"CU16",name:"Villa Clara"}]},{code:"C999",id:2387,name:"Curacao",states:[{code:"CW.CU",name:"Curacao"}]},{code:"CY",id:2230,name:"Cyprus",states:[{code:"CY01",name:"Famagusta"},{code:"CY02",name:"Kyrenia"},{code:"CY03",name:"Larnaca"},{code:"CY05",name:"Limassol"},{code:"CY04",name:"Nicosia"},{code:"CY06",name:"Paphos"}]},{code:"CZ",id:2231,name:"Czech Republic",states:[{code:"JC",name:"Jihoceský kraj"},{code:"JM",name:"Jihomoravský kraj"},{code:"KA",name:"Karlovarský kraj"},{code:"KR",name:"Královéhradecký kraj"},{code:"LI",name:"Liberecký kraj"},{code:"MO",name:"Moravskoslezský kraj"},{code:"OL",name:"Olomoucký kraj"},{code:"PA",name:"Pardubický kraj"},{code:"PL",name:"Plzenský kraj"},{code:"PR",name:"Praha, hlavní mesto"},{code:"ST",name:"Stredoceský kraj"},{code:"VY",name:"Vysocina"},{code:"ZL",name:"Zlínský kraj"},{code:"US",name:"Ústecký kraj"}]},{code:"DK",id:2232,name:"Denmark",states:[{code:"DA01",name:"Arhus County"},{code:"DA02",name:"Bornholm Regional Municipality"},{code:"DA17",name:"Capital Region"},{code:"DA18",name:"Central Jutland Region"},{code:"DA16",name:"Frederiksberg municipal"},{code:"DA03",name:"Frederiksborg County"},{code:"DA04",name:"Fyn County"},{code:"DA06",name:"Kobenhavn County"},{code:"DA05",name:"Kobenhavn municipal"},{code:"DA07",name:"Nordjylland County"},{code:"DA19",name:"North Jutland Region"},{code:"DA08",name:"Ribe County"},{code:"DA09",name:"Ringkobing County"},{code:"DA10",name:"Roskilde County"},{code:"DA11",name:"Sonderjylland County"},{code:"DA21",name:"South Denmark Region"},{code:"DA12",name:"Storstrom County"},{code:"DA13",name:"Vejle County"},{code:"DA14",name:"Vestsjaelland County"},{code:"DA15",name:"Viborg County"},{code:"DA20",name:"Zealand Region"}]},{code:"DJ",id:2233,name:"Djibouti",states:[]},{code:"DM",id:2234,name:"Dominica",states:[]},{code:"DO",id:2235,name:"Dominican Republic",states:[{code:"DR01",name:"Azua"},{code:"DR02",name:"Bahoruco"},{code:"DR03",name:"Barahona"},{code:"DR04",name:"Dajabón"},{code:"DR34",name:"Distrito Nacional"},{code:"DR06",name:"Duarte"},{code:"DR28",name:"El Seibo"},{code:"DR11",name:"Elías Piña"},{code:"DR08",name:"Espaillat"},{code:"DR29",name:"Hato Mayor"},{code:"DR19",name:"Hermanas Mirabal"},{code:"DR09",name:"Independencia"},{code:"DR10",name:"La Altagracia"},{code:"DR12",name:"La Romana"},{code:"DR30",name:"La Vega"},{code:"DR14",name:"María Trinidad Sánchez"},{code:"DR31",name:"Monseñor Nouel"},{code:"DR15",name:"Monte Cristi"},{code:"DR32",name:"Monte Plata"},{code:"DR16",name:"Pedernales"},{code:"DR35",name:"Peravia"},{code:"DR18",name:"Puerto Plata"},{code:"DR20",name:"Samaná"},{code:"DR33",name:"San Cristóbal"},{code:"DR36",name:"San José de Ocoa"},{code:"DR23",name:"San Juan"},{code:"DR24",name:"San Pedro de Macorís"},{code:"DR21",name:"Sánchez Ramírez"},{code:"DR25",name:"Santiago"},{code:"DR26",name:"Santiago Rodríguez"},{code:"DR37",name:"Santo Domingo"},{code:"DR27",name:"Valverde"}]},{code:"EC",id:2236,name:"Ecuador",states:[{code:"EC02",name:"Azuay"},{code:"EC02",name:"Azuay"},{code:"EC03",name:"Bolívar"},{code:"EC04",name:"Cañar"},{code:"EC05",name:"Carchi"},{code:"EC06",name:"Chimborazo"},{code:"EC07",name:"Cotopaxi"},{code:"EC08",name:"El Oro"},{code:"EC09",name:"Esmeraldas"},{code:"EC01",name:"Galápagos"},{code:"EC10",name:"Guayas"},{code:"EC11",name:"Imbabura"},{code:"EC12",name:"Loja"},{code:"EC13",name:"Los Ríos"},{code:"EC14",name:"Manabí"},{code:"EC15",name:"Morona-Santiago"},{code:"EC23",name:"Napo"},{code:"EC24",name:"Orellana"},{code:"EC17",name:"Pastaza"},{code:"EC18",name:"Pichincha"},{code:"EC25",name:"Santa Elena"},{code:"EC26",name:"Santo Domingo de los Tsáchilas"},{code:"EC22",name:"Sucumbíos"},{code:"EC19",name:"Tungurahua"},{code:"EC20",name:"Zamora-Chinchipe"}]},{code:"EG",id:2237,name:"Egypt",states:[{code:"EG01",name:"Ad Daqahliyah"},{code:"EG02",name:"Al Bahr al Ahmar"},{code:"EG03",name:"Al Buhayrah"},{code:"EG04",name:"Al Fayyum"},{code:"EG05",name:"Al Gharbiyah"},{code:"EG06",name:"Al Iskandariyah"},{code:"EG07",name:"Al Isma`iliyah"},{code:"EG08",name:"Al Jizah"},{code:"EG09",name:"Al Minufiyah"},{code:"EG10",name:"Al Minya"},{code:"EG11",name:"Al Qahirah"},{code:"EG12",name:"Al Qalyubiyah"},{code:"EG28",name:"Al Uqsur"},{code:"EG13",name:"Al Wadi al Jadid"},{code:"EG15",name:"As Suways"},{code:"EG14",name:"Ash Sharqiyah"},{code:"EG16",name:"Aswan"},{code:"EG17",name:"Asyut"},{code:"EG18",name:"Bani Suwayf"},{code:"EG19",name:"Bur Sa`id"},{code:"EG20",name:"Dumyat"},{code:"EG26",name:"Janub Sina"},{code:"EG21",name:"Kafr ash Shaykh"},{code:"EG22",name:"Matruh"},{code:"EG23",name:"Qina"},{code:"EG27",name:"Shamal Sina"},{code:"EG24",name:"Suhaj"}]},{code:"SV",id:2238,name:"El Salvador",states:[{code:"ES01",name:"Ahuachapán"},{code:"ES02",name:"Cabañas"},{code:"ES03",name:"Chalatenango"},{code:"ES04",name:"Cuscatlán"},{code:"ES05",name:"La Libertad"},{code:"ES06",name:"La Paz"},{code:"ES07",name:"La Unión"},{code:"ES08",name:"Morazán"},{code:"ES09",name:"San Miguel"},{code:"ES10",name:"San Salvador"},{code:"ES12",name:"San Vicente"},{code:"ES11",name:"Santa Ana"},{code:"ES13",name:"Sonsonate"},{code:"ES14",name:"Usulután"}]},{code:"GQ",id:2239,name:"Equatorial Guinea",states:[]},{code:"ER",id:2240,name:"Eritrea",states:[]},{code:"EE",id:2241,name:"Estonia",states:[{code:"EN01",name:"Harju"},{code:"EN02",name:"Hiiu"},{code:"EN03",name:"Ida-Viru"},{code:"EN04",name:"Järva"},{code:"EN05",name:"Jõgeva"},{code:"EN07",name:"Lääne"},{code:"EN08",name:"Lääne-Viru"},{code:"EN11",name:"Pärnu"},{code:"EN12",name:"Põlva"},{code:"EN13",name:"Rapla"},{code:"EN14",name:"Saare"},{code:"EN18",name:"Tartu"},{code:"EN19",name:"Valga"},{code:"EN20",name:"Viljandi"},{code:"EN21",name:"Võru"}]},{code:"ET",id:2242,name:"Ethiopia",states:[{code:"ET44",name:"Addis Ababa"},{code:"ET45",name:"Afar"},{code:"ET46",name:"Amhara"},{code:"ET47",name:"Benshangul-Gumaz"},{code:"ET48",name:"Dire Dawa"},{code:"ET49",name:"Gambela Peoples"},{code:"ET50",name:"Harari People"},{code:"ET51",name:"Oromia"},{code:"ET52",name:"Somali"},{code:"ET54",name:"Southern Nations, Nationalities and Peoples"},{code:"ET53",name:"Tigray"}]},{code:"FK",id:2415,name:"Falkland Islands (Malvinas)",states:[]},{code:"FI99",id:2388,name:"Faroe Islands",states:[]},{code:"FJ",id:2243,name:"Fiji",states:[]},{code:"FI",id:2244,name:"Finland",states:[{code:"FI-AL",name:"Ahvenanmaan lääni"},{code:"AX",name:"Ahvenanmaa"},{code:"FI.SK",name:"Etelä-Karjala"},{code:"FI.SO",name:"Etelä-Pohjanmaa"},{code:"FI.SS",name:"Etelä-Savo"},{code:"FI-ES",name:"Etelä-Suomen lääni"},{code:"FI-IS",name:"Itä-Suomen lääni"},{code:"FI.KA",name:"Kainuu"},{code:"FI.KH",name:"Kanta-Häme"},{code:"FI.CO",name:"Keski-Pohjanmaa"},{code:"FI.CF",name:"Keski-Suomi"},{code:"FI.KY",name:"Kymenlaakso"},{code:"FI-LS",name:"Länsi-Suomen lääni"},{code:"FI-LL",name:"Lapin lääni"},{code:"FI.LA",name:"Lappi"},{code:"FI-OL",name:"Oulun lääni"},{code:"FI.PH",name:"Päijät-Häme"},{code:"FI.TR",name:"Pirkanmaa"},{code:"FI.OS",name:"Pohjanmaa"},{code:"FI.NK",name:"Pohjois-Karjala"},{code:"FI.NO",name:"Pohjois-Pohjanmaa"},{code:"FI.NS",name:"Pohjois-Savo"},{code:"FI.SA",name:"Satakunta"},{code:"FI.US",name:"Uusimaa"},{code:"FI.SF",name:"Varsinais-Suomi"}]},{code:"FR",id:2245,name:"France",states:[{code:"FRC2",name:"Ain"},{code:"FRC3",name:"Aisne"},{code:"FRC4",name:"Allier"},{code:"FRC6",name:"Alpes-Maritimes"},{code:"FRC5",name:"Alpes-de-Haute-Provence"},{code:"FRC1",name:"Alsace"},{code:"FR97",name:"Aquitaine"},{code:"FRC7",name:"Ardèche"},{code:"FRC8",name:"Ardennes"},{code:"FRC9",name:"Ariège"},{code:"FRD1",name:"Aube"},{code:"FRD2",name:"Aude"},{code:"FR.AR",name:"Auvergne-Rhône-Alpes"},{code:"FR98",name:"Auvergne"},{code:"FRD3",name:"Aveyron"},{code:"FRD4",name:"Bas-Rhin"},{code:"FR99",name:"Basse-Normandie"},{code:"FRD5",name:"Bouches-du-Rhône"},{code:"FR.BF",name:"Bourgogne-Franche-Comté"},{code:"FRA1",name:"Bourgogne"},{code:"FRA2",name:"Bretagne"},{code:"FRD8",name:"Calvados"},{code:"FRD9",name:"Cantal"},{code:"FRA3",name:"Centre"},{code:"FR.CN",name:"Centre-Val de Loire"},{code:"FRA4",name:"Champagne-Ardenne"},{code:"FRE1",name:"Charente-Maritime"},{code:"FRE2",name:"Charente"},{code:"FRE3",name:"Cher"},{code:"FRE4",name:"Corrèze"},{code:"FRE5",name:"Corse-du-Sud"},{code:"FR.CE",name:"Corse"},{code:"FRD6",name:"Côte-d'Or"},{code:"FRD7",name:"Côtes-d'Armor"},{code:"FRE6",name:"Creuse"},{code:"FRE7",name:"Deux-Sèvres"},{code:"FRE8",name:"Dordogne"},{code:"FRE9",name:"Doubs"},{code:"FRF1",name:"Drôme"},{code:"FRF2",name:"Essonne"},{code:"FRF3",name:"Eure-et-Loir"},{code:"FRF4",name:"Eure"},{code:"FRF5",name:"Finistère"},{code:"FRA6",name:"Franche-Comte"},{code:"FRF6",name:"Gard"},{code:"FRF7",name:"Gers"},{code:"FRF8",name:"Gironde"},{code:"FR.AO",name:"Grand Est"},{code:"FRG1",name:"Haut-Rhin"},{code:"FRG2",name:"Haute-Corse"},{code:"FRG3",name:"Haute-Garonne"},{code:"FRG4",name:"Haute-Loire"},{code:"FRG5",name:"Haute-Marne"},{code:"FRA7",name:"Haute-Normandie"},{code:"FRG6",name:"Haute-Saône"},{code:"FRG7",name:"Haute-Savoie"},{code:"FRG8",name:"Haute-Vienne"},{code:"FRG9",name:"Hautes-Alpes"},{code:"FRH1",name:"Hautes-Pyrénées"},{code:"FR.NC",name:"Hauts-de-France"},{code:"FRH2",name:"Hauts-de-Seine"},{code:"FRF9",name:"Hérault"},{code:"FRA8",name:"Ile-de-France"},{code:"FRH3",name:"Ille-et-Vilaine"},{code:"FRH5",name:"Indre"},{code:"FRH4",name:"Indre-et-Loire"},{code:"FRH6",name:"Isère"},{code:"FRH7",name:"Jura"},{code:"FRH8",name:"Landes"},{code:"FRA9",name:"Languedoc-Roussillon"},{code:"FRB1",name:"Limousin"},{code:"FRI3",name:"Loir-et-Cher"},{code:"FRI2",name:"Loiret"},{code:"FRI1",name:"Loire"},{code:"FRH9",name:"Loire-Atlantique"},{code:"FRB2",name:"Lorraine"},{code:"FRI4",name:"Lot-et-Garonne"},{code:"FRI5",name:"Lot"},{code:"FRI6",name:"Lozère"},{code:"FRI7",name:"Maine-et-Loire"},{code:"FRI8",name:"Manche"},{code:"FRI9",name:"Marne"},{code:"FRJ1",name:"Mayenne"},{code:"FRJ2",name:"Meurthe-et-Moselle"},{code:"FRJ3",name:"Meuse"},{code:"FRB3",name:"Midi-Pyrenees"},{code:"FRJ4",name:"Morbihan"},{code:"FRJ5",name:"Moselle"},{code:"FRJ6",name:"Nièvre"},{code:"FRJ7",name:"Nord France"},{code:"FR67",name:"Nord"},{code:"FR.ND",name:"Normandie"},{code:"FR.AC",name:"Nouvelle-Aquitaine"},{code:"FR.LP",name:"Occitanie"},{code:"FRJ8",name:"Oise"},{code:"FRJ9",name:"Orne"},{code:"FRK1",name:"Paris"},{code:"FRB4",name:"Pas-de-Calais"},{code:"FRB5",name:"Pays de la Loire"},{code:"FRB6",name:"Picardie"},{code:"FRB7",name:"Poitou-Charentes"},{code:"FRB8",name:"Provence-Alpes-Cote d'Azur"},{code:"FRK2",name:"Puy-de-Dôme"},{code:"FRK3",name:"Pyrénées-Atlantiques"},{code:"FRK4",name:"Pyrénées-Orientales"},{code:"FRB9",name:"Rhône"},{code:"FRK5",name:"Saône-et-Loire"},{code:"FRK6",name:"Sarthe"},{code:"FRK7",name:"Savoie"},{code:"FRK9",name:"Seine-Maritime"},{code:"FRL1",name:"Seine-Saint-Denis"},{code:"FRK8",name:"Seine-et-Marne"},{code:"FRL2",name:"Somme"},{code:"FRL3",name:"Tarn-et-Garonne"},{code:"FRL4",name:"Tarn"},{code:"FRL5",name:"Territoire de Belfor"},{code:"FR14",name:"Territoire de Belfort"},{code:"FRL6",name:"Val-d'Oise"},{code:"FRL7",name:"Val-de-Marne"},{code:"FRL8",name:"Var"},{code:"FRL9",name:"Vaucluse"},{code:"FRM1",name:"Vendée"},{code:"FRM2",name:"Vienne"},{code:"FR94",name:"Ville de Paris"},{code:"FRM3",name:"Vosges"},{code:"FRM4",name:"Yonne"},{code:"FRM5",name:"Yvelines"},{code:"FR.IF",name:"Île-de-France"}]},{code:"GF",id:2416,name:"French Guiana",states:[]},{code:"PF",id:2417,name:"French Polynesia",states:[]},{code:"TF",id:2418,name:"French Southern Territories",states:[]},{code:"GA",id:2246,name:"Gabon",states:[{code:"GB01",name:"Estuaire"},{code:"GB02",name:"Haut-Ogooué"},{code:"GB03",name:"Moyen-Ogooué"},{code:"GB04",name:"Ngounié"},{code:"GB05",name:"Nyanga"},{code:"GB06",name:"Ogooué-Ivindo"},{code:"GB07",name:"Ogooué-Lolo"},{code:"GB08",name:"Ogooué-Maritime"},{code:"GB09",name:"Woleu-Ntem"}]},{code:"GM",id:2389,name:"Gambia",states:[{code:"GA01",name:"Banjul"},{code:"GA03",name:"Central River"},{code:"GA02",name:"Lower River"},{code:"GA07",name:"North Bank"},{code:"GA04",name:"Upper River"},{code:"GA05",name:"West Coast"}]},{code:"GE",id:2248,name:"Georgia",states:[{code:"GG02",name:"Abkhazia"},{code:"GG04",name:"Ajaria"},{code:"GG65",name:"Guria"},{code:"GG66",name:"Imereti"},{code:"GG67",name:"Kakheti"},{code:"GG68",name:"Kvemo Kartli"},{code:"GG69",name:"Mtskheta-Mtianeti"},{code:"GG70",name:"Racha-Lochkhumi-Kvemo Svaneti"},{code:"GG71",name:"Samegrelo-Zemo Svaneti"},{code:"GG72",name:"Samtskhe-Javakheti"},{code:"GG73",name:"Shida Kartli"},{code:"GG51",name:"Tbilisi"}]},{code:"DE",id:2249,name:"Germany",states:[{code:"BW",name:"Baden-Württemberg"},{code:"BY",name:"Bayern"},{code:"BE",name:"Berlin"},{code:"BB",name:"Brandenburg"},{code:"HB",name:"Bremen"},{code:"HH",name:"Hamburg"},{code:"HE",name:"Hessen"},{code:"MV",name:"Mecklenburg-Vorpommern"},{code:"NI",name:"Niedersachsen"},{code:"NW",name:"Nordrhein-Westfalen"},{code:"RP",name:"Rheinland-Pfalz"},{code:"SL",name:"Saarland"},{code:"SN",name:"Sachsen"},{code:"ST",name:"Sachsen-Anhalt"},{code:"SH",name:"Schleswig-Holstein"},{code:"TH",name:"Thüringen"}]},{code:"GH",id:2250,name:"Ghana",states:[{code:"GH02",name:"Ashanti"},{code:"GH03",name:"Brong-Ahafo"},{code:"GH04",name:"Central"},{code:"GH05",name:"Eastern"},{code:"GH01",name:"Greater Accra"},{code:"GH06",name:"Northern"},{code:"GH10",name:"Upper East"},{code:"GH11",name:"Upper West"},{code:"GH08",name:"Volta"},{code:"GH09",name:"Western"}]},{code:"G999",id:2390,name:"Gibraltar",states:[{code:"GI.GI",name:"Gibraltar"}]},{code:"GR",id:2251,name:"Greece",states:[{code:"13",name:"Achaïa"},{code:"69",name:"Agio Oros"},{code:"01",name:"Aitolia kai Akarnania"},{code:"11",name:"Argolida"},{code:"12",name:"Arkadia"},{code:"31",name:"Arta"},{code:"A1",name:"Attiki"},{code:"64",name:"Chalkidiki"},{code:"94",name:"Chania"},{code:"85",name:"Chios"},{code:"81",name:"Dodekanisos"},{code:"52",name:"Drama"},{code:"71",name:"Evros"},{code:"05",name:"Evrytania"},{code:"04",name:"Evvoia"},{code:"63",name:"Florina"},{code:"07",name:"Fokida"},{code:"06",name:"Fthiotida"},{code:"51",name:"Grevena"},{code:"14",name:"Ileia"},{code:"53",name:"Imathia"},{code:"33",name:"Ioannina"},{code:"91",name:"Irakleio"},{code:"41",name:"Karditsa"},{code:"56",name:"Kastoria"},{code:"55",name:"Kavala"},{code:"23",name:"Kefallonia"},{code:"22",name:"Kerkyra"},{code:"57",name:"Kilkis"},{code:"15",name:"Korinthia"},{code:"58",name:"Kozani"},{code:"82",name:"Kyklades"},{code:"16",name:"Lakonia"},{code:"42",name:"Larisa"},{code:"92",name:"Lasithi"},{code:"24",name:"Lefkada"},{code:"83",name:"Lesvos"},{code:"43",name:"Magnisia"},{code:"17",name:"Messinia"},{code:"59",name:"Pella"},{code:"61",name:"Pieria"},{code:"34",name:"Preveza"},{code:"93",name:"Rethymno"},{code:"73",name:"Rodopi"},{code:"84",name:"Samos"},{code:"62",name:"Serres"},{code:"32",name:"Thesprotia"},{code:"54",name:"Thessaloniki"},{code:"44",name:"Trikala"},{code:"03",name:"Voiotia"},{code:"72",name:"Xanthi"},{code:"21",name:"Zakynthos"}]},{code:"GL",id:2252,name:"Greenland",states:[]},{code:"GD",id:2253,name:"Grenada",states:[]},{code:"GP",id:2419,name:"Guadeloupe",states:[]},{code:"GU",id:2376,name:"Guam",states:[]},{code:"GT",id:2371,name:"Guatemala",states:[{code:"GT01",name:"Alta Verapaz"},{code:"GT02",name:"Baja Verapaz"},{code:"GT03",name:"Chimaltenango"},{code:"GT04",name:"Chiquimula"},{code:"GT05",name:"El Progreso"},{code:"GT06",name:"Escuintla"},{code:"GT07",name:"Guatemala"},{code:"GT08",name:"Huehuetenango"},{code:"GT09",name:"Izabal"},{code:"GT10",name:"Jalapa"},{code:"GT11",name:"Jutiapa"},{code:"GT12",name:"Petén"},{code:"GT13",name:"Quetzaltenango"},{code:"GT14",name:"Quiché"},{code:"GT15",name:"Retalhuleu"},{code:"GT16",name:"Sacatepéquez"},{code:"GT17",name:"San Marcos"},{code:"GT18",name:"Santa Rosa"},{code:"GT19",name:"Sololá"},{code:"GT20",name:"Suchitepéquez"},{code:"GT21",name:"Totonicapán"},{code:"GT22",name:"Zacapa"}]},{code:"GG",id:2420,name:"Guernsey",states:[]},{code:"GN",id:2255,name:"Guinea",states:[{code:"GV01",name:"Beyla"},{code:"GV02",name:"Boffa"},{code:"GV03",name:"Boké"},{code:"GV04",name:"Conakry"},{code:"GV30",name:"Coyah"},{code:"GV05",name:"Dabola"},{code:"GV06",name:"Dalaba"},{code:"GV07",name:"Dinguiraye"},{code:"GV31",name:"Dubréka"},{code:"GV09",name:"Faranah"},{code:"GV10",name:"Forécariah"},{code:"GV11",name:"Fria"},{code:"GV12",name:"Gaoual"},{code:"GV13",name:"Guéckédou"},{code:"GV32",name:"Kankan"},{code:"GV15",name:"Kérouané"},{code:"GV16",name:"Kindia"},{code:"GV17",name:"Kissidougou"},{code:"GV33",name:"Koubia"},{code:"GV18",name:"Koundara"},{code:"GV19",name:"Kouroussa"},{code:"GV34",name:"Labé"},{code:"GV35",name:"Lélouma"},{code:"GV36",name:"Lola"},{code:"GV21",name:"Macenta"},{code:"GV22",name:"Mali"},{code:"GV23",name:"Mamou"},{code:"GV37",name:"Mandiana"},{code:"GV38",name:"Nzérékoré"},{code:"GV25",name:"Pita"},{code:"GV39",name:"Siguiri"},{code:"GV27",name:"Télimélé"},{code:"GV28",name:"Tougué"},{code:"GV29",name:"Yomou"}]},{code:"GW",id:2256,name:"Guinea-Bissau",states:[{code:"PU01",name:"Bafatá"},{code:"PU12",name:"Biombo"},{code:"PU11",name:"Bissau"},{code:"PU05",name:"Bolama"},{code:"PU06",name:"Cacheu"},{code:"PU10",name:"Gabú"},{code:"PU04",name:"Oio"},{code:"PU02",name:"Quinara"},{code:"PU07",name:"Tombali"}]},{code:"GY",id:2257,name:"Guyana",states:[{code:"GY10",name:"Barima-Waini"},{code:"GY11",name:"Cuyuni-Mazaruni"},{code:"GY12",name:"Demerara-Mahaica"},{code:"GY13",name:"East Berbice-Corentyne"},{code:"GY14",name:"Essequibo Islands-West Demerara"},{code:"GY15",name:"Mahaica-Berbice"},{code:"GY16",name:"Pomeroon-Supenaam"},{code:"GY17",name:"Potaro-Siparuni"},{code:"GY18",name:"Upper Demerara-Berbice"},{code:"GY19",name:"Upper Takutu-Upper Essequibo"}]},{code:"HT",id:2258,name:"Haiti",states:[{code:"HA07",name:"Centre"},{code:"HA14",name:"Grand' Anse"},{code:"HA06",name:"L'Artibonite"},{code:"HA15",name:"Nippes"},{code:"HA10",name:"Nord-Est"},{code:"HA03",name:"Nord-Ouest"},{code:"HA09",name:"Nord"},{code:"HA11",name:"Ouest"},{code:"HA13",name:"Sud-Est"},{code:"HA12",name:"Sud"}]},{code:"HM",id:2421,name:"Heard and McDonald Islands",states:[]},{code:"VA",id:2362,name:"Holy See (Vatican City State)",states:[]},{code:"HN",id:2259,name:"Honduras",states:[{code:"HO01",name:"Atlántida"},{code:"HO02",name:"Choluteca"},{code:"HO03",name:"Colón"},{code:"HO04",name:"Comayagua"},{code:"HO05",name:"Copán"},{code:"HO06",name:"Cortés"},{code:"HO07",name:"El Paraíso"},{code:"HO08",name:"Francisco Morazán"},{code:"HO09",name:"Gracias a Dios"},{code:"HO10",name:"Intibucá"},{code:"HO11",name:"Islas de la Bahía"},{code:"HO12",name:"La Paz"},{code:"HO13",name:"Lempira"},{code:"HO14",name:"Ocotepeque"},{code:"HO15",name:"Olancho"},{code:"HO16",name:"Santa Bárbara"},{code:"HO17",name:"Valle"},{code:"HO18",name:"Yoro"}]},{code:"HK",id:2377,name:"Hong Kong",states:[{code:"HK001",name:"Hong Kong Island"},{code:"HK002",name:"Kowloon"},{code:"HK003",name:"New Territories"}]},{code:"HU",id:2260,name:"Hungary",states:[{code:"BK",name:"Bács-Kiskun"},{code:"BA",name:"Baranya"},{code:"BE",name:"Békés"},{code:"BC",name:"Békéscsaba"},{code:"BZ",name:"Borsod-Abaúj-Zemplén"},{code:"BU",name:"Budapest"},{code:"CS",name:"Csongrád"},{code:"DE",name:"Debrecen"},{code:"DU",name:"Dunaújváros"},{code:"EG",name:"Eger"},{code:"ER",name:"Erd"},{code:"FE",name:"Fejér"},{code:"GY",name:"Gyor"},{code:"GS",name:"Gyor-Moson-Sopron"},{code:"HB",name:"Hajdú-Bihar"},{code:"HE",name:"Heves"},{code:"HV",name:"Hódmezovásárhely"},{code:"JN",name:"Jász-Nagykun-Szolnok"},{code:"KV",name:"Kaposvár"},{code:"KM",name:"Kecskemét"},{code:"KE",name:"Komárom-Esztergom"},{code:"MI",name:"Miskolc"},{code:"NK",name:"Nagykanizsa"},{code:"NO",name:"Nógrád"},{code:"NY",name:"Nyíregyháza"},{code:"PS",name:"Pécs"},{code:"PE",name:"Pest"},{code:"ST",name:"Salgótarján"},{code:"SO",name:"Somogy"},{code:"SN",name:"Sopron"},{code:"SZ",name:"Szabolcs-Szatmár-Bereg"},{code:"SD",name:"Szeged"},{code:"SF",name:"Székesfehérvár"},{code:"SS",name:"Szekszárd"},{code:"SK",name:"Szolnok"},{code:"SH",name:"Szombathely"},{code:"TB",name:"Tatabánya"},{code:"TO",name:"Tolna"},{code:"VA",name:"Vas"},{code:"VE",name:"Veszprém"},{code:"VM",name:"Veszprém City"},{code:"ZA",name:"Zala"},{code:"ZE",name:"Zalaegerszeg"}]},{code:"IS",id:2261,name:"Iceland",states:[{code:"7",name:"Austurland"},{code:"1",name:"Höfuðborgarsvæði utan Reykjavíkur"},{code:"6",name:"Norðurland eystra"},{code:"5",name:"Norðurland vestra"},{code:"0",name:"Reykjavík"},{code:"8",name:"Suðurland"},{code:"2",name:"Suðurnes"},{code:"4",name:"Vestfirðir"},{code:"3",name:"Vesturland"}]},{code:"IN",id:2262,name:"India",states:[{code:"AN",name:"Andaman and Nicobar Islands"},{code:"AP",name:"Andhra Pradesh"},{code:"AR",name:"Arunachal Pradesh"},{code:"AS",name:"Assam"},{code:"BR",name:"Bihar"},{code:"CH",name:"Chandigarh"},{code:"CT",name:"Chhattisgarh"},{code:"DN",name:"Dadra and Nagar Haveli"},{code:"DD",name:"Daman and Diu"},{code:"DL",name:"Delhi"},{code:"GA",name:"Goa"},{code:"GJ",name:"Gujarat"},{code:"HR",name:"Haryana"},{code:"HP",name:"Himachal Pradesh"},{code:"JK",name:"Jammu and Kashmir"},{code:"JH",name:"Jharkhand"},{code:"KA",name:"Karnataka"},{code:"KL",name:"Kerala"},{code:"LD",name:"Lakshadweep"},{code:"MP",name:"Madhya Pradesh"},{code:"MH",name:"Maharashtra"},{code:"MN",name:"Manipur"},{code:"ML",name:"Meghalaya"},{code:"MZ",name:"Mizoram"},{code:"NL",name:"Nagaland"},{code:"OR",name:"Orissa"},{code:"PY",name:"Pondicherry"},{code:"PB",name:"Punjab"},{code:"RJ",name:"Rajasthan"},{code:"SK",name:"Sikkim"},{code:"TN",name:"Tamil Nadu"},{code:"TG",name:"Telangana"},{code:"TR",name:"Tripura"},{code:"UP",name:"Uttar Pradesh"},{code:"UL",name:"Uttaranchal"},{code:"WB",name:"West Bengal"}]},{code:"ID",id:2263,name:"Indonesia",states:[{code:"AC",name:"Aceh"},{code:"BA",name:"Bali"},{code:"BB",name:"Bangka Belitung"},{code:"BT",name:"Banten"},{code:"BE",name:"Bengkulu"},{code:"GO",name:"Gorontalo"},{code:"JK",name:"Jakarta Raya"},{code:"JA",name:"Jambi"},{code:"JB",name:"Jawa Barat"},{code:"JT",name:"Jawa Tengah"},{code:"JI",name:"Jawa Timur"},{code:"KB",name:"Kalimantan Barat"},{code:"KS",name:"Kalimantan Selatan"},{code:"KT",name:"Kalimantan Tengah"},{code:"KI",name:"Kalimantan Timur"},{code:"KR",name:"Kepulauan Riau"},{code:"LA",name:"Lampung"},{code:"MA",name:"Maluku"},{code:"MU",name:"Maluku Utara"},{code:"NB",name:"Nusa Tenggara Barat"},{code:"NT",name:"Nusa Tenggara Timur"},{code:"PA",name:"Papua"},{code:"PB",name:"Papua Barat"},{code:"RI",name:"Riau"},{code:"SR",name:"Sulawesi Barat"},{code:"SN",name:"Sulawesi Selatan"},{code:"ST",name:"Sulawesi Tengah"},{code:"SG",name:"Sulawesi Tenggara"},{code:"SA",name:"Sulawesi Utara"},{code:"SB",name:"Sumatera Barat"},{code:"SS",name:"Sumatera Selatan"},{code:"SU",name:"Sumatera Utara"},{code:"YO",name:"Yogyakarta"}]},{code:"IR",id:2264,name:"Iran; Islamic Republic of",states:[{code:"IR44",name:"Alborz"},{code:"IR32",name:"Ardebil"},{code:"IR22",name:"Bushehr"},{code:"IR03",name:"Chahar Mahall and Bakhtiari"},{code:"IR33",name:"East Azarbaijan"},{code:"IR28",name:"Esfahan"},{code:"IR07",name:"Fars"},{code:"IR08",name:"Gilan"},{code:"IR37",name:"Golestan"},{code:"IR09",name:"Hamadan"},{code:"IR11",name:"Hormozgan"},{code:"IR42",name:"IRazavi Khorasan"},{code:"IR10",name:"Ilam"},{code:"IR29",name:"Kerman"},{code:"IR13",name:"Kermanshah"},{code:"IR15",name:"Khuzestan"},{code:"IR05",name:"Kohgiluyeh and Buyer Ahmad"},{code:"IR16",name:"Kordestan"},{code:"IR23",name:"Lorestan"},{code:"IR34",name:"Markazi"},{code:"IR35",name:"Mazandaran"},{code:"IR43",name:"North Khorasan"},{code:"IR38",name:"Qazvin"},{code:"IR39",name:"Qom"},{code:"IR25",name:"Semnan"},{code:"IR04",name:"Sistan and Baluchestan"},{code:"IR41",name:"South Khorasan"},{code:"IR26",name:"Tehran"},{code:"IR01",name:"West Azarbaijan"},{code:"IR40",name:"Yazd"},{code:"IR36",name:"Zanjan"}]},{code:"IQ",id:2265,name:"Iraq",states:[{code:"IZ01",name:"Al-Anbar"},{code:"IZ02",name:"Al-Basrah"},{code:"IZ03",name:"Al-Muthanna"},{code:"IZ04",name:"Al-Qadisiyah"},{code:"IZ17",name:"An-Najaf"},{code:"IZ11",name:"Arbil"},{code:"IZ05",name:"As-Sulaymaniyah"},{code:"IZ13",name:"At-Ta'mim"},{code:"IZ06",name:"Babil"},{code:"IZ07",name:"Baghdad"},{code:"IZ08",name:"Dahuk"},{code:"IZ09",name:"Dhi Qar"},{code:"IZ10",name:"Diyala"},{code:"IZ12",name:"Karbala"},{code:"IZ14",name:"Maysan"},{code:"IZ15",name:"Ninawa"},{code:"IZ18",name:"Salah ad-Din"},{code:"IZ16",name:"Wasit"}]},{code:"IE",id:2266,name:"Ireland",states:[{code:"CW",name:"Carlow"},{code:"CN",name:"Cavan"},{code:"CE",name:"Clare"},{code:"C",name:"Connacht"},{code:"CO",name:"Cork"},{code:"DL",name:"Donegal"},{code:"D",name:"Dublin"},{code:"G",name:"Galway"},{code:"KY",name:"Kerry"},{code:"KE",name:"Kildare"},{code:"KK",name:"Kilkenny"},{code:"LS",name:"Laois"},{code:"L",name:"Leinster"},{code:"LM",name:"Leitrim"},{code:"LK",name:"Limerick"},{code:"LD",name:"Longford"},{code:"LH",name:"Louth"},{code:"MO",name:"Mayo"},{code:"MH",name:"Meath"},{code:"MN",name:"Monaghan"},{code:"M",name:"Munster"},{code:"OY",name:"Offaly"},{code:"RN",name:"Roscommon"},{code:"SO",name:"Sligo"},{code:"TA",name:"Tipperary"},{code:"U",name:"Ulster"},{code:"WD",name:"Waterford"},{code:"WH",name:"Westmeath"},{code:"WX",name:"Wexford"},{code:"WW",name:"Wicklow"}]},{code:"IM",id:2445,name:"Isle of Man",states:[]},{code:"IL",id:2267,name:"Israel",states:[{code:"IS01",name:"HaDarom"},{code:"IS02",name:"HaMerkaz"},{code:"IS03",name:"HaZafon"},{code:"IS04",name:"Haifa"},{code:"IS06",name:"Jerusalem"},{code:"IS05",name:"Tel Aviv"}]},{code:"IT",id:2268,name:"Italy",states:[{code:"65",name:"Abruzzo"},{code:"AG",name:"Agrigento"},{code:"AL",name:"Alessandria"},{code:"AN",name:"Ancona"},{code:"AO",name:"Aosta"},{code:"AR",name:"Arezzo"},{code:"AP",name:"Ascoli Piceno"},{code:"AT",name:"Asti"},{code:"AV",name:"Avellino"},{code:"BA",name:"Bari"},{code:"BT",name:"Barletta-Andria-Trani"},{code:"77",name:"Basilicata"},{code:"BL",name:"Belluno"},{code:"BN",name:"Benevento"},{code:"BG",name:"Bergamo"},{code:"BI",name:"Biella"},{code:"BO",name:"Bologna"},{code:"BZ",name:"Bolzano"},{code:"BS",name:"Brescia"},{code:"BR",name:"Brindisi"},{code:"CA",name:"Cagliari"},{code:"78",name:"Calabria"},{code:"CL",name:"Caltanissetta"},{code:"72",name:"Campania"},{code:"CB",name:"Campobasso"},{code:"CI",name:"Carbonia-Iglesias"},{code:"CE",name:"Caserta"},{code:"CT",name:"Catania"},{code:"CZ",name:"Catanzaro"},{code:"CH",name:"Chieti"},{code:"CO",name:"Como"},{code:"CS",name:"Cosenza"},{code:"CR",name:"Cremona"},{code:"KR",name:"Crotone"},{code:"CN",name:"Cuneo"},{code:"45",name:"Emilia-Romagna"},{code:"EN",name:"Enna"},{code:"FM",name:"Fermo"},{code:"FE",name:"Ferrara"},{code:"FI",name:"Firenze"},{code:"FG",name:"Foggia"},{code:"FC",name:"Forli-Cesena"},{code:"36",name:"Friuli-Venezia Giulia"},{code:"FR",name:"Frosinone"},{code:"GE",name:"Genova"},{code:"GO",name:"Gorizia"},{code:"GR",name:"Grosseto"},{code:"IM",name:"Imperia"},{code:"IS",name:"Isernia"},{code:"AQ",name:"L'Aquila"},{code:"SP",name:"La Spezia"},{code:"LT",name:"Latina"},{code:"62",name:"Lazio"},{code:"LE",name:"Lecce"},{code:"LC",name:"Lecco"},{code:"42",name:"Liguria"},{code:"LI",name:"Livorno"},{code:"LO",name:"Lodi"},{code:"25",name:"Lombardia"},{code:"LU",name:"Lucca"},{code:"MC",name:"Macerata"},{code:"MN",name:"Mantova"},{code:"57",name:"Marche"},{code:"MS",name:"Massa-Carrara"},{code:"MT",name:"Matera"},{code:"VS",name:"Medio Campidano"},{code:"ME",name:"Messina"},{code:"MI",name:"Milano"},{code:"MO",name:"Modena"},{code:"67",name:"Molise"},{code:"MB",name:"Monza e Brianza"},{code:"NA",name:"Napoli"},{code:"NO",name:"Novara"},{code:"NU",name:"Nuoro"},{code:"OG",name:"Ogliastra"},{code:"OT",name:"Olbia-Tempio"},{code:"OR",name:"Oristano"},{code:"PD",name:"Padova"},{code:"PA",name:"Palermo"},{code:"PR",name:"Parma"},{code:"PV",name:"Pavia"},{code:"PG",name:"Perugia"},{code:"PU",name:"Pesaro e Urbino"},{code:"PE",name:"Pescara"},{code:"PC",name:"Piacenza"},{code:"21",name:"Piemonte"},{code:"PI",name:"Pisa"},{code:"PT",name:"Pistoia"},{code:"PN",name:"Pordenone"},{code:"PZ",name:"Potenza"},{code:"PO",name:"Prato"},{code:"75",name:"Puglia"},{code:"RG",name:"Ragusa"},{code:"RA",name:"Ravenna"},{code:"RC",name:"Reggio Calabria"},{code:"RE",name:"Reggio Emilia"},{code:"RI",name:"Rieti"},{code:"RN",name:"Rimini"},{code:"RM",name:"Roma"},{code:"RO",name:"Rovigo"},{code:"SA",name:"Salerno"},{code:"88",name:"Sardegna"},{code:"SS",name:"Sassari"},{code:"SV",name:"Savona"},{code:"82",name:"Sicilia"},{code:"SI",name:"Siena"},{code:"SR",name:"Siracusa"},{code:"SO",name:"Sondrio"},{code:"TA",name:"Taranto"},{code:"TE",name:"Teramo"},{code:"TR",name:"Terni"},{code:"TO",name:"Torino"},{code:"52",name:"Toscana"},{code:"TP",name:"Trapani"},{code:"32",name:"Trentino-Alto Adige"},{code:"TN",name:"Trento"},{code:"TV",name:"Treviso"},{code:"TS",name:"Trieste"},{code:"UD",name:"Udine"},{code:"55",name:"Umbria"},{code:"23",name:"Valle d'Aosta"},{code:"VA",name:"Varese"},{code:"34",name:"Veneto"},{code:"VE",name:"Venezia"},{code:"VB",name:"Verbano-Cusio-Ossola"},{code:"VC",name:"Vercelli"},{code:"VR",name:"Verona"},{code:"VV",name:"Vibo Valentia"},{code:"VI",name:"Vicenza"},{code:"VT",name:"Viterbo"}]},{code:"JM",id:2269,name:"Jamaica",states:[{code:"JM01",name:"Clarendon"},{code:"JM02",name:"Hanover"},{code:"JM17",name:"Kingston"},{code:"JM04",name:"Manchester"},{code:"JM07",name:"Portland"},{code:"JM08",name:"Saint Andrew"},{code:"JM09",name:"Saint Ann"},{code:"JM10",name:"Saint Catherine"},{code:"JM11",name:"Saint Elizabeth"},{code:"JM12",name:"Saint James"},{code:"JM13",name:"Saint Mary"},{code:"JM14",name:"Saint Thomas"},{code:"JM15",name:"Trelawny"},{code:"JM16",name:"Westmoreland"}]},{code:"JP",id:2270,name:"Japan",states:[{code:"JP23",name:"Aichi"},{code:"JP05",name:"Akita"},{code:"JP02",name:"Aomori"},{code:"JP12",name:"Chiba"},{code:"JP38",name:"Ehime"},{code:"JP18",name:"Fukui"},{code:"JP40",name:"Fukuoka"},{code:"JP07",name:"Fukushima"},{code:"JP21",name:"Gifu"},{code:"JP10",name:"Gunma"},{code:"JP34",name:"Hiroshima"},{code:"JP01",name:"Hokkaido"},{code:"JP28",name:"Hyogo"},{code:"JP08",name:"Ibaraki"},{code:"JP17",name:"Ishikawa"},{code:"JP03",name:"Iwate"},{code:"JP37",name:"Kagawa"},{code:"JP46",name:"Kagoshima"},{code:"JP14",name:"Kanagawa"},{code:"JP39",name:"Kochi"},{code:"JP43",name:"Kumamoto"},{code:"JP26",name:"Kyoto"},{code:"JP24",name:"Mie"},{code:"JP04",name:"Miyagi"},{code:"JP45",name:"Miyazaki"},{code:"JP20",name:"Nagano"},{code:"JP42",name:"Nagasaki"},{code:"JP29",name:"Nara"},{code:"JP15",name:"Niigata"},{code:"JP44",name:"Oita"},{code:"JP33",name:"Okayama"},{code:"JP47",name:"Okinawa"},{code:"JP27",name:"Osaka"},{code:"JP41",name:"Saga"},{code:"JP11",name:"Saitama"},{code:"JP25",name:"Shiga"},{code:"JP32",name:"Shimane"},{code:"JP22",name:"Shizuoka"},{code:"JP09",name:"Tochigi"},{code:"JP36",name:"Tokushima"},{code:"JP13",name:"Tokyo"},{code:"JP31",name:"Tottori"},{code:"JP16",name:"Toyama"},{code:"JP30",name:"Wakayama"},{code:"JP06",name:"Yamagata"},{code:"JP35",name:"Yamaguchi"},{code:"JP19",name:"Yamanashi"}]},{code:"JE",id:2422,name:"Jersey",states:[]},{code:"JO",id:2271,name:"Jordan",states:[{code:"JO01",name:"Ajlun"},{code:"JO02",name:"Amman"},{code:"JO03",name:"Aqaba"},{code:"JO04",name:"Balqa"},{code:"JO05",name:"Irbid"},{code:"JO06",name:"JarasJ"},{code:"JO07",name:"Karak"},{code:"JO08",name:"Ma'an"},{code:"JO09",name:"Madaba"},{code:"JO10",name:"Mafraq"},{code:"JO11",name:"Tafilah"},{code:"JO12",name:"Zarqa"}]},{code:"KZ",id:2272,name:"Kazakhstan",states:[{code:"KZ01",name:"Almaty"},{code:"KZ02",name:"Almaty (City)"},{code:"KZ03",name:"Aqmola"},{code:"KZ04",name:"Aqtöbe"},{code:"KZ05",name:"Astana"},{code:"KZ06",name:"Atyrau"},{code:"KZ08",name:"Bayqonyr"},{code:"KZ15",name:"East Kazakhstan"},{code:"KZ09",name:"Mangghystau"},{code:"KZ16",name:"North Kazakhstan"},{code:"KZ11",name:"Pavlodar"},{code:"KZ12",name:"Qaraghandy"},{code:"KZ13",name:"Qostanay"},{code:"KZ14",name:"Qyzylorda"},{code:"KZ10",name:"South Kazakhstan"},{code:"KZ07",name:"West Kazakhstan"},{code:"KZ17",name:"Zhambyl"}]},{code:"KE",id:2273,name:"Kenya",states:[{code:"KE10",name:"Baringo"},{code:"KE11",name:"Bomet"},{code:"KE12",name:"Bungoma"},{code:"KE13",name:"Busia"},{code:"KE14",name:"Elgeyo Marakwet"},{code:"KE15",name:"Embu"},{code:"KE16",name:"Garissa"},{code:"KE17",name:"Homa Bay"},{code:"KE18",name:"Isiolo"},{code:"KE19",name:"Kajiado"},{code:"KE20",name:"Kakamega"},{code:"KE21",name:"Kericho"},{code:"KE22",name:"Kiambu"},{code:"KE23",name:"Kilifi"},{code:"KE24",name:"Kirinyaga"},{code:"KE25",name:"Kisii"},{code:"KE26",name:"Kisumu"},{code:"KE27",name:"Kitui"},{code:"KE28",name:"Kwale"},{code:"KE29",name:"Laikipia"},{code:"KE30",name:"Lamu"},{code:"KE31",name:"Machakos"},{code:"KE32",name:"Makueni"},{code:"KE33",name:"Mandera"},{code:"KE34",name:"Marsabit"},{code:"KE35",name:"Meru"},{code:"KE36",name:"Migori"},{code:"KE37",name:"Mombasa"},{code:"KE38",name:"Murang"},{code:"KE05",name:"Nairobi"},{code:"KE39",name:"Nakuru"},{code:"KE40",name:"Nandi"},{code:"KE41",name:"Narok"},{code:"KE42",name:"Nyamira"},{code:"KE43",name:"Nyandarua"},{code:"KE44",name:"Nyeri"},{code:"KE45",name:"Samburu"},{code:"KE46",name:"Siaya"},{code:"KE47",name:"Taita Taveta"},{code:"KE48",name:"Tana River"},{code:"KE49",name:"Tharaka Nithi"},{code:"KE50",name:"Trans Nzoia"},{code:"KE51",name:"Turkana"},{code:"KE52",name:"Uasin Gishu"},{code:"KE53",name:"Vihiga"},{code:"KE54",name:"Wajir"},{code:"KE55",name:"West Pokot"}]},{code:"KI",id:2391,name:"Kiribati",states:[]},{code:"KP",id:2274,name:"Korea; Democratic People's Republic Of (North)",states:[{code:"KN01",name:"Chagang-do"},{code:"KN17",name:"Hamgyong-bukto"},{code:"KN03",name:"Hamgyong-namdo"},{code:"KN07",name:"Hwanghae-bukto"},{code:"KN06",name:"Hwanghae-namdo"},{code:"KN09",name:"Kangwon-do"},{code:"KN18",name:"Najin Sonbong-si"},{code:"KN11",name:"P'yongan-bukto"},{code:"KN15",name:"P'yongan-namdo"},{code:"KN12",name:"P'yongyang-si"},{code:"KN13",name:"Yanggang-do"}]},{code:"KR",id:2275,name:"Korea; Republic Of (South)",states:[{code:"KS10",name:"Busan"},{code:"KS05",name:"Chungcheongbuk-do"},{code:"KS17",name:"Chungcheongnam-do"},{code:"KS15",name:"Daegu"},{code:"KS19",name:"Daejeon"},{code:"KS06",name:"Gangwon-do"},{code:"KS18",name:"Gwangju"},{code:"KS13",name:"Gyeonggi-do"},{code:"KS14",name:"Gyeongsangbuk-do"},{code:"KS20",name:"Gyeongsangnam-do"},{code:"KS12",name:"Incheon"},{code:"KS01",name:"Jeju-do"},{code:"KS03",name:"Jeollabuk-do"},{code:"KS16",name:"Jeollanam-do"},{code:"KS22",name:"Sejong"},{code:"KS11",name:"Seoul"},{code:"KS21",name:"Ulsan"}]},{code:"KV",id:2392,name:"Kosovo",states:[]},{code:"KW",id:2276,name:"Kuwait",states:[{code:"KU04",name:"Al Ahmadi"},{code:"KU07",name:"Al Farwaniyah"},{code:"KU05",name:"Al Jahrah"},{code:"KU02",name:"Al Kuwayt"},{code:"KU08",name:"Hawalli"},{code:"KU09",name:"Mubarak Al-Kabir"}]},{code:"KG",id:2277,name:"Kyrgyzstan",states:[{code:"KG09",name:"Batken"},{code:"KG01",name:"Bishkek"},{code:"KG02",name:"Chüy"},{code:"KG03",name:"Jalal-Abad"},{code:"KG04",name:"Naryn"},{code:"KG10",name:"Osh [City]"},{code:"KG08",name:"Osh"},{code:"KG06",name:"Talas"},{code:"KG07",name:"Ysyk-Köl"}]},{code:"LA",id:2278,name:"Lao People's Democratic Republic",states:[{code:"LA01",name:"Attapu"},{code:"LA22",name:"Bokeo"},{code:"LA23",name:"Bolikhamxai"},{code:"LA02",name:"Champasak"},{code:"LA03",name:"Houaphan"},{code:"LA15",name:"Khammouan"},{code:"LA16",name:"Louang Namtha"},{code:"LA17",name:"Louangphrabang"},{code:"LA07",name:"Oudômxai"},{code:"LA18",name:"Phôngsali"},{code:"LA19",name:"Saravan"},{code:"LA20",name:"Savannakhét"},{code:"LA27",name:"Vientiane"},{code:"LA24",name:"Vientiane [prefecture]"},{code:"LA13",name:"Xaignabouri"},{code:"LA28",name:"Xaisômboun"},{code:"LA26",name:"Xékong"},{code:"LA14",name:"Xiangkhoang"}]},{code:"LV",id:2279,name:"Latvia",states:[{code:"LG34",name:"Adaži"},{code:"LG35",name:"Aglona"},{code:"LG36",name:"Aizkraukle"},{code:"LG37",name:"Aizpute"},{code:"LG38",name:"Akniste"},{code:"LG39",name:"Aloja"},{code:"LG40",name:"Alsunga"},{code:"LG41",name:"Aluksne"},{code:"LG42",name:"Amata"},{code:"LG43",name:"Ape"},{code:"LG44",name:"Auce"},{code:"LG45",name:"Babite"},{code:"LG46",name:"Baldone"},{code:"LG47",name:"Baltinava"},{code:"LG48",name:"Balvi"},{code:"LG49",name:"Bauska"},{code:"LG50",name:"Beverina"},{code:"LG51",name:"Broceni"},{code:"LG52",name:"Burtnieki"},{code:"LG53",name:"Carnikava"},{code:"LG54",name:"Cesis"},{code:"LG55",name:"Cesvaine"},{code:"LG56",name:"Cibla"},{code:"LG57",name:"Dagda"},{code:"LG06",name:"Daugavpils"},{code:"LG58",name:"Daugavpils"},{code:"LG59",name:"Dobele"},{code:"LG60",name:"Dundaga"},{code:"LG61",name:"Durbe"},{code:"LG62",name:"Engure"},{code:"LG63",name:"Ergli"},{code:"LG64",name:"Garkalne"},{code:"LG65",name:"Grobina"},{code:"LG66",name:"Gulbene"},{code:"LG67",name:"Iecava"},{code:"LG68",name:"Ikškile"},{code:"LG69",name:"Ilukste"},{code:"LG70",name:"Incukalns"},{code:"LG71",name:"Jaunjelgava"},{code:"LG72",name:"Jaunpiebalga"},{code:"LG73",name:"Jaunpils"},{code:"LG75",name:"Jekabpils"},{code:"LG74",name:"Jekabpils"},{code:"LG76",name:"Jelgava"},{code:"LG11",name:"Jelgava"},{code:"LG13",name:"Jurmala"},{code:"LG77",name:"Kandava"},{code:"LG78",name:"Karsava"},{code:"LG79",name:"Kegums"},{code:"LG80",name:"Kekava"},{code:"LG81",name:"Kocenu"},{code:"LG82",name:"Koknese"},{code:"LG83",name:"Kraslava"},{code:"LG84",name:"Krimulda"},{code:"LG85",name:"Krustpils"},{code:"LG86",name:"Kuldiga"},{code:"LG87",name:"Lielvarde"},{code:"LG16",name:"Liepaja"},{code:"LG88",name:"Ligatne"},{code:"LG89",name:"Limbaži"},{code:"LG90",name:"Livani"},{code:"LG91",name:"Lubana"},{code:"LG92",name:"Ludza"},{code:"LG93",name:"Madona"},{code:"LG94",name:"Malpils"},{code:"LG95",name:"Marupe"},{code:"LG96",name:"Mazsalaca"},{code:"LGF1",name:"Mersraga"},{code:"LG97",name:"Naukšeni"},{code:"LG98",name:"Nereta"},{code:"LG99",name:"Nica"},{code:"LGA1",name:"Ogre"},{code:"LGA2",name:"Olaine"},{code:"LGA3",name:"Ozolnieki"},{code:"LGA4",name:"Pargauja"},{code:"LGA5",name:"Pavilosta"},{code:"LGA6",name:"Plavinas"},{code:"LGA7",name:"Preili"},{code:"LGA8",name:"Priekule"},{code:"LGA9",name:"Priekuli"},{code:"LGB1",name:"Rauna"},{code:"LGB2",name:"Rezekne"},{code:"LG23",name:"Rezekne"},{code:"LGB3",name:"Riebini"},{code:"LG25",name:"Riga"},{code:"LGB4",name:"Roja"},{code:"LGB5",name:"Ropaži"},{code:"LGB6",name:"Rucava"},{code:"LGB7",name:"Rugaji"},{code:"LGB8",name:"Rujiena"},{code:"LGB9",name:"Rundale"},{code:"LGC1",name:"Salacgriva"},{code:"LGC2",name:"Sala"},{code:"LGC3",name:"Salaspils"},{code:"LGC4",name:"Saldus"},{code:"LGC5",name:"Saulkrasti"},{code:"LGC6",name:"Seja"},{code:"LGC7",name:"Sigulda"},{code:"LGC8",name:"Skriveri"},{code:"LGC9",name:"Skrunda"},{code:"LGD1",name:"Smiltene"},{code:"LGD2",name:"Stopini"},{code:"LGD3",name:"Strenci"},{code:"LGD4",name:"Talsi"},{code:"LGD5",name:"Tervete"},{code:"LGD6",name:"Tukums"},{code:"LGD7",name:"Vainode"},{code:"LGD8",name:"Valka"},{code:"LGD9",name:"Valmiera"},{code:"LGE1",name:"Varaklani"},{code:"LGE2",name:"Varkava"},{code:"LGE3",name:"Vecpiebalga"},{code:"LGE4",name:"Vecumnieki"},{code:"LGE5",name:"Ventspils"},{code:"LG32",name:"Ventspils"},{code:"LGE6",name:"Viesite"},{code:"LGE7",name:"Vilaka"},{code:"LGE8",name:"Vilani"},{code:"LGE9",name:"Zilupe"}]},{code:"LB",id:2280,name:"Lebanon",states:[{code:"LE10",name:"Aakkar"},{code:"LE07",name:"An Nabatiyah"},{code:"LE11",name:"Baalbek-Hermel"},{code:"LE04",name:"Beirut"},{code:"LE08",name:"Beqaa"},{code:"LE05",name:"Mount Lebanon"},{code:"LE09",name:"North Lebanon"},{code:"LE06",name:"South Lebanon"}]},{code:"LS",id:2281,name:"Lesotho",states:[{code:"LT10",name:"Berea"},{code:"LT11",name:"Butha-Buthe"},{code:"LT12",name:"Leribe"},{code:"LT14",name:"Mafeteng"},{code:"LT13",name:"Mafeteng"},{code:"LT15",name:"Mohale's Hoek"},{code:"LT16",name:"Mokhotlong"},{code:"LT17",name:"Qacha's Nek"},{code:"LT18",name:"Quthing"},{code:"LT19",name:"Thaba-Tseka"}]},{code:"LR",id:2282,name:"Liberia",states:[{code:"LI15",name:"Bomi"},{code:"LI01",name:"Bong"},{code:"LI21\t",name:"Gbarpolu"},{code:"LI11",name:"Grand Bassa"},{code:"LI12",name:"Grand Cape Mount"},{code:"LI19",name:"Grand Gedeh"},{code:"LI16",name:"Grand Kru"},{code:"LI20",name:"Lofa"},{code:"LI17",name:"Margibi"},{code:"LI13",name:"Maryland"},{code:"LI14",name:"Montserrado"},{code:"LI09",name:"Nimba"},{code:"LI22",name:"River Gee"},{code:"LI18",name:"Rivercess"},{code:"LI10",name:"Sinoe"}]},{code:"LY",id:2380,name:"Libyan Arab Jamahiriya",states:[]},{code:"LI",id:2284,name:"Liechtenstein",states:[]},{code:"LT",id:2285,name:"Lithuania",states:[{code:"LH56",name:"Alytus"},{code:"LH57",name:"Kaunas"},{code:"LH58",name:"Klaipeda"},{code:"LH59",name:"Marijampole"},{code:"LH60",name:"Panevežys"},{code:"LH61",name:"Siauliai"},{code:"LH62",name:"Taurage"},{code:"LH63",name:"Telšiai"},{code:"LH64",name:"Utena"},{code:"LH65",name:"Vilnius"}]},{code:"LU",id:2286,name:"Luxembourg",states:[{code:"LU01",name:"Diekirch"},{code:"LU02",name:"Grevenmacher"},{code:"LU03",name:"Luxembourg"}]},{code:"MO",id:2287,name:"Macau",states:[]},{code:"MK",id:2288,name:"Macedonia",states:[]},{code:"YU",id:2367,name:"Macedonia; the Former Yugoslav Republic",states:[]},{code:"MG",id:2289,name:"Madagascar",states:[{code:"MA05",name:"Antananarivo"},{code:"MA01",name:"Antsiranana"},{code:"MA02",name:"Fianarantsoa"},{code:"MA03",name:"Mahajanga"},{code:"MA04",name:"Toamasina"},{code:"MA06",name:"Toliara"}]},{code:"MW",id:2290,name:"Malawi",states:[{code:"MI26",name:"Balaka"},{code:"MI24",name:"Blantyre"},{code:"MI02",name:"Chikwawa"},{code:"MI03",name:"Chiradzulu"},{code:"MI04",name:"Chitipa"},{code:"MI06",name:"Dedza"},{code:"MI07",name:"Dowa"},{code:"MI08",name:"Karonga"},{code:"MI09",name:"Kasungu"},{code:"MI27",name:"Likoma"},{code:"MI11",name:"Lilongwe"},{code:"MI28",name:"Machinga"},{code:"MI12",name:"Mangochi"},{code:"MI13",name:"Mchinji"},{code:"MI29",name:"Mulanje"},{code:"MI25",name:"Mwanza"},{code:"MI15",name:"Mzimba"},{code:"MI31",name:"Neno"},{code:"MI17",name:"Nkhata Bay"},{code:"MI18",name:"Nkhotakota"},{code:"MI19",name:"Nsanje"},{code:"MI16",name:"Ntcheu"},{code:"MI20",name:"Ntchisi"},{code:"MI30",name:"Phalombe"},{code:"MI21",name:"Rumphi"},{code:"MI22",name:"Salima"},{code:"MI05",name:"Thyolo"},{code:"MI23",name:"Zomba"}]},{code:"MY",id:2291,name:"Malaysia",states:[{code:"MY01",name:"Johor"},{code:"MY02",name:"Kedah"},{code:"MY03",name:"Kelantan"},{code:"MY04",name:"Melaka"},{code:"MY05",name:"Negeri Sembilan"},{code:"MY06",name:"Pahang"},{code:"MY08",name:"Perak"},{code:"MY09",name:"Perlis"},{code:"MY07",name:"Pulau Pinang"},{code:"MY12",name:"Sabah"},{code:"MY13",name:"Sarawak"},{code:"MY10",name:"Selangor"},{code:"MY11",name:"Terengganu"},{code:"MY14",name:"W.P. Kuala Lumpur"},{code:"MY15",name:"W.P. Labuan"},{code:"MY16",name:"W.P. Putrajaya"}]},{code:"MV",id:2384,name:"Maldives; Republic of",states:[]},{code:"ML",id:2292,name:"Mali",states:[{code:"ML01",name:"Bamako"},{code:"ML09",name:"Gao"},{code:"ML03",name:"Kayes"},{code:"ML10",name:"Kidal"},{code:"ML07",name:"Koulikoro"},{code:"ML.ME",name:"Ménaka"},{code:"ML04",name:"Mopti"},{code:"ML05",name:"Ségou"},{code:"ML06",name:"Sikasso"},{code:"ML.TD",name:"Taoudénit"},{code:"ML08",name:"Timbuktu"}]},{code:"MT",id:2293,name:"Malta",states:[{code:"MT.CE",name:"Central"},{code:"MT.GO",name:"Gozo"},{code:"MT.NO",name:"Northern"},{code:"MT.SE",name:"South Eastern"},{code:"MT.SO",name:"Southern"}]},{code:"RM",id:2394,name:"Marshall Islands",states:[]},{code:"MQ",id:2423,name:"Martinique",states:[]},{code:"MR",id:2294,name:"Mauritania",states:[{code:"MR07",name:"Adrar"},{code:"MR03",name:"Assaba"},{code:"MR05",name:"Brakna"},{code:"MR08",name:"Dakhlet Nouadhibou"},{code:"MR04",name:"Gorgol"},{code:"MR10",name:"Guidimaka"},{code:"MR01",name:"Hodh ech Chargui"},{code:"MR02",name:"Hodh el Gharbi"},{code:"MR12",name:"Inchiri"},{code:"MR.NN",name:"Nouakchott Nord"},{code:"MR13",name:"Nouakchott Ouest"},{code:"MR.NS",name:"Nouakchott Sud"},{code:"MR09",name:"Tagant"},{code:"MR11",name:"Tiris Zemmour"},{code:"MR06",name:"Trarza"}]},{code:"MU",id:2295,name:"Mauritius",states:[{code:"MP21",name:"Agalega Islands"},{code:"MP12",name:"Black River"},{code:"MP22",name:"Cargados Carajos"},{code:"MP13",name:"Flacq"},{code:"MP14",name:"Grand Port"},{code:"MP15",name:"Moka"},{code:"MP16",name:"Pamplemousses"},{code:"MP17",name:"Plaines Wilhems"},{code:"MP18",name:"Port Louis"},{code:"MP19",name:"Rivière du Rempart"},{code:"MP23",name:"Rodrigues"},{code:"MP20",name:"Savanne"}]},{code:"M999",id:2393,name:"Mayotte",states:[]},{code:"MX",id:2296,name:"Mexico",states:[{code:"AGU",name:"Aguascalientes"},{code:"BCS",name:"Baja California Sur"},{code:"BCN",name:"Baja California"},{code:"CAM",name:"Campeche"},{code:"CHP",name:"Chiapas"},{code:"CHH",name:"Chihuahua"},{code:"COA",name:"Coahuila"},{code:"COL",name:"Colima"},{code:"DIF",name:"Distrito Federal"},{code:"DUR",name:"Durango"},{code:"GUA",name:"Guanajuato"},{code:"GRO",name:"Guerrero"},{code:"HID",name:"Hidalgo"},{code:"JAL",name:"Jalisco"},{code:"MEX",name:"México"},{code:"MIC",name:"Michoacán"},{code:"MOR",name:"Morelos"},{code:"NAY",name:"Nayarit"},{code:"NLE",name:"Nuevo León"},{code:"OAX",name:"Oaxaca"},{code:"PUE",name:"Puebla"},{code:"QUE",name:"Querétaro"},{code:"ROO",name:"Quintana Roo"},{code:"SLP",name:"San Luis Potosí"},{code:"SIN",name:"Sinaloa"},{code:"SON",name:"Sonora"},{code:"TAB",name:"Tabasco"},{code:"TAM",name:"Tamaulipas"},{code:"TLA",name:"Tlaxcala"},{code:"VER",name:"Veracruz"},{code:"YUC",name:"Yucatán"},{code:"ZAC",name:"Zacatecas"}]},{code:"FM",id:2297,name:"Micronesia; Federated States of",states:[{code:"FM03",name:"Chuuk"},{code:"FM01",name:"Kosrae"},{code:"FM02",name:"Pohnpei"},{code:"FM04",name:"Yap"}]},{code:"MD",id:2395,name:"Moldova; Republic of",states:[]},{code:"MC",id:2299,name:"Monaco",states:[]},{code:"MN",id:2300,name:"Mongolia",states:[]},{code:"MJ",id:2396,name:"Montenegro",states:[{code:"ME-1",name:"Andrijevica"},{code:"ME-2",name:"Bar"},{code:"ME-3",name:"Berane"},{code:"ME-4",name:"Bijelo Polje"},{code:"ME-5",name:"Budva"},{code:"ME-6",name:"Cetinje"},{code:"ME-7",name:"Danilovgrad"},{code:"ME-8",name:"Herceg Novi"},{code:"ME-9",name:"Kolašin"},{code:"ME-10",name:"Kotor"},{code:"ME-11",name:"Mojkovac"},{code:"ME-12",name:"Nikšic"},{code:"ME-13",name:"Plav"},{code:"ME-14",name:"Pljevlja"},{code:"ME-15",name:"Plužine"},{code:"ME-16",name:"Podgorica"},{code:"ME-17",name:"Rožaje"},{code:"ME-18",name:"Šavnik"},{code:"ME-19",name:"Tivat"},{code:"ME-20",name:"Ulcinj"},{code:"ME-21",name:"Žabljak"}]},{code:"MS",id:2424,name:"Montserrat",states:[]},{code:"MA",id:2301,name:"Morocco",states:[{code:"MA.BK",name:"Béni Mellal-Khénifra"},{code:"MA.CS",name:"Casablanca-Settat"},{code:"MA.OL",name:"Dakhla-Oued Ed-Dahab"},{code:"MA.DT",name:"Drâa-Tafilalet"},{code:"MA.FK",name:"Fès-Meknès"},{code:"MA.GN",name:"Guelmim-Oued Noun"},{code:"MA.OF",name:"L'oriental"},{code:"MA.LS",name:"Laâyoune-Sakia al Hamra"},{code:"MA.MS",name:"Marrakech-Safi"},{code:"MA.RK",name:"Rabat-Salé-Kénitra"},{code:"MA.SS",name:"Souss-Massa"},{code:"MA.TC",name:"Tanger-Tétouan-Al Hoceima"}]},{code:"MZ",id:2302,name:"Mozambique",states:[{code:"MZ01",name:"Cabo Delgado"},{code:"MZ02",name:"Gaza"},{code:"MZ03",name:"Inhambane"},{code:"MZ10",name:"Manica"},{code:"MZ11",name:"Maputo [city]"},{code:"MZ04",name:"Maputo"},{code:"MZ06",name:"Nampula"},{code:"MZ07",name:"Niassa"},{code:"MZ05",name:"Sofala"},{code:"MZ08",name:"Tete"},{code:"MZ09",name:"Zambézia"}]},{code:"MM",id:2303,name:"Myanmar",states:[{code:"MM.AY",name:"Ayeyarwady"},{code:"MM.BA",name:"Bago"},{code:"MM.CH",name:"Chin"},{code:"MM.KC",name:"Kachin"},{code:"MM.KH",name:"Kayah"},{code:"MM.KN",name:"Kayin"},{code:"MM.MG",name:"Magway"},{code:"MM.ML",name:"Mandalay"},{code:"MM.MO",name:"Mon"},{code:"MM.NY",name:"Naypyidaw"},{code:"MM.RA",name:"Rakhine"},{code:"MM.SA",name:"Sagaing"},{code:"MM.SH",name:"Shan"},{code:"MM.TN",name:"Tanintharyi"},{code:"MM.YA",name:"Yangon"}]},{code:"NA",id:2304,name:"Namibia",states:[{code:"WA29",name:"Erongo"},{code:"WA30",name:"Hardap"},{code:"WA31",name:"Karas"},{code:"WA40",name:"Kavango East"},{code:"WA41",name:"Kavango West"},{code:"WA21",name:"Khomas"},{code:"WA32",name:"Kunene"},{code:"WA33",name:"Ohangwena"},{code:"WA35",name:"Omaheke"},{code:"WA36",name:"Omusati"},{code:"WA37",name:"Oshana"},{code:"WA38",name:"Oshikoto"},{code:"WA39",name:"Otjozondjupa"},{code:"WA28",name:"Zambezi"}]},{code:"NR",id:2397,name:"Nauru",states:[]},{code:"NP",id:2305,name:"Nepal",states:[{code:"NP.FI",name:"Five"},{code:"NP.FO",name:"Four"},{code:"NP.ON",name:"One"},{code:"NP.SE",name:"Seven"},{code:"NP.SI",name:"Six"},{code:"NP.TH",name:"Three"},{code:"NP.TW",name:"Two"}]},{code:"NL",id:2306,name:"Netherlands",states:[{code:"DR",name:"Drenthe"},{code:"FL",name:"Flevoland"},{code:"FR",name:"Friesland"},{code:"GE",name:"Gelderland"},{code:"GR",name:"Groningen"},{code:"LI",name:"Limburg"},{code:"NB",name:"Noord-Brabant"},{code:"NH",name:"Noord-Holland"},{code:"OV",name:"Overijssel"},{code:"UT",name:"Utrecht"},{code:"ZE",name:"Zeeland"},{code:"ZH",name:"Zuid-Holland"}]},{code:"AN",id:2425,name:"Netherlands Antilles",states:[]},{code:"NC",id:2426,name:"New Caledonia",states:[]},{code:"NZ",id:2307,name:"New Zealand",states:[{code:"AUK",name:"Auckland"},{code:"BOP",name:"Bay of Plenty"},{code:"CAN",name:"Canterbury"},{code:"CIT",name:"Chatham Islands Territory"},{code:"GIS",name:"Gisborne"},{code:"HKB",name:"Hawke's Bay"},{code:"MWT",name:"Manawatu-Wanganui"},{code:"MBH",name:"Marlborough"},{code:"NSN",name:"Nelson"},{code:"N",name:"North Island"},{code:"NTL",name:"Northland"},{code:"OTA",name:"Otago"},{code:"S",name:"South Island"},{code:"STL",name:"Southland"},{code:"TKI",name:"Taranaki"},{code:"TAS",name:"Tasman District"},{code:"WKO",name:"Waikato"},{code:"WGN",name:"Wellington"},{code:"WTC",name:"West Coast"}]},{code:"NI",id:2308,name:"Nicaragua",states:[{code:"NU01",name:"Boaco"},{code:"NU02",name:"Carazo"},{code:"NU03",name:"Chinandega"},{code:"NU04",name:"Chontales"},{code:"NU05",name:"Estelí"},{code:"NU06",name:"Granada"},{code:"NU07",name:"Jinotega"},{code:"NU08",name:"León"},{code:"NU09",name:"Madriz"},{code:"NU10",name:"Managua"},{code:"NU11",name:"Masaya"},{code:"NU12",name:"Matagalpa"},{code:"NU13",name:"Nueva Segovia"},{code:"NU17",name:"Región Autónoma del Caribe Norte"},{code:"NU18",name:"Región Autónoma del Caribe Sur"},{code:"NU14",name:"Río San Juan"},{code:"NU15",name:"Rivas"}]},{code:"NE",id:2309,name:"Niger",states:[{code:"NG01",name:"Agadez"},{code:"NG02",name:"Diffa"},{code:"NG03",name:"Dosso"},{code:"NG04",name:"Maradi"},{code:"NG08",name:"Niamey"},{code:"NG06",name:"Tahoua"},{code:"NG09",name:"Tillabéri"},{code:"NG07",name:"Zinder"}]},{code:"NG",id:2310,name:"Nigeria",states:[{code:"NI45",name:"Abia"},{code:"NI35",name:"Adamawa"},{code:"NI21",name:"Akwa Ibom"},{code:"NI25",name:"Anambra"},{code:"NI46",name:"Bauchi"},{code:"NI52",name:"Bayelsa"},{code:"NI26",name:"Benue"},{code:"NI27",name:"Borno"},{code:"NI22",name:"Cross River"},{code:"NI36",name:"Delta"},{code:"NI53",name:"Ebonyi"},{code:"NI37",name:"Edo"},{code:"NI54",name:"Ekiti"},{code:"NI47",name:"Enugu"},{code:"NI11",name:"Federal Capital Territory"},{code:"NI55",name:"Gombe"},{code:"NI28",name:"Imo"},{code:"NI39",name:"Jigawa"},{code:"NI23",name:"Kaduna"},{code:"NI29",name:"Kano"},{code:"NI24",name:"Katsina"},{code:"NI40",name:"Kebbi"},{code:"NI41",name:"Kogi"},{code:"NI30",name:"Kwara"},{code:"NI05",name:"Lagos"},{code:"NI56",name:"Nassarawa"},{code:"NI31",name:"Niger"},{code:"NI16",name:"Ogun"},{code:"NI48",name:"Ondo"},{code:"NI42",name:"Osun"},{code:"NI32",name:"Oyo"},{code:"NI49",name:"Plateau"},{code:"NI50",name:"Rivers"},{code:"NI51",name:"Sokoto"},{code:"NI43",name:"Taraba"},{code:"NI44",name:"Yobe"},{code:"NI57",name:"Zamfara"}]},{code:"NU",id:2427,name:"Niue",states:[]},{code:"NF",id:2428,name:"Norfolk Island",states:[]},{code:"MP",id:2429,name:"Northern Mariana Islands",states:[]},{code:"NO",id:2311,name:"Norway",states:[{code:"NO02",name:"Akershus"},{code:"NO09",name:"Aust-Agder"},{code:"NO06",name:"Buskerud"},{code:"NO20",name:"Finnmark"},{code:"NO04",name:"Hedmark"},{code:"NO12",name:"Hordaland"},{code:"NO22",name:"Jan Mayen (Arctic Region)"},{code:"NO15",name:"Møre og Romsdal"},{code:"NO17",name:"Nord-Trøndelag"},{code:"NO18",name:"Nordland"},{code:"NO05",name:"Oppland"},{code:"NO03",name:"Oslo"},{code:"NO01",name:"Østfold"},{code:"NO11",name:"Rogaland"},{code:"NO14",name:"Sogn og Fjordane"},{code:"NO16",name:"Sør-Trøndelag"},{code:"NO21",name:"Svalbard (Arctic Region)"},{code:"NO08",name:"Telemark"},{code:"NO19",name:"Troms"},{code:"NO10",name:"Vest-Agder"},{code:"NO07",name:"Vestfold"}]},{code:"OM",id:2312,name:"Oman",states:[{code:"MU01",name:"Ad Dakhliyah"},{code:"MU09",name:"Adh Dhahirah"},{code:"MU11",name:"Al Batinah North"},{code:"MU02",name:"Al Batinah South"},{code:"MU10",name:"Al Buraymi"},{code:"MU03",name:"Al Wusta"},{code:"MU12",name:"Ash Sharqiyah North"},{code:"MU04",name:"Ash Sharqiyah South"},{code:"MU08",name:"Dhofar"},{code:"MU07",name:"Musandam"},{code:"MU06",name:"Muscat"}]},{code:"PK",id:2313,name:"Pakistan",states:[{code:"PK06",name:"Azad Kashmir"},{code:"PK02",name:"Balochistan"},{code:"PK01",name:"Federally Administered Tribal Areas"},{code:"PK07",name:"Gilgit-Baltistan"},{code:"PK08",name:"Islamabad"},{code:"PK03",name:"Khyber-Pakhtunkhwa"},{code:"PK04",name:"Punjab"},{code:"PK05",name:"Sindh"}]},{code:"PW",id:2314,name:"Palau",states:[]},{code:"PS",id:2430,name:"Palestinian Territory; Occupied",states:[]},{code:"PA",id:2315,name:"Panama",states:[{code:"PM01",name:"Bocas del Toro"},{code:"PM02\t",name:"Chiriquí"},{code:"PM03",name:"Coclé"},{code:"PM04",name:"Coclé"},{code:"PM05",name:"Darién"},{code:"PM11",name:"Emberá"},{code:"PM06",name:"Herrera"},{code:"PM09",name:"Kuna Yala"},{code:"PM07",name:"Los Santos"},{code:"PM12",name:"Ngäbe Buglé"},{code:"PM13",name:"Panamá Oeste"},{code:"PM08",name:"Panamá"},{code:"PM10",name:"Veraguas"}]},{code:"PG",id:2316,name:"Papua New Guinea",states:[{code:"PP07",name:"Bougainville"},{code:"PP01",name:"Central"},{code:"PP08",name:"Chimbu"},{code:"PP10",name:"East New Britain"},{code:"PP11",name:"East Sepik"},{code:"PP09",name:"Eastern Highlands"},{code:"PP19",name:"Enga"},{code:"PP02",name:"Gulf"},{code:"PP21",name:"Hela"},{code:"PP22",name:"Jiwaka"},{code:"PP12",name:"Madang"},{code:"PP13",name:"Manus"},{code:"PP03",name:"Milne Bay"},{code:"PP14",name:"Morobe"},{code:"PP20",name:"National Capital District"},{code:"PP15",name:"New Ireland"},{code:"PP04",name:"Northern"},{code:"PP18",name:"Sandaun"},{code:"PP05",name:"Southern Highlands"},{code:"PP17",name:"West New Britain"},{code:"PP06",name:"Western"},{code:"PP16",name:"Western Highlands"}]},{code:"PY",id:2317,name:"Paraguay",states:[{code:"PA23",name:"Alto Paraguay"},{code:"PA01",name:"Alto Paraná"},{code:"PA02",name:"Amambay"},{code:"PA22",name:"Asunción"},{code:"PA24",name:"Boquerón"},{code:"PA04",name:"Caaguazú"},{code:"PA05",name:"Caazapá"},{code:"PA19",name:"Canindeyú"},{code:"PA06",name:"Central"},{code:"PA07",name:"Concepción"},{code:"PA08",name:"Cordillera"},{code:"PA10",name:"Guairá"},{code:"PA11",name:"Itapúa"},{code:"PA12",name:"Misiones"},{code:"PA15",name:"Paraguarí"},{code:"PA16",name:"Presidente Hayes"},{code:"PA17",name:"San Pedro"},{code:"PA13",name:"Ñeembucú"}]},{code:"PE",id:2318,name:"Peru",states:[{code:"PE01",name:"Amazonas"},{code:"PE02",name:"Ancash"},{code:"PE03",name:"Apurímac"},{code:"PE04",name:"Arequipa"},{code:"PE05",name:"Ayacucho"},{code:"PE06",name:"Cajamarca"},{code:"PE07",name:"Callao"},{code:"PE08",name:"Cusco"},{code:"PE09",name:"Huancavelica"},{code:"PE10",name:"Huánuco"},{code:"PE11",name:"Ica"},{code:"PE12",name:"Junín"},{code:"PE13",name:"La Libertad"},{code:"PE14",name:"Lambayeque"},{code:"PE15",name:"Lima"},{code:"PE26",name:"Lima [Province]"},{code:"PE16",name:"Loreto"},{code:"PE17",name:"Madre de Dios"},{code:"PE18",name:"Moquegua"},{code:"PE19",name:"Pasco"},{code:"PE20",name:"Piura"},{code:"PE21",name:"Puno"},{code:"PE22",name:"San Martín"},{code:"PE23",name:"Tacna"},{code:"PE24",name:"Tumbes"},{code:"PE25",name:"Ucayali"}]},{code:"PH",id:2319,name:"Philippines",states:[{code:"RP01",name:"Abra"},{code:"RP02",name:"Agusan del Norte"},{code:"RP03",name:"Agusan del Sur"},{code:"RP04",name:"Aklan"},{code:"RP05",name:"Albay"},{code:"RP06",name:"Antique"},{code:"RPH6",name:"Apayao"},{code:"RPG8",name:"Aurora"},{code:"RP22",name:"Basilan"},{code:"RP07",name:"Bataan"},{code:"RP08",name:"Batanes"},{code:"RP09",name:"Batangas"},{code:"RP10",name:"Benguet"},{code:"RPH9",name:"Biliran"},{code:"RP11",name:"Bohol"},{code:"RP12",name:"Bukidnon"},{code:"RP13",name:"Bulacan"},{code:"RP14",name:"Cagayan"},{code:"RP15",name:"Camarines Norte"},{code:"RP16",name:"Camarines Sur"},{code:"RP17",name:"Camiguin"},{code:"RP18",name:"Capiz"},{code:"RP19",name:"Catanduanes"},{code:"RP20",name:"Cavite"},{code:"RP21",name:"Cebu"},{code:"RPI6",name:"Compostela Valley"},{code:"RP57",name:"Cotabato"},{code:"RP26",name:"Davao Oriental"},{code:"RPI7",name:"Davao del Norte"},{code:"RP25",name:"Davao del Sur"},{code:"RPI9",name:"Dinagat Islands"},{code:"RP23",name:"Eastern Samar"},{code:"RPJ3",name:"Guimaras"},{code:"RP27",name:"Ifugao"},{code:"RP28",name:"Ilocos Norte"},{code:"RP29",name:"Ilocos Sur"},{code:"RP30",name:"Iloilo"},{code:"RP31",name:"Isabela"},{code:"RPJ7",name:"Kalinga"},{code:"RP36",name:"La Union"},{code:"RP33",name:"Laguna"},{code:"RP34",name:"Lanao del Norte"},{code:"RP35",name:"Lanao del Sur"},{code:"RP37",name:"Leyte"},{code:"RP56",name:"Maguindanao"},{code:"RP38",name:"Marinduque"},{code:"RP39",name:"Masbate"},{code:"RPD9",name:"Metropolitan Manila"},{code:"RP42",name:"Misamis Occidental"},{code:"RP43",name:"Misamis Oriental"},{code:"RP44",name:"Mountain"},{code:"RPH3",name:"Negros Occidental"},{code:"RP46",name:"Negros Oriental"},{code:"RP67",name:"Northern Samar"},{code:"RP47",name:"Nueva Ecija"},{code:"RP48",name:"Nueva Vizcaya"},{code:"RP40",name:"Occidental Mindoro"},{code:"RP41",name:"Oriental Mindoro"},{code:"RP49",name:"Palawan"},{code:"RP50",name:"Pampanga"},{code:"RP51",name:"Pangasinan"},{code:"RPH2",name:"Quezon"},{code:"RP68",name:"Quirino"},{code:"RP53",name:"Rizal"},{code:"RP54",name:"Romblon"},{code:"RP55",name:"Samar"},{code:"PH72",name:"Sarangani"},{code:"RP69",name:"Siquijor"},{code:"RP58",name:"Sorsogon"},{code:"RP70",name:"South Cotabato"},{code:"RP59",name:"Southern Leyte"},{code:"RP71",name:"Sultan Kudarat"},{code:"RP60",name:"Sulu"},{code:"RP61",name:"Surigao del Norte"},{code:"RP62",name:"Surigao del Sur"},{code:"RPO3",name:"Tarlac"},{code:"RPO4",name:"Tawi-Tawi"},{code:"RPP1",name:"Zambales"},{code:"RPG7",name:"Zamboanga del Norte"},{code:"RP65",name:"Zamboanga del Sur"},{code:"RP66",name:"Zamboanga-Sibugay"}]},{code:"PN",id:2431,name:"Pitcairn",states:[]},{code:"PL",id:2320,name:"Poland",states:[{code:"PL-DS",name:"Dolnoslaskie"},{code:"PL-KP",name:"Kujawsko-pomorskie"},{code:"PL-LD",name:"Lódzkie"},{code:"PL-LU",name:"Lubelskie"},{code:"PL-LB",name:"Lubuskie"},{code:"PL-MA",name:"Malopolskie"},{code:"PL-MZ",name:"Mazowieckie"},{code:"PL-OP",name:"Opolskie"},{code:"PL-PK",name:"Podkarpackie"},{code:"PL-PD",name:"Podlaskie"},{code:"PL-PM",name:"Pomorskie"},{code:"PL-SL",name:"Slaskie"},{code:"PL-SK",name:"Swietokrzyskie"},{code:"PL-WN",name:"Warminsko-mazurskie"},{code:"PL-WP",name:"Wielkopolskie"}]},{code:"PT",id:2321,name:"Portugal",states:[{code:"PO23",name:"Acores Autonomous"},{code:"PO02",name:"Aveiro"},{code:"PO03",name:"Beja"},{code:"PO04",name:"Braga"},{code:"PO05",name:"Braganca"},{code:"PO06",name:"Castelo Branco"},{code:"PO07",name:"Coimbra"},{code:"PO08",name:"Evora"},{code:"PO09",name:"Faro"},{code:"PO11",name:"Guarda"},{code:"PO13",name:"Leiria"},{code:"PO14",name:"Lisboa"},{code:"PO10",name:"Madeira Autonomous"},{code:"PO16",name:"Portalegre"},{code:"PO17",name:"Porto"},{code:"PO18",name:"Santarem"},{code:"PO19",name:"Setubal"},{code:"PO20",name:"Viana do Castelo"},{code:"PO21",name:"Vila Real"},{code:"PO22",name:"Viseu"}]},{code:"PR",id:2374,name:"Puerto Rico",states:[{code:"PR.AJ",name:"Adjuntas"},{code:"PR.AD",name:"Aguada"},{code:"PR.AL",name:"Aguadilla"},{code:"PR.AB",name:"Aguas Buenas"},{code:"PR.AI",name:"Aibonito"},{code:"PR.AN",name:"Añasco"},{code:"PR.AC",name:"Arecibo"},{code:"PR.AR",name:"Arroyo"},{code:"PR.BC",name:"Barceloneta"},{code:"PR.BQ",name:"Barranquitas"},{code:"PR.BY",name:"Bayamón"},{code:"PR.CR",name:"Cabo Rojo"},{code:"PR.CG",name:"Caguas"},{code:"PR.CA",name:"Camuy"},{code:"PR.CV",name:"Canóvanas"},{code:"PR.CN",name:"Carolina"},{code:"PR.CT",name:"Cataño"},{code:"PR.CY",name:"Cayey"},{code:"PR.CB",name:"Ceiba"},{code:"PR.CL",name:"Ciales"},{code:"PR.CD",name:"Cidra"},{code:"PR.CO",name:"Coamo"},{code:"PR.CM",name:"Comerío"},{code:"PR.CZ",name:"Corozal"},{code:"PR.CU",name:"Culebra"},{code:"PR.DO",name:"Dorado"},{code:"PR.FJ",name:"Fajardo"},{code:"PR.FL",name:"Florida"},{code:"PR.GC",name:"Guánica"},{code:"PR.GM",name:"Guayama"},{code:"PR.GL",name:"Guayanilla"},{code:"PR.GB",name:"Guaynabo"},{code:"PR.GR",name:"Gurabo"},{code:"PR.HA",name:"Hatillo"},{code:"PR.HO",name:"Hormigueros"},{code:"PR.HU",name:"Humacao"},{code:"PR.IS",name:"Isabela"},{code:"PR.JY",name:"Jayuya"},{code:"PR.JD",name:"Juana Díaz"},{code:"PR.JC",name:"Juncos"},{code:"PR.LJ",name:"Lajas"},{code:"PR.LR",name:"Lares"},{code:"PR.LM",name:"Las Marías"},{code:"PR.LP",name:"Las Piedras"},{code:"PR.LZ",name:"Loíza"},{code:"PR.LQ",name:"Luquillo"},{code:"PR.MT",name:"Manatí"},{code:"PR.MR",name:"Maricao"},{code:"PR.MB",name:"Maunabo"},{code:"PR.MG",name:"Mayagüez"},{code:"PR.MC",name:"Moca"},{code:"PR.MV",name:"Morovis"},{code:"PR.NG",name:"Naguabo"},{code:"PR.NR",name:"Naranjito"},{code:"PR.OR",name:"Orocovis"},{code:"PR.PT",name:"Patillas"},{code:"PR.PN\t",name:"Peñuelas"},{code:"PR.PO",name:"Ponce"},{code:"PR.QB",name:"Quebradillas"},{code:"PR.RC",name:"Rincón"},{code:"PR.RG",name:"Río Grande"},{code:"PR.SB",name:"Sabana Grande"},{code:"PR.SA",name:"Salinas"},{code:"PR.SG",name:"San Germán"},{code:"PR.SJ",name:"San Juan"},{code:"PR.SL",name:"San Lorenzo"},{code:"PR.SS",name:"San Sebastián"},{code:"PR.SI",name:"Santa Isabel"},{code:"PR.TA",name:"Toa Alta"},{code:"PR.TB",name:"Toa Baja"},{code:"PR.TJ",name:"Trujillo Alto"},{code:"PR.UT",name:"Utuado"},{code:"PR.VA",name:"Vega Alta"},{code:"PR.VB",name:"Vega Baja"},{code:"PR.VQ",name:"Vieques"},{code:"PR.VL",name:"Villalba"},{code:"PR.YB",name:"Yabucoa"},{code:"PR.YU",name:"Yauco"}]},{code:"QA",id:2322,name:"Qatar",states:[{code:"QA01",name:"Ad Dawhah"},{code:"QA13",name:"Al Daayen"},{code:"QA04",name:"Al Khawr"},{code:"QA10",name:"Al Wakrah"},{code:"QA14",name:"Al-Shahaniya"},{code:"QA06",name:"Ar Rayyan"},{code:"QA08",name:"Madinat ach Shamal"},{code:"QA09",name:"Umm Salal"}]},{code:"R999",id:2398,name:"Reunion",states:[]},{code:"RO",id:2323,name:"Romania",states:[{code:"RO-AB",name:"Alba"},{code:"RO-AR",name:"Arad"},{code:"RO-AG",name:"Arges"},{code:"RO-BC",name:"Bacau"},{code:"RO-BH",name:"Bihor"},{code:"RO-BN",name:"Bistrita-Nasaud"},{code:"RO-BT",name:"Botosani"},{code:"RO-BR",name:"Braila"},{code:"RO-BV",name:"Brasov"},{code:"RO-B",name:"Bucuresti"},{code:"RO-BZ",name:"Buzau"},{code:"RO-CL",name:"Calarasi"},{code:"RO-CS",name:"Caras-Severin"},{code:"RO-CJ",name:"Cluj"},{code:"RO-CT",name:"Constanta"},{code:"RO-CV",name:"Covasna"},{code:"RO-DB",name:"Dâmbovita"},{code:"RO-DJ",name:"Dolj"},{code:"RO-GL",name:"Galati"},{code:"RO-GR",name:"Giurgiu"},{code:"RO-GJ",name:"Gorj"},{code:"RO-HR",name:"Harghita"},{code:"RO-HD",name:"Hunedoara"},{code:"RO-IL",name:"Ialomita"},{code:"RO-IS",name:"Iasi"},{code:"RO-IF",name:"Ilfov"},{code:"RO-MM",name:"Maramures"},{code:"RO-MH",name:"Mehedinti"},{code:"RO-MS",name:"Mures"},{code:"RO-NT",name:"Neamt"},{code:"RO-OT",name:"Olt"},{code:"RO-PH",name:"Prahova"},{code:"RO-SJ",name:"Salaj"},{code:"RO-SM",name:"Satu Mare"},{code:"RO-SB",name:"Sibiu"},{code:"RO-SV",name:"Suceava"},{code:"RO-TR",name:"Teleorman"},{code:"RO-TM",name:"Timis"},{code:"RO-TL",name:"Tulcea"},{code:"RO-VL",name:"Vâlcea"},{code:"RO-VS",name:"Vaslui"},{code:"RO-VN",name:"Vrancea"}]},{code:"RU",id:2324,name:"Russian Federation",states:[{code:"RS01",name:"Adygeya Republic"},{code:"RS02",name:"Aginskiy Buryatskiy Avtonomnyy Okrug"},{code:"RS03",name:"Altay Republic"},{code:"RS04",name:"Altayskiy Kray"},{code:"RS05",name:"Amurskaya Oblast'"},{code:"RS06",name:"Arkhangel'skaya Oblast'"},{code:"RS07",name:"Astrakhanskaya Oblast'"},{code:"RS08",name:"Bashkortostan Republic"},{code:"RS09",name:"Belgorodskaya Oblast'"},{code:"RS10",name:"Bryanskaya Oblast'"},{code:"RS11",name:"Buryatiya Republic"},{code:"RSCI",name:"Chechnya Republic"},{code:"RS13",name:"Chelyabinskaya Oblast'"},{code:"RS14",name:"Chitinskaya Oblast'"},{code:"RS15",name:"Chukotskiy Avtonomnyy Okrug"},{code:"RS16",name:"Chuvashiya Republic"},{code:"RS17",name:"Dagestan Republic"},{code:"RS18",name:"Evenkiyskiy Avtonomnyy Okrug"},{code:"RS20",name:"Irkutskaya Oblast'"},{code:"RS21",name:"Ivanovskaya Oblast'"},{code:"RS22",name:"Kabardino-Balkariya Republic"},{code:"RS23",name:"Kaliningradskaya Oblast'"},{code:"RS24",name:"Kalmykiya Republic"},{code:"RS25",name:"Kaluzhskaya Oblast'"},{code:"RS26",name:"Kamchatskaya Oblast'"},{code:"RS27",name:"Karachayevo-Cherkesiya Republic"},{code:"RS28",name:"Kareliya Republic"},{code:"RS29",name:"Kemerovskaya Oblast'"},{code:"RS30",name:"Khabarovskiy Kray"},{code:"RS31",name:"Khakasiya Republic"},{code:"RS32",name:"Khanty-Mansiyskiy Avtonomnyy Okrug"},{code:"RS33",name:"Kirovskaya Oblast'"},{code:"RS34",name:"Komi Republic"},{code:"RS36",name:"Koryakskiy Avtonomnyy Okrug"},{code:"RS37",name:"Kostromskaya Oblast'"},{code:"RS38",name:"Krasnodarskiy Kray"},{code:"RS39",name:"Krasnoyarskiy Kray"},{code:"RS40",name:"Kurganskaya Oblast'"},{code:"RS41",name:"Kurskaya Oblast'"},{code:"RS42",name:"Leningradskaya Oblast'"},{code:"RS43",name:"Lipetskaya Oblast'"},{code:"RS44",name:"Magadanskaya Oblast'"},{code:"RS45",name:"Mariy-El Republic"},{code:"RS46",name:"Mordoviya Republic"},{code:"RS47",name:"Moskovskaya Oblast'"},{code:"RS48",name:"Moskva Federal City"},{code:"RS49",name:"Murmanskaya Oblast'"},{code:"RS50",name:"Nenetskiy Avtonomnyy Okrug"},{code:"RS51",name:"Nizhegorodskaya Oblast'"},{code:"RS52",name:"Novgorodskaya Oblast'"},{code:"RS53",name:"Novosibirskaya Oblast'"},{code:"RS54",name:"Omskaya Oblast'"},{code:"RS55",name:"Orenburgskaya Oblast'"},{code:"RS56",name:"Orlovskaya Oblast'"},{code:"RS57",name:"Penzenskaya Oblast'"},{code:"RS90",name:"Permskiy Kray"},{code:"RS59",name:"Primorskiy Kray"},{code:"RS60",name:"Pskovskaya Oblast'"},{code:"RS61",name:"Rostovskaya Oblast'"},{code:"RS62",name:"Ryazanskaya Oblast'"},{code:"RS63",name:"Sakha (Yakutiya) Republic"},{code:"RS64",name:"Sakhalinskaya Oblast'"},{code:"RS65",name:"Samarskaya Oblast'"},{code:"RS66",name:"Sankt-Peterburg Federal City"},{code:"RS67",name:"Saratovskaya Oblast'"},{code:"RS68",name:"Severnaya Osetiya-Alaniya Respublika"},{code:"RS69",name:"Smolenskaya Oblast'"},{code:"RS70",name:"Stavropol'skiy Kray"},{code:"RS71",name:"Sverdlovskaya Oblast'"},{code:"RS72",name:"Tambovskaya Oblast'"},{code:"RS73",name:"Tatarstan Republic"},{code:"RS74",name:"Taymyrskiy (Dolgano-Nenetskiy) Avtonomnyy Okrug"},{code:"RS75",name:"Tomskaya Oblast'"},{code:"RS76",name:"Tul'skaya Oblast'"},{code:"RS77",name:"Tverskaya Oblast'"},{code:"RS78",name:"Tyumenskaya Oblast'"},{code:"RS79",name:"Tyva Republic"},{code:"RS80",name:"Udmurtiya Republic"},{code:"RS81",name:"Ul'yanovskaya Oblast'"},{code:"RS82",name:"Ust'-Ordynskiy Buryatskiy Avtonomnyy Okrug"},{code:"RS83",name:"Vladimirskaya Oblast'"},{code:"RS84",name:"Volgogradskaya Oblast'"},{code:"RS85",name:"Vologodskaya Oblast'"},{code:"RS86",name:"Voronezhskaya Oblast'"},{code:"RS87",name:"Yamalo-Nenetskiy Avtonomnyy Okrug"},{code:"RS88",name:"Yaroslavskaya Oblast'"},{code:"RS89",name:"Yevreyskaya Avtonomnaya Oblast'"}]},{code:"RW",id:2325,name:"Rwanda",states:[{code:"RW11",name:"Eastern"},{code:"RW12",name:"Kigali City"},{code:"RW13",name:"Northern"},{code:"RW15",name:"Southern"},{code:"RW14",name:"Western"}]},{code:"BL",id:2432,name:"Saint Barthélemy",states:[]},{code:"SH",id:2433,name:"Saint Helena; Ascension and Tristan Da Cunha",states:[]},{code:"KN",id:2399,name:"Saint Kitts and Nevis",states:[]},{code:"LC",id:2326,name:"Saint Lucia",states:[]},{code:"MF",id:2434,name:"Saint Martin",states:[{code:"MF.SM",name:"Saint Martin"}]},{code:"PM",id:2435,name:"Saint Pierre And Miquelon",states:[]},{code:"VC",id:2400,name:"Saint Vincent and Grenadines",states:[]},{code:"WS",id:2401,name:"Samoa",states:[{code:"WS01",name:"A'ana"},{code:"WS02",name:"Aiga-i-le-Tai"},{code:"WS03",name:"Atua"},{code:"WS04",name:"Fa'asaleleaga"},{code:"WS05",name:"Gaga'emauga"},{code:"WS07",name:"Gagaifomauga"},{code:"WS08",name:"Palauli"},{code:"WS09",name:"Satupa'itea"},{code:"WS10",name:"Tuamasaga"},{code:"WS06",name:"Va'a-o-Fonoti"},{code:"WS11",name:"Vaisigano"}]},{code:"SM",id:2327,name:"San Marino",states:[]},{code:"TP",id:2403,name:"Sao Tome and Principe",states:[]},{code:"SA",id:2328,name:"Saudi Arabia",states:[{code:"SA02",name:"Al Bahah"},{code:"SA15",name:"Al Hudud ash Shamaliyah"},{code:"SA20",name:"Al Jawf"},{code:"SA05",name:"Al Madinah"},{code:"SA08",name:"Al Qasim"},{code:"SA10",name:"Ar Riyad"},{code:"SA06",name:"Ash Sharqiyah"},{code:"SA11",name:"Asir"},{code:"SA13",name:"Ha'il"},{code:"SA17",name:"Jizan"},{code:"SA14",name:"Makkah"},{code:"SA16",name:"Najran"},{code:"SA19",name:"Tabuk"}]},{code:"SN",id:2329,name:"Senegal",states:[{code:"SG01",name:"Dakar"},{code:"SG03",name:"Diourbel"},{code:"SG09",name:"Fatick"},{code:"SG16",name:"Kaffrine"},{code:"SG10",name:"Kaolack"},{code:"SG17",name:"Kédougou"},{code:"SG11",name:"Kolda"},{code:"SG13",name:"Louga"},{code:"SG15",name:"Matam"},{code:"SG14",name:"Saint-Louis"},{code:"SG18",name:"Sédhiou"},{code:"SG05",name:"Tambacounda"},{code:"SG07",name:"Thiès"},{code:"SG12",name:"Ziguinchor"}]},{code:"RI",id:2402,name:"Serbia",states:[{code:"RS-00",name:"Belgrade"},{code:"RS-14",name:"Borski okrug"},{code:"RS-11",name:"Branicevski okrug"},{code:"RS-23",name:"Jablanicki okrug"},{code:"RS-06",name:"Južnobanatski okrug"},{code:"RS-04",name:"Južnobanatski okrug"},{code:"RS-09",name:"Kolubarski okrug"},{code:"RS-25",name:"Kosovski okrug"},{code:"RS-28",name:"Kosovsko-Mitrovacki okrug"},{code:"RS-29",name:"Kosovsko-Pomoravski okrug"},{code:"RS-08",name:"Macvanski okrug"},{code:"RS-17",name:"Moravicki okrug"},{code:"RS-20",name:"Nišavski okrug"},{code:"RS-24",name:"Pcinjski okrug"},{code:"RS-26",name:"Pecki okrug"},{code:"RS-22",name:"Pirotski okrug"},{code:"RS-10",name:"Podunavski okrug"},{code:"RS-13",name:"Pomoravski okrug"},{code:"RS-27",name:"Prizrenski okrug"},{code:"RS-19",name:"Rasinski okrug"},{code:"RS-18",name:"Raška okrug"},{code:"RS-01",name:"Severnobacki okrug"},{code:"RS-03",name:"Severnobanatski okrug"},{code:"RS-02",name:"Srednjebanatski okrug"},{code:"RS-07",name:"Sremski okrug"},{code:"RS-12",name:"Šumadijski okrug"},{code:"RS-21",name:"Toplièki okrug"},{code:"RS-15",name:"Zajeèarski okrug"},{code:"RS-05",name:"Zapadnobaèki okrug"},{code:"RS-16",name:"Zlatiborski okrug"}]},{code:"SC",id:2331,name:"Seychelles",states:[]},{code:"SL",id:2332,name:"Sierra Leone",states:[{code:"SL01",name:"Eastern"},{code:"SL02",name:"Northern"},{code:"SL03",name:"Southern"},{code:"SL04",name:"Western"}]},{code:"SG",id:2333,name:"Singapore",states:[{code:"SG01",name:"Central Singapore"},{code:"SG02",name:"North East"},{code:"SG03",name:"North West"},{code:"SG04",name:"South East"},{code:"SG05",name:"South West"}]},{code:"SX",id:2448,name:"Sint Maarten",states:[{code:"SX.SM",name:"Sint Maarten"}]},{code:"SK",id:2334,name:"Slovakia",states:[{code:"SK-BC",name:"Banskobystrický kraj"},{code:"SK-BL",name:"Bratislavský kraj"},{code:"SK-KI",name:"Košický kraj"},{code:"SK-NI",name:"Nitriansky kraj"},{code:"SK-PV",name:"Prešovský kraj"},{code:"SK-TC",name:"Trenciansky kraj"},{code:"SK-TA",name:"Trnavský kraj"},{code:"SK-ZI",name:"Žilinský kraj"}]},{code:"SI",id:2335,name:"Slovenia",states:[{code:"SI-001",name:"Ajdovšcina"},{code:"SI-195",name:"Apace"},{code:"SI-002",name:"Beltinci"},{code:"SI-148",name:"Benedikt"},{code:"SI-149",name:"Bistrica ob Sotli"},{code:"SI-003",name:"Bled"},{code:"SI-150",name:"Bloke"},{code:"SI-004",name:"Bohinj"},{code:"SI-005",name:"Borovnica"},{code:"SI-006",name:"Bovec"},{code:"SI-151",name:"Braslovce"},{code:"SI-007",name:"Brda"},{code:"SI-009",name:"Brežice"},{code:"SI-008",name:"Brezovica"},{code:"SI-152",name:"Cankova"},{code:"SI-011",name:"Celje"},{code:"SI-012",name:"Cerklje na Gorenjskem"},{code:"SI-013",name:"Cerknica"},{code:"SI-014",name:"Cerkno"},{code:"SI-153",name:"Cerkvenjak"},{code:"SI-197",name:"Cirkulane"},{code:"SI-015",name:"Crenšovci"},{code:"SI-016",name:"Crna na Koroškem"},{code:"SI-017",name:"Crnomelj"},{code:"SI-018",name:"Destrnik"},{code:"SI-019",name:"Divaca"},{code:"SI-154",name:"Dobje"},{code:"SI-020",name:"Dobrepolje"},{code:"SI-155",name:"Dobrna"},{code:"SI-021",name:"Dobrova-Polhov Gradec"},{code:"SI-156",name:"Dobrovnik/Dobronak"},{code:"SI-022",name:"Dol pri Ljubljani"},{code:"SI-157",name:"Dolenjske Toplice"},{code:"SI-023",name:"Domžale"},{code:"SI-024",name:"Dornava"},{code:"SI-025",name:"Dravograd"},{code:"SI-026",name:"Duplek"},{code:"SI-027",name:"Gorenja vas-Poljane"},{code:"SI-028",name:"Gorišnica"},{code:"SI-207",name:"Gorje"},{code:"SI-029",name:"Gornja Radgona"},{code:"SI-030",name:"Gornji Grad"},{code:"SI-031",name:"Gornji Petrovci"},{code:"SI-158",name:"Grad"},{code:"SI-032",name:"Grosuplje"},{code:"SI-159",name:"Hajdina"},{code:"SI-160",name:"Hoce-Slivnica"},{code:"SI-161",name:"Hodoš/Hodos"},{code:"SI-162",name:"Horjul"},{code:"SI-034",name:"Hrastnik"},{code:"SI-035",name:"Hrpelje-Kozina"},{code:"SI-036",name:"Idrija"},{code:"SI-037",name:"Ig"},{code:"SI-038",name:"Ilirska Bistrica"},{code:"SI-039",name:"Ivancna Gorica"},{code:"SI-040",name:"Izola/Isola"},{code:"SI-041",name:"Jesenice"},{code:"SI-163",name:"Jezersko"},{code:"SI-042",name:"Juršinci"},{code:"SI-043",name:"Kamnik"},{code:"SI-044",name:"Kanal"},{code:"SI-045",name:"Kidricevo"},{code:"SI-046",name:"Kobarid"},{code:"SI-047",name:"Kobilje"},{code:"SI-048",name:"Kocevje"},{code:"SI-049",name:"Komen"},{code:"SI-164",name:"Komenda"},{code:"SI-050",name:"Koper/Capodistria"},{code:"SI-196",name:"Kosanjevica na Krki"},{code:"SI-165",name:"Kostel"},{code:"SI-051",name:"Kozje"},{code:"SI-052",name:"Kranj"},{code:"SI-053",name:"Kranjska Gora"},{code:"SI-166",name:"Križevci"},{code:"SI-054",name:"Krško"},{code:"SI-055",name:"Kungota"},{code:"SI-056",name:"Kuzma"},{code:"SI-057",name:"Laško"},{code:"SI-058",name:"Lenart"},{code:"SI-059",name:"Lendava/Lendva"},{code:"SI-060",name:"Litija"},{code:"SI-061",name:"Ljubljana"},{code:"SI-062",name:"Ljubno"},{code:"SI-063",name:"Ljutomer"},{code:"SI-208",name:"Log-Dragomer"},{code:"SI-064",name:"Logatec"},{code:"SI-065",name:"Loška dolina"},{code:"SI-066",name:"Loški Potok"},{code:"SI-167",name:"Lovrenc na Pohorju"},{code:"SI-067",name:"Luce"},{code:"SI-068",name:"Lukovica"},{code:"SI-069",name:"Majšperk"},{code:"SI-198",name:"Makole"},{code:"SI-070",name:"Maribor"},{code:"SI-168",name:"Markovci"},{code:"SI-071",name:"Medvode"},{code:"SI-072",name:"Mengeš"},{code:"SI-073",name:"Metlika"},{code:"SI-074",name:"Mežica"},{code:"SI-169",name:"Miklavž na Dravskem polju"},{code:"SI-075",name:"Miren-Kostanjevica"},{code:"SI-170",name:"Mirna Pec"},{code:"SI-076",name:"Mislinja"},{code:"SI-199",name:"Mokronog-Trebelno"},{code:"SI-077",name:"Moravce"},{code:"SI-078",name:"Moravske Toplice"},{code:"SI-079",name:"Mozirje"},{code:"SI-080",name:"Murska Sobota"},{code:"SI-081",name:"Muta"},{code:"SI-082",name:"Naklo"},{code:"SI-083",name:"Nazarje"},{code:"SI-084",name:"Nova Gorica"},{code:"SI-085",name:"Novo mesto"},{code:"SI-086",name:"Odranci"},{code:"SI-171",name:"Oplotnica"},{code:"SI-087",name:"Ormož"},{code:"SI-088",name:"Osilnica"},{code:"SI-089",name:"Pesnica"},{code:"SI-090",name:"Piran/Pirano"},{code:"SI-091",name:"Pivka"},{code:"SI-092",name:"Podcetrtek"},{code:"SI-172",name:"Podlehnik"},{code:"SI-093",name:"Podvelka"},{code:"SI-200",name:"Poljcane"},{code:"SI-173",name:"Polzela"},{code:"SI-094",name:"Postojna"},{code:"SI-174",name:"Prebold"},{code:"SI-095",name:"Preddvor"},{code:"SI-175",name:"Prevalje"},{code:"SI-096",name:"Ptuj"},{code:"SI-097",name:"Puconci"},{code:"SI-098",name:"Race-Fram"},{code:"SI-099",name:"Radece"},{code:"SI-100",name:"Radenci"},{code:"SI-101",name:"Radlje ob Dravi"},{code:"SI-102",name:"Radovljica"},{code:"SI-103",name:"Ravne na Koroškem"},{code:"SI-176",name:"Razkrižje"},{code:"SI-209",name:"Recica ob Savinji"},{code:"SI-201",name:"Rence-Vogrsko"},{code:"SI-177",name:"Ribnica na Pohorju"},{code:"SI-104",name:"Ribnica"},{code:"SI-106",name:"Rogaška Slatina"},{code:"SI-105",name:"Rogašovci"},{code:"SI-107",name:"Rogatec"},{code:"SI-108",name:"Ruše"},{code:"SI-033",name:"Šalovci"},{code:"SI-178",name:"Selnica ob Dravi"},{code:"SI-109",name:"Semic"},{code:"SI-183",name:"Šempeter-Vrtojba"},{code:"SI-117",name:"Šencur"},{code:"SI-118",name:"Šentilj"},{code:"SI-119",name:"Šentjernej"},{code:"SI-120",name:"Šentjur pri Celju"},{code:"SI-211",name:"Šentrupert"},{code:"SI-110",name:"Sevnica"},{code:"SI-111",name:"Sežana"},{code:"SI-121",name:"Škocjan"},{code:"SI-122",name:"Škofja Loka"},{code:"SI-123",name:"Škofljica"},{code:"SI-112",name:"Slovenj Gradec"},{code:"SI-113",name:"Slovenska Bistrica"},{code:"SI-114",name:"Slovenske Konjice"},{code:"SI-124",name:"Šmarje pri Jelšah"},{code:"SI-206",name:"Šmarješke Toplice"},{code:"SI-125",name:"Šmartno ob Paki"},{code:"SI-194",name:"Šmartno pri Litiji"},{code:"SI-194",name:"Šmartno pri Litiji"},{code:"SI-179",name:"Sodražica"},{code:"SI-180",name:"Solcava"},{code:"SI-126",name:"Šoštanj"},{code:"SI-202",name:"Središce ob Dravi"},{code:"SI-115",name:"Starše"},{code:"SI-127",name:"Štore"},{code:"SI-203",name:"Straža"},{code:"SI-181",name:"Sveta Ana"},{code:"SI-204",name:"Sveta Trojica v Slovenskih Goricah"},{code:"SI-182",name:"Sveti Andraž v Slovenskih goricah"},{code:"SI-116",name:"Sveti Jurij"},{code:"SI-210",name:"Sveti Jurij v Slovenskih Goricah"},{code:"SI-205",name:"Sveti Tomaž"},{code:"SI-184",name:"Tabor"},{code:"SI-010",name:"Tišina"},{code:"SI-128",name:"Tolmin"},{code:"SI-129",name:"Trbovlje"},{code:"SI-130",name:"Trebnje"},{code:"SI-185",name:"Trnovska vas"},{code:"SI-131",name:"Tržic"},{code:"SI-186",name:"Trzin"},{code:"SI-132",name:"Turnišce"},{code:"SI-133",name:"Velenje"},{code:"SI-187",name:"Velika Polana"},{code:"SI-134",name:"Velike Lašce"},{code:"SI-188",name:"Veržej"},{code:"SI-135",name:"Videm"},{code:"SI-136",name:"Vipava"},{code:"SI-137",name:"Vitanje"},{code:"SI-138",name:"Vodice"},{code:"SI-139",name:"Vojnik"},{code:"SI-189",name:"Vransko"},{code:"SI-140",name:"Vrhnika"},{code:"SI-141",name:"Vuzenica"},{code:"SI-142",name:"Zagorje ob Savi"},{code:"SI-190",name:"Žalec"},{code:"SI-143",name:"Zavrc"},{code:"SI-146",name:"Železniki"},{code:"SI-191",name:"Žetale"},{code:"SI-147",name:"Žiri"},{code:"SI-192",name:"Žirovnica"},{code:"SI-144",name:"Zrece"},{code:"SI-193",name:"Žužemberk"}]},{code:"SB",id:2336,name:"Solomon Islands",states:[]},{code:"SO",id:2337,name:"Somalia",states:[{code:"SO21",name:"Awdal"},{code:"SO01",name:"Bakool"},{code:"SO02",name:"Banaadir"},{code:"SO03",name:"Bari"},{code:"SO04",name:"Bay"},{code:"SO05",name:"Galguduud"},{code:"SO06",name:"Gedo"},{code:"SO07",name:"Hiiraan"},{code:"SO08",name:"Jubbada Dhexe"},{code:"SO09",name:"Jubbada Hoose"},{code:"SO10",name:"Mudug"},{code:"SO18",name:"Nugaal"},{code:"SO12",name:"Sanaag"},{code:"SO13",name:"Shabeellaha Dhexe"},{code:"SO14",name:"Shabeellaha Hoose"},{code:"SO22",name:"Sool"},{code:"SO19",name:"Togdheer"},{code:"SO20",name:"Woqooyi Galbeed"}]},{code:"ZA",id:2338,name:"South Africa",states:[{code:"SF01",name:"Cape Province"},{code:"SF05",name:"Eastern Cape"},{code:"SF03",name:"Free State"},{code:"SF06",name:"Gauteng"},{code:"SF02",name:"KwaZulu-Natal"},{code:"SF09",name:"Limpopo"},{code:"SF07",name:"Mpumalanga"},{code:"SF10",name:"North-West"},{code:"SF08",name:"Northern Cape"},{code:"SF04",name:"Transvaal"},{code:"SF11",name:"Western Cape"}]},{code:"GS",id:2436,name:"South Georgia and the South Sandwich Islands",states:[]},{code:"SS",id:2447,name:"South Sudan",states:[{code:"OD01",name:"Central Equatoria"},{code:"OD02",name:"East Equatoria"},{code:"OD03",name:"Jungoli"},{code:"OD04",name:"Lakes"},{code:"OD05",name:"North Bahr-al-Ghazal"},{code:"OD06",name:"Unity"},{code:"OD07",name:"Upper Nile"},{code:"OD08",name:"Warap"},{code:"OD09",name:"West Bahr-al-Ghazal"},{code:"OD10",name:"West Equatoria"}]},{code:"ES",id:2339,name:"Spain",states:[{code:"SP23",name:"A Coruña"},{code:"SP01",name:"Alava"},{code:"SP02",name:"Albacete"},{code:"SP03",name:"Alicante"},{code:"SP04",name:"Almeria"},{code:"SP51",name:"Andalucia"},{code:"SP52",name:"Aragon"},{code:"SP34",name:"Asturias"},{code:"SP05",name:"Avila"},{code:"SP06",name:"Badajoz"},{code:"SP08",name:"Barcelona"},{code:"SP09",name:"Burgos"},{code:"SP10",name:"Caceres"},{code:"SP11",name:"Cadiz"},{code:"SP53",name:"Canarias"},{code:"SP39",name:"Cantabria"},{code:"SP12",name:"Castellon"},{code:"SP55",name:"Castilla y Leon"},{code:"SP54",name:"Castilla-La Mancha"},{code:"SP56",name:"Cataluna"},{code:"SP13",name:"Ciudad Real"},{code:"SP14",name:"Cordoba"},{code:"SP15",name:"Cuenca"},{code:"SP57",name:"Extremadura"},{code:"SP58",name:"Galicia"},{code:"SP16",name:"Gerona"},{code:"SP17",name:"Granada"},{code:"SP18",name:"Guadalajara"},{code:"SP19",name:"Guipuzcoa"},{code:"SP20",name:"Huelva"},{code:"SP21",name:"Huesca"},{code:"SP07",name:"Islas Baleares"},{code:"SP22",name:"Jaen"},{code:"SP23",name:"La Coruna"},{code:"SP27",name:"La Rioja"},{code:"SP24",name:"Las Palmas"},{code:"SP25",name:"Leon"},{code:"SP26",name:"Lerida"},{code:"SP28",name:"Lugo"},{code:"SP29",name:"Madrid"},{code:"SP30",name:"Malaga"},{code:"SP31",name:"Murcia"},{code:"SP32",name:"Navarra"},{code:"SP33",name:"Orense"},{code:"SP59",name:"Pais Vasco"},{code:"SP35",name:"Palencia"},{code:"SP36",name:"Pontevedra"},{code:"SP37",name:"Salamanca"},{code:"SP38",name:"Santa Cruz de Tenerife"},{code:"SP40",name:"Segovia"},{code:"SP41",name:"Sevilla"},{code:"SP42",name:"Soria"},{code:"SP43",name:"Tarragona"},{code:"SP44",name:"Teruel"},{code:"SP45",name:"Toledo"},{code:"SP46",name:"Valencia"},{code:"SP60",name:"Valenciana"},{code:"SP47",name:"Valladolid"},{code:"SP48",name:"Vizcaya"},{code:"SP49",name:"Zamora"},{code:"SP50",name:"Zaragoza"}]},{code:"LK",id:2340,name:"Sri Lanka",states:[]},{code:"SD",id:2341,name:"Sudan",states:[{code:"SU42",name:"Blue Nile"},{code:"SU61",name:"Central Darfur"},{code:"SU60",name:"East Darfur"},{code:"SU39",name:"Gedarif"},{code:"SU38",name:"Gezira"},{code:"SU52",name:"Kassala"},{code:"SU29",name:"Khartoum"},{code:"SU55",name:"North Darfur"},{code:"SU56",name:"North Kordofan"},{code:"SU43",name:"Northern"},{code:"SU36",name:"Red Sea"},{code:"SU53",name:"River Nile"},{code:"SU58",name:"Sennar"},{code:"SU49",name:"South Darfur"},{code:"SU50",name:"South Kordofan"},{code:"SU47",name:"West Darfur"},{code:"SU62",name:"West Kordofan"},{code:"SU41",name:"White Nile"}]},{code:"SR",id:2342,name:"Suriname",states:[{code:"NS10",name:"Brokopondo"},{code:"NS11",name:"Commewijne"},{code:"NS12",name:"Coronie"},{code:"NS13",name:"Marowijne"},{code:"NS14",name:"Nickerie"},{code:"NS16",name:"Paramaribo"},{code:"NS15",name:"Para"},{code:"NS17",name:"Saramacca"},{code:"NS18",name:"Sipaliwini"},{code:"NS19",name:"Wanica"}]},{code:"SJ",id:2437,name:"Svalbard And Jan Mayen",states:[]},{code:"SZ",id:2343,name:"Swaziland",states:[{code:"WZ01",name:"Hhohho"},{code:"WZ02",name:"Lubombo"},{code:"WZ03",name:"Manzini"},{code:"WZ04",name:"Shiselweni"}]},{code:"SE",id:2344,name:"Sweden",states:[{code:"SE-K",name:"Blekinge län"},{code:"SE-W",name:"Dalarnas län"},{code:"SE-X",name:"Gävleborgs län"},{code:"SE-I",name:"Gotlands län"},{code:"SE-N",name:"Hallands län"},{code:"SE-Z",name:"Jämtlands län"},{code:"SE-F",name:"Jönköpings län"},{code:"SE-H",name:"Kalmar län"},{code:"SE-G",name:"Kronobergs län"},{code:"SE-BD",name:"Norrbottens län"},{code:"SE-M",name:"Skåne län"},{code:"SE-D",name:"Södermanlands län"},{code:"SE-AB",name:"Stockholms län"},{code:"SE-C",name:"Uppsala län"},{code:"SE-S",name:"Värmlands län"},{code:"SE-AC",name:"Västerbottens län"},{code:"SE-Y",name:"Västernorrlands län"},{code:"SE-U",name:"Västmanlands län"},{code:"SE-O",name:"Västra Götalands län"},{code:"SE-T",name:"Örebro län"},{code:"SE-E",name:"Östergötlands län"}]},{code:"CH",id:2345,name:"Switzerland",states:[{code:"AG",name:"Aargau"},{code:"AR",name:"Appenzell Ausserrhoden"},{code:"AI",name:"Appenzell Innerrhoden"},{code:"BL",name:"Basel-Landschaft"},{code:"BS",name:"Basel-Stadt"},{code:"BE",name:"Bern"},{code:"FR",name:"Fribourg"},{code:"GE",name:"Genève"},{code:"GL",name:"Glarus"},{code:"GR",name:"Graubünden"},{code:"JU",name:"Jura"},{code:"LU",name:"Luzern"},{code:"NE",name:"Neuchâtel"},{code:"NW",name:"Nidwalden"},{code:"OW",name:"Obwalden"},{code:"SG",name:"Sankt Gallen"},{code:"SH",name:"Schaffhausen"},{code:"SZ",name:"Schwyz"},{code:"SO",name:"Solothurn"},{code:"TG",name:"Thurgau"},{code:"TI",name:"Ticino"},{code:"UR",name:"Uri"},{code:"VS",name:"Valais"},{code:"VD",name:"Vaud"},{code:"ZG",name:"Zug"},{code:"ZH",name:"Zürich"}]},{code:"SY",id:2381,name:"Syrian Arab Republic",states:[{code:"SY01",name:"Al Hasakah"},{code:"SY09",name:"Aleppo"},{code:"SY04",name:"Ar Raqqah"},{code:"SY05",name:"As Suwayda'"},{code:"SY13",name:"Damascus"},{code:"SY06",name:"Dar`a"},{code:"SY07",name:"Dayr az Zawr"},{code:"SY10",name:"Hama"},{code:"SY11",name:"Hims"},{code:"SY12",name:"Idlib"},{code:"SY02",name:"Latakia"},{code:"SY03",name:"Quneitra"},{code:"SY08",name:"Rif Dimashq"},{code:"SY14",name:"Tartus"}]},{code:"TW",id:2375,name:"Taiwan",states:[{code:"TW02",name:"Kaohsiung"},{code:"TW03",name:"Taipei"}]},{code:"TJ",id:2348,name:"Tajikistan",states:[{code:"TI01",name:"Badakhshoni Kuni"},{code:"TI04",name:"Dushanbe"},{code:"TI02",name:"Khatlon"},{code:"TI05",name:"Regions of Republican Subordination"},{code:"TI03",name:"Sogd"}]},{code:"TZ",id:2349,name:"Tanzania",states:[{code:"TZ26",name:"Arusha"},{code:"TZ23",name:"Dar es Salaam"},{code:"TZ03",name:"Dodoma"},{code:"TZ28",name:"Geita"},{code:"TZ04",name:"Iringa"},{code:"TZ19",name:"Kagera"},{code:"TZ29",name:"Katavi"},{code:"TZ05",name:"Kigoma"},{code:"TZ06",name:"Kilimanjaro"},{code:"TZ07",name:"Lindi"},{code:"TZ27",name:"Manyara"},{code:"TZ08",name:"Mara"},{code:"TZ09",name:"Mbeya"},{code:"TZ10",name:"Morogoro"},{code:"TZ11",name:"Mtwara"},{code:"TZ12",name:"Mwanza"},{code:"TZ30",name:"Njombe"},{code:"TZ13",name:"Pemba North"},{code:"TZ20",name:"Pemba South"},{code:"TZ02",name:"Pwani"},{code:"TZ24",name:"Rukwa"},{code:"TZ14",name:"Ruvuma"},{code:"TZ15",name:"Shinyanga"},{code:"TZ31",name:"Simiyu"},{code:"TZ16",name:"Singida"},{code:"TZ17",name:"Tabora"},{code:"TZ18",name:"Tanga"},{code:"TZ22",name:"Zanzibar North"},{code:"TZ21",name:"Zanzibar South and Central"},{code:"TZ25",name:"Zanzibar West"}]},{code:"TH",id:2350,name:"Thailand",states:[{code:"TH77",name:"Amnat Charoen"},{code:"TH35",name:"Ang Thong"},{code:"TH40",name:"Bangkok Metropolis"},{code:"TH81",name:"Bueng Kan"},{code:"TH28",name:"Buri Ram"},{code:"TH44",name:"Chachoengsao"},{code:"TH32",name:"Chai Nat"},{code:"TH26",name:"Chaiyaphum"},{code:"TH48",name:"Chanthaburi"},{code:"TH02",name:"Chiang Mai"},{code:"TH03",name:"Chiang Rai"},{code:"TH46",name:"Chon Buri"},{code:"TH58",name:"Chumphon"},{code:"TH23",name:"Kalasin"},{code:"TH11",name:"Kamphaeng Phet"},{code:"TH50",name:"Kanchanaburi"},{code:"TH22",name:"Khon Kaen"},{code:"TH63",name:"Krabi"},{code:"TH06",name:"Lampang"},{code:"TH05",name:"Lamphun"},{code:"TH18",name:"Loei"},{code:"TH34",name:"Lop Buri"},{code:"TH01",name:"Mae Hong Son"},{code:"TH24",name:"Maha Sarakham"},{code:"TH78",name:"Mukdahan"},{code:"TH43",name:"Nakhon Nayok"},{code:"TH53",name:"Nakhon Pathom"},{code:"TH73",name:"Nakhon Phanom"},{code:"TH27",name:"Nakhon Ratchasima"},{code:"TH16",name:"Nakhon Sawan"},{code:"TH64",name:"Nakhon Si Thammarat"},{code:"TH04",name:"Nan"},{code:"TH31",name:"Narathiwat"},{code:"TH79",name:"Nong Bua Lam Phu"},{code:"TH17",name:"Nong Khai"},{code:"TH38",name:"Nonthaburi"},{code:"TH39",name:"Pathum Thani"},{code:"TH69",name:"Pattani"},{code:"TH61",name:"Phangnga"},{code:"TH66",name:"Phatthalung"},{code:"TH41",name:"Phayao"},{code:"TH14",name:"Phetchabun"},{code:"TH56",name:"Phetchaburi"},{code:"TH13",name:"Phichit"},{code:"TH12",name:"Phitsanulok"},{code:"TH36",name:"Phra Nakhon Si Ayutthaya"},{code:"TH07",name:"Phrae"},{code:"TH62",name:"Phuket"},{code:"TH74",name:"Prachin Buri"},{code:"TH57",name:"Prachuap Khiri Khan"},{code:"TH59",name:"Ranong"},{code:"TH52",name:"Ratchaburi"},{code:"TH47",name:"Rayong"},{code:"TH25",name:"Roi Et"},{code:"TH80",name:"Sa Kaeo"},{code:"TH20",name:"Sakon Nakhon"},{code:"TH42",name:"Samut Prakan"},{code:"TH55",name:"Samut Sakhon"},{code:"TH54",name:"Samut Songkhram"},{code:"TH37",name:"Saraburi"},{code:"TH67",name:"Satun"},{code:"TH30",name:"Si Sa Ket"},{code:"TH33",name:"Sing Buri"},{code:"TH68",name:"Songkhla"},{code:"TH09",name:"Sukhothai"},{code:"TH51",name:"Suphan Buri"},{code:"TH60",name:"Surat Thani"},{code:"TH29",name:"Surin"},{code:"TH08",name:"Tak"},{code:"TH65",name:"Trang"},{code:"TH49",name:"Trat"},{code:"TH75",name:"Ubon Ratchathani"},{code:"TH76",name:"Udon Thani"},{code:"TH15",name:"Uthai Thani"},{code:"TH10",name:"Uttaradit"},{code:"TH70",name:"Yala"},{code:"TH72",name:"Yasothon"}]},{code:"TL",id:2404,name:"Timor-Leste",states:[]},{code:"TG",id:2351,name:"Togo",states:[{code:"TO22",name:"Centrale"},{code:"TO23",name:"Kara"},{code:"TO24",name:"Maritime"},{code:"TO25",name:"Plateaux"},{code:"TO26",name:"Savanes"}]},{code:"TK",id:2438,name:"Tokelau",states:[]},{code:"TO",id:2405,name:"Tonga",states:[]},{code:"TT",id:2352,name:"Trinidad and Tobago",states:[{code:"TD01",name:"Arima"},{code:"TD13",name:"Chaguanas"},{code:"TD14",name:"Couva/Tabaquite/Talparo"},{code:"TD15",name:"Diego Martin"},{code:"TD11",name:"Eastern Tobago"},{code:"TD16",name:"Mayaro/Rio Claro"},{code:"TD17",name:"Penal/Debe"},{code:"TD18",name:"Point Fortin"},{code:"TD05",name:"Port of Spain"},{code:"TD19",name:"Princes Town"},{code:"TD10",name:"San Fernando"},{code:"TD20",name:"San Juan/Laventille"},{code:"TD21",name:"Sangre Grande"},{code:"TD22",name:"Siparia"},{code:"TD23",name:"Tunapuna/Piarco"},{code:"TD11",name:"Western Tobago"}]},{code:"TN",id:2353,name:"Tunisia",states:[{code:"TS38",name:"Ariana"},{code:"TS17",name:"Béja"},{code:"TS27",name:"Ben Arous"},{code:"TS18",name:"Bizerte"},{code:"TS29",name:"Gabès"},{code:"TS30",name:"Gafsa"},{code:"TS06",name:"Jendouba"},{code:"TS03",name:"Kairouan"},{code:"TS02",name:"Kassérine"},{code:"TS31",name:"Kebili"},{code:"TS14",name:"Le Kef"},{code:"TS15",name:"Mahdia"},{code:"TS39",name:"Manouba"},{code:"TS28",name:"Médenine"},{code:"TS16",name:"Monastir"},{code:"TS19",name:"Nabeul"},{code:"TS32",name:"Sfax"},{code:"TS33",name:"Sidi Bou Zid"},{code:"TS22",name:"Siliana"},{code:"TS23",name:"Sousse"},{code:"TS34",name:"Tataouine"},{code:"TS35",name:"Tozeur"},{code:"TS36",name:"Tunis"},{code:"TS37",name:"Zaghouan"}]},{code:"TR",id:2354,name:"Turkey",states:[{code:"TU81",name:"Adana"},{code:"TU02",name:"Adiyaman"},{code:"TU03",name:"Afyonkarahisar"},{code:"TU04",name:"Agri"},{code:"TU75",name:"Aksaray"},{code:"TU05",name:"Amasya"},{code:"TU68",name:"Ankara"},{code:"TU07",name:"Antalya"},{code:"TU86",name:"Ardahan"},{code:"TU08",name:"Artvin"},{code:"TU09",name:"Aydin"},{code:"TU10",name:"Balikesir"},{code:"TU87",name:"Bartin"},{code:"TU76",name:"Batman"},{code:"TU77",name:"Bayburt"},{code:"TU11",name:"Bilecik"},{code:"TU12",name:"Bingöl"},{code:"TU13",name:"Bitlis"},{code:"TU14",name:"Bolu"},{code:"TU15",name:"Burdur"},{code:"TU16",name:"Bursa"},{code:"TU17",name:"Çanakkale"},{code:"TU82",name:"Çankiri"},{code:"TU19",name:"Çorum"},{code:"TU20",name:"Denizli"},{code:"TU21",name:"Diyarbakir"},{code:"TU93",name:"Düzce"},{code:"TU22",name:"Edirne"},{code:"TU23",name:"Elazig"},{code:"TU24",name:"Erzincan"},{code:"TU25",name:"Erzurum"},{code:"TU26",name:"Eskisehir"},{code:"TU83",name:"Gaziantep"},{code:"TU28",name:"Giresun"},{code:"TU69",name:"Gümüshane"},{code:"TU70",name:"Hakkari"},{code:"TU31",name:"Hatay"},{code:"TU88",name:"Igdir"},{code:"TU33",name:"Isparta"},{code:"TU34",name:"Istanbul"},{code:"TU35",name:"Izmir"},{code:"TU46",name:"Kahramanmaras"},{code:"TU89",name:"Karabük"},{code:"TU78",name:"Karaman"},{code:"TU84",name:"Kars"},{code:"TU37",name:"Kastamonu"},{code:"TU38",name:"Kayseri"},{code:"TU90",name:"Kilis"},{code:"TU79",name:"Kirikkale"},{code:"TU39",name:"Kirklareli"},{code:"TU40",name:"Kirsehir"},{code:"TU41",name:"Kocaeli"},{code:"TU71",name:"Konya"},{code:"TU43",name:"Kütahya"},{code:"TU44",name:"Malatya"},{code:"TU45",name:"Manisa"},{code:"TU72",name:"Mardin"},{code:"TU32",name:"Mersin"},{code:"TU48",name:"Mugla"},{code:"TU49",name:"Mus"},{code:"TU50",name:"Nevsehir"},{code:"TU73",name:"Nigde"},{code:"TU52",name:"Ordu"},{code:"TU91",name:"Osmaniye"},{code:"TU53",name:"Rize"},{code:"TU54",name:"Sakarya"},{code:"TU55",name:"Samsun"},{code:"TU63",name:"Sanliurfa"},{code:"TU74",name:"Siirt"},{code:"TU57",name:"Sinop"},{code:"TU80",name:"Sirnak"},{code:"TU58",name:"Sivas"},{code:"TU59",name:"Tekirdag"},{code:"TU60",name:"Tokat"},{code:"TU61",name:"Trabzon"},{code:"TU62",name:"Tunceli"},{code:"TU64",name:"Usak"},{code:"TU65",name:"Van"},{code:"TU92",name:"Yalova"},{code:"TU66",name:"Yozgat"},{code:"TU85",name:"Zonguldak"}]},{code:"TM",id:2355,name:"Turkmenistan",states:[{code:"TX01",name:"Ahal"},{code:"TM.AB",name:"Ashgabat"},{code:"TX02",name:"Balkan"},{code:"TX03",name:"Dashoguz"},{code:"TX04",name:"Lebap"},{code:"TX05",name:"Mary"}]},{code:"TC",id:2439,name:"Turks and Caicos Islands",states:[]},{code:"TV",id:2440,name:"Tuvalu",states:[]},{code:"UG",id:2356,name:"Uganda",states:[{code:"UG.AI",name:"Abim"},{code:"UG.AD",name:"Adjumani"},{code:"UG.AG",name:"Agago"},{code:"UG.AL",name:"Alebtong"},{code:"UG.AT",name:"Amolatar"},{code:"UG.AZ",name:"Amudat"},{code:"UG.AM",name:"Amuria"},{code:"UG.AY",name:"Amuru"},{code:"UG.AQ",name:"Apac"},{code:"UG.AX",name:"Arua"},{code:"UG.BD",name:"Budaka"},{code:"UG.BA",name:"Bududa"},{code:"UG.BI",name:"Bugiri"},{code:"UG.BH",name:"Buhweju"},{code:"UG.BZ",name:"Buikwe"},{code:"UG.BE",name:"Bukedea"},{code:"UG.BM",name:"Bukomansimbi"},{code:"UG.BW",name:"Bukwo"},{code:"UG.BB",name:"Bulambuli"},{code:"UG.BL",name:"Buliisa"},{code:"UG.BX",name:"Bundibugyo"},{code:"UG.BC",name:"Bushenyi"},{code:"UG.BU",name:"Busia"},{code:"UG.BJ",name:"Butaleja"},{code:"UG.BT",name:"Butambala"},{code:"UG.BV",name:"Buvuma"},{code:"UG.BY",name:"Buyende"},{code:"UG.DO",name:"Dokolo"},{code:"UG.GM",name:"Gomba"},{code:"UG.GL",name:"Gulu"},{code:"UG.HO",name:"Hoima"},{code:"UG.IB",name:"Ibanda"},{code:"UG.IC",name:"Iganga"},{code:"UG.NG",name:"Isingiro"},{code:"UG.JI",name:"Jinja"},{code:"UG.AB",name:"Kaabong"},{code:"UG.KA",name:"Kabale"},{code:"UG.BR",name:"Kabarole"},{code:"UG.KD",name:"Kaberamaido"},{code:"UG.KN",name:"Kalangala"},{code:"UG.RO",name:"Kaliro"},{code:"UG.QA",name:"Kalungu"},{code:"UG.KM",name:"Kampala"},{code:"UG.QU",name:"Kamuli"},{code:"UG.KE",name:"Kamwenge"},{code:"UG.UU",name:"Kanungu"},{code:"UG.QP",name:"Kapchorwa"},{code:"UG.KS",name:"Kasese"},{code:"UG.KK",name:"Katakwi"},{code:"UG.KY",name:"Kayunga"},{code:"UG.KI",name:"Kibaale"},{code:"UG.QO",name:"Kiboga"},{code:"UG.QB",name:"Kibuku"},{code:"UG.KH",name:"Kiruhuura"},{code:"UG.QD",name:"Kiryandongo"},{code:"UG.KR",name:"Kisoro"},{code:"UG.QT",name:"Kitgum"},{code:"UG.OK",name:"Koboko"},{code:"UG.QL",name:"Kole"},{code:"UG.KF",name:"Kotido"},{code:"UG.QM",name:"Kumi"},{code:"UG.QW",name:"Kween"},{code:"UG.QZ",name:"Kyankwanzi"},{code:"UG.QG",name:"Kyegegwa"},{code:"UG.QJ",name:"Kyenjojo"},{code:"UG.LM",name:"Lamwo"},{code:"UG.LL",name:"Lira"},{code:"UG.LK",name:"Luuka"},{code:"UG.LW",name:"Luwero"},{code:"UG.LE",name:"Lwengo"},{code:"UG.LY",name:"Lyantonde"},{code:"UG.MW",name:"Manafwa"},{code:"UG.MQ",name:"Masaka"},{code:"UG.MZ",name:"Masindi"},{code:"UG.MG",name:"Mayuge"},{code:"UG.ME",name:"Mbale"},{code:"UG.RR",name:"Mbarara"},{code:"UG.MM",name:"Mitoma"},{code:"UG.TY",name:"Mityana"},{code:"UG.MX",name:"Moroto"},{code:"UG.MY",name:"Moyo"},{code:"UG.MJ",name:"Mpigi"},{code:"UG.MD",name:"Mubende"},{code:"UG.MV",name:"Mukono"},{code:"UG.NI",name:"Nakapiripirit"},{code:"UG.NK",name:"Nakaseke"},{code:"UG.NA",name:"Nakasongola"},{code:"UG.NY",name:"Namayingo"},{code:"UG.BK",name:"Namutumba"},{code:"UG.NQ",name:"Napak"},{code:"UG.NB",name:"Nebbi"},{code:"UG.NR",name:"Ngora"},{code:"UG.NO",name:"Ntoroko"},{code:"UG.NT",name:"Ntungamo"},{code:"UG.NW",name:"Nwoya"},{code:"UG.MH",name:"Nyadri"},{code:"UG.OT",name:"Otuke"},{code:"UG.OY",name:"Oyam"},{code:"UG.PR",name:"Pader"},{code:"UG.PS",name:"Pallisa"},{code:"UG.RI",name:"Rakai"},{code:"UG.RZ",name:"Rubirizi"},{code:"UG.RK",name:"Rukungiri"},{code:"UG.SE",name:"Sembabule"},{code:"UG.SX",name:"Serere"},{code:"UG.SH",name:"Sheema"},{code:"UG.SK",name:"Sironko"},{code:"UG.ST",name:"Soroti"},{code:"UG.TR",name:"Tororo"},{code:"UG.WA",name:"Wakiso"},{code:"UG.YU",name:"Yumbe"},{code:"UG.ZO",name:"Zombo"}]},{code:"UA",id:2357,name:"Ukraine",states:[{code:"UP01",name:"Cherkasy"},{code:"UP02",name:"Chernihiv"},{code:"UP03",name:"Chernivtsi"},{code:"UP11",name:"Crimea"},{code:"UP04",name:"Dnipropetrovs'k"},{code:"UP05",name:"Donets'k"},{code:"UP06",name:"Ivano-Frankivs'k"},{code:"UP07",name:"Kharkiv"},{code:"UP08",name:"Kherson"},{code:"UP09",name:"Khmel'nyts'kyy"},{code:"UP13",name:"Kiev"},{code:"UP12",name:"Kiev City"},{code:"UP10",name:"Kirovohrad"},{code:"UP15",name:"L'viv"},{code:"UP14",name:"Luhans'k"},{code:"UP16",name:"Mykolayiv"},{code:"UP17",name:"Odessa"},{code:"UP18",name:"Poltava"},{code:"UP19",name:"Rivne"},{code:"UP20",name:"Sevastopol' City"},{code:"UP21",name:"Sumy"},{code:"UP22",name:"Ternopil'"},{code:"UP25",name:"Transcarpathia"},{code:"UP23",name:"Vinnytsya"},{code:"UP24",name:"Volyn"},{code:"UP26",name:"Zaporizhzhya"},{code:"UP27",name:"Zhytomyr"}]},{code:"AE",id:2358,name:"United Arab Emirates",states:[{code:"AE02",name:"'Ajman"},{code:"AE01",name:"Abu Dhabi"},{code:"AE04",name:"Al Fujayrah"},{code:"AE03",name:"Dubai"},{code:"AE05",name:"Ra's al Khaymah"},{code:"AE06",name:"Sharjah"},{code:"AE07",name:"Umm al Qaywayn"}]},{code:"UM",id:2441,name:"United States Minor Outlying Islands",states:[]},{code:"UY",id:2360,name:"Uruguay",states:[]},{code:"UZ",id:2361,name:"Uzbekistan",states:[{code:"UZ01",name:"Andijon"},{code:"UZ02",name:"Buxoro"},{code:"UZ03",name:"Farg`ona"},{code:"UZ15",name:"Jizzax"},{code:"UZ09",name:"Karakalpakstan"},{code:"UZ08",name:"Kashkadarya"},{code:"UZ06",name:"Namangan"},{code:"UZ07",name:"Navoi"},{code:"UZ10",name:"Samarkand"},{code:"UZ16",name:"Sirdaryo"},{code:"UZ12",name:"Surxondaryo"},{code:"UZ13",name:"Tashkent City"},{code:"UZ14",name:"Tashkent"},{code:"UZ05",name:"Xorazm"}]},{code:"NH",id:2406,name:"Vanuatu",states:[]},{code:"VE",id:2363,name:"Venezuela; Bolivarian Republic of",states:[{code:"VE01",name:"Amazonas"},{code:"VE02",name:"Anzoátegui"},{code:"VE03",name:"Apure"},{code:"VE04",name:"Aragua"},{code:"VE05",name:"Barinas"},{code:"VE06",name:"Bolívar"},{code:"VE07",name:"Carabobo"},{code:"VE08",name:"Cojedes"},{code:"VE09",name:"Delta Amacuro"},{code:"VE24",name:"Dependencias Federales"},{code:"VE25",name:"Distrito Capital"},{code:"VE11",name:"Falcón"},{code:"VE12",name:"Guárico"},{code:"VE13",name:"Lara"},{code:"VE14",name:"Mérida"},{code:"VE15",name:"Miranda"},{code:"VE16",name:"Monagas"},{code:"VE17",name:"Nueva Esparta"},{code:"VE18",name:"Portuguesa"},{code:"VE19",name:"Sucre"},{code:"VE20",name:"Táchira"},{code:"VE21",name:"Trujillo"},{code:"VE26",name:"Vargas"},{code:"VE22",name:"Yaracuy"},{code:"VE23",name:"Zulia"}]},{code:"VN",id:2364,name:"Vietnam",states:[{code:"VM01",name:"An Giang"},{code:"VM45",name:"Ba Ria-Vung Tau"},{code:"VM72",name:"Bac Can"},{code:"VM71",name:"Bac Giang"},{code:"VM73",name:"Bac Lieu"},{code:"VM74",name:"Bac Ninh"},{code:"VM03",name:"Ben Tre"},{code:"VM46",name:"Binh Dinh"},{code:"VM75",name:"Binh Duong"},{code:"VM76",name:"Binh Phuoc"},{code:"VM47",name:"Binh Thuan"},{code:"VM77",name:"Ca Mau"},{code:"VM87",name:"Can Tho"},{code:"VM05",name:"Cao Bang"},{code:"VM78",name:"Da Nang"},{code:"VM88",name:"Dac Lac"},{code:"VM91",name:"Dac Nong"},{code:"VM92",name:"Dien Bien"},{code:"VM43",name:"Dong Nai"},{code:"VM09",name:"Dong Thap"},{code:"VM49",name:"Gia Lai"},{code:"VM50",name:"Ha Giang"},{code:"VM80",name:"Ha Nam"},{code:"VM52",name:"Ha Tinh"},{code:"VM79",name:"Hai Duong"},{code:"VM13",name:"Haiphong"},{code:"VM44",name:"Hanoi"},{code:"VM93",name:"Hau Giang"},{code:"VM20",name:"Ho Chi Minh"},{code:"VM53",name:"Hoa Binh"},{code:"VM81",name:"Hung Yen"},{code:"VM54",name:"Khanh Hoa"},{code:"VM21",name:"Kien Giang"},{code:"VM55",name:"Kon Tum"},{code:"VM89",name:"Lai Chau"},{code:"VM23",name:"Lam Dong"},{code:"VM39",name:"Lang Son"},{code:"VM90",name:"Lao Cai"},{code:"VM24",name:"Long An"},{code:"VM82",name:"Nam Dinh"},{code:"VM58",name:"Nghe An"},{code:"VM59",name:"Ninh Binh"},{code:"VM60",name:"Ninh Thuan"},{code:"VM83",name:"Phu Tho"},{code:"VM61",name:"Phu Yen"},{code:"VM62",name:"Quang Binh"},{code:"VM84",name:"Quang Nam"},{code:"VM63",name:"Quang Ngai"},{code:"VM30",name:"Quang Ninh"},{code:"VM64",name:"Quang Tri"},{code:"VM65",name:"Soc Trang"},{code:"VM32",name:"Son La"},{code:"VM33",name:"Tay Ninh"},{code:"VM35",name:"Thai Binh"},{code:"VM85",name:"Thai Nguyen"},{code:"VM34",name:"Thanh Hoa"},{code:"VM66",name:"Thua Thien-Hue"},{code:"VM37",name:"Tien Giang"},{code:"VM67",name:"Tra Vinh"},{code:"VM68",name:"Tuyen Quang"},{code:"VM69",name:"Vinh Long"},{code:"VM86",name:"Vinh Phuc"},{code:"VM70",name:"Yen Bai"}]},{code:"VG",id:2446,name:"Virgin Islands; British",states:[{code:"VG.VI",name:"British Virgin Islands"}]},{code:"VI",id:2442,name:"Virgin Islands; U.S.",states:[{code:"010",name:"Saint Croix"},{code:"020",name:"Saint John"},{code:"030",name:"Saint Thomas"}]},{code:"WF",id:2443,name:"Wallis and Futuna",states:[]},{code:"EH",id:2444,name:"Western Sahara",states:[]},{code:"YE",id:2382,name:"Yemen",states:[{code:"YM01",name:"Abyan"},{code:"YM20",name:"Al Bayda'"},{code:"YM18",name:"Al Dali'"},{code:"YM08",name:"Al Hudaydah"},{code:"YM21",name:"Al Jawf"},{code:"YM03",name:"Al Mahrah"},{code:"YM10",name:"Al Mahwit"},{code:"YM19",name:"Amran"},{code:"YM11",name:"Dhamar"},{code:"YM04",name:"Hadramawt"},{code:"YM22",name:"Hajjah"},{code:"YM23",name:"Ibb"},{code:"YM24",name:"Lahij"},{code:"YM14",name:"Ma'rib"},{code:"YM27",name:"Raymah"},{code:"YM15",name:"Sa`dah"},{code:"YM16",name:"San`a'"},{code:"YM26",name:"San`a' [City]"},{code:"YM05",name:"Shabwah"},{code:"YM28",name:"Socotra"},{code:"YM25",name:"Ta`izz"},{code:"YM02",name:"`Adan"}]},{code:"ZM",id:2369,name:"Zambia",states:[{code:"ZA02",name:"Central"},{code:"ZA08",name:"Copperbelt"},{code:"ZA03",name:"Eastern"},{code:"ZA04",name:"Luapula"},{code:"ZA09",name:"Lusaka"},{code:"ZA10",name:"Muchinga"},{code:"ZA06",name:"North-Western"},{code:"ZA05",name:"Northern"},{code:"ZA07",name:"Southern"},{code:"ZA01",name:"Western"}]},{code:"ZW",id:2370,name:"Zimbabwe",states:[{code:"ZI09",name:"Bulawayo"},{code:"ZI10",name:"Harare"},{code:"ZI01",name:"Manicaland"},{code:"ZI03",name:"Mashonaland Central"},{code:"ZI04",name:"Mashonaland East"},{code:"ZI05",name:"Mashonaland West"},{code:"ZI08",name:"Masvingo"},{code:"ZI06",name:"Matabeleland North"},{code:"ZI07",name:"Matabeleland South"},{code:"ZI02",name:"Midlands"}]},{code:"NONE",id:2378,name:"- None Specified -",states:[]}];function gn(e){return hn.find((function(t){return t.id===e}))}function fn(e){if(e){var t=hn.find((function(t){return t.name===e.trim()}));return t&&t.states||[]}return[]}function yn(e){return fn(e).map((function(e){return e.name}))}var vn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return bn})),multi:!0},bn=function(){function e(e){this.labels=e,this._readOnly=!1,this.states=[],this.fieldList=["address1","address2","city","state","zip","countryID"],this.onModelChange=function(){},this.onModelTouched=function(){},this.focused={},this.invalid={},this.disabled={},this.invalidMaxlength={},this.valid={},this.tooltip={},this.initComplete=!1,this.change=new t.EventEmitter,this.focus=new t.EventEmitter,this.blur=new t.EventEmitter,this.validityChange=new t.EventEmitter}return Object.defineProperty(e.prototype,"readOnly",{get:function(){return this._readOnly},set:function(e){var t=this;this._readOnly=e,this.fieldList.forEach((function(e){t.disabled[e]=t._readOnly})),this.model&&this.updateStates()},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.config||(this.config={}),this.model?(this.writeValue(this.model),this.updateControl()):this.model||(this.model={}),this.initConfig(),R.isBlank(this.model.countryID)&&this.updateStates()},e.prototype.initConfig=function(){var e=this;this.fieldList.forEach((function(t){e.config.hasOwnProperty(t)||(e.config[t]={hidden:!0}),e.config[t].hasOwnProperty("label")||(e.config[t].label=e.labels[t]),e.config.required&&(e.config[t].required=!0),(e.config[t].readOnly||e.config.readOnly)&&(e.config[t].readOnly=!0,e.disabled[t]=!0),"countryID"===t&&(e.config[t].pickerConfig||(e.config.countryID.pickerConfig=e.getDefaultCountryConfig()),e.config[t].pickerConfig.defaultOptions=e.config.countryID.pickerConfig.options),"state"===t&&(e.config[t].pickerConfig||(e.config.state.pickerConfig=e.getDefaultStateConfig(),e.config[t].pickerConfig.defaultOptions=e.config[t].pickerConfig.options),e.stateOptions=e.config[t].pickerConfig.options,e.config[t].pickerConfig.options=function(t){return void 0===t&&(t=""),e.stateOptions(t,e.model.countryID)},e.config[t].pickerConfig.defaultOptions=e.stateOptions)}))},e.prototype.isValid=function(e){var t=!0;(!this.config[e].required||!R.isBlank(this.model[e])&&!R.isEmpty(this.model[e]))&&this.config[e].required||"countryID"===e&&this.config[e].required&&!R.isBlank(this.model.countryID)||"state"===e&&this.config[e].required&&(!R.isEmpty(this.model.state)||(R.isBlank(this.model.state)||R.isEmpty(this.model.state))&&!R.isBlank(this.model.countryName)&&this.config.state.pickerConfig&&this.config.state.pickerConfig.defaultOptions&&0===this.config.state.pickerConfig.defaultOptions.length)?!R.isEmpty(this.model[e])&&!R.isBlank(this.config[e].maxlength)&&this.config[e].maxlength<this.model[e].length&&(t=!1):t=!1,this.valid[e]=t},e.prototype.isInvalid=function(e){var t=!1,n=!1;"countryID"!==e&&"state"!==e&&this.config[e].required&&R.isEmpty(this.model[e])&&!R.isBlank(this.model[e])||"countryID"===e&&this.config[e].required&&R.isBlank(this.model.countryName)&&this.config[e].updated||"state"===e&&this.config[e].required&&(R.isBlank(this.model.state)||R.isEmpty(this.model.state))&&!R.isBlank(this.model.countryID)&&this.config[e].updated&&this.config.state.pickerConfig&&this.config.state.pickerConfig.defaultOptions&&this.config.state.pickerConfig.defaultOptions.length>0?t=!0:!R.isEmpty(this.model[e])&&!R.isBlank(this.config[e].maxlength)&&this.config[e].maxlength<this.model[e].length&&(t=!0,n=!0),this.invalid[e]=t,this.invalidMaxlength[e]=n},e.prototype.onInput=function(e,t){this.isInvalid(t),this.isValid(t),e&&this.change.emit({value:this.model[t],field:t})},e.prototype.isFocused=function(e,t){this.focused[t]=!0,this.focus.emit({event:e,field:t})},e.prototype.isBlurred=function(e,t){this.focused[t]=!1,this.blur.emit({event:e,field:t})},e.prototype.onCountryChange=function(e){var t,n=e&&e.rawValue?e.rawValue:null,o=!1;this.config.countryID.updated=!0,this.config.countryID.pickerConfig&&(t=this.config.countryID.pickerConfig.field),n&&t&&!R.isBlank(n[t])&&this.model.countryID!==n[t]?(this.model.countryID=n[t],this.model.countryName=R.interpolate(this.config.countryID.pickerConfig.format,n),this.disabled.state=!1,this.tooltip.state=void 0,o=!0):(R.isBlank(n)||R.isBlank(n[t]))&&(this.model.countryID=void 0,this.model.countryName=void 0,this.disabled.state=!0,this.tooltip.state=this.labels.selectCountryFirst,this.invalid.state=!1,o=!0),o&&(this.model.state=void 0,this.updateStates()),this.updateControl(),this.onInput(null,"countryID"),this.onInput(null,"state")},e.prototype.onStateChange=function(e){var t=e&&e.value?e.value:null;this.config.state.updated=!0,this.model.state=t,this.updateControl(),this.onInput(null,"state")},e.prototype.setStateLabel=function(e){var t=e.state;R.isBlank(t)?(this.model.state=void 0,this.config.state.required&&(this.valid.state=!1)):(this.config.state.required&&(this.valid.state=!0),this.model.state=t)},e.prototype.updateStates=function(){var e=this;this.config.state.pickerConfig.options&&!R.isBlank(this.model.countryID)?(this.config.state.pickerConfig.options=function(t){return void 0===t&&(t=""),e.stateOptions(t,e.model.countryID)},this.stateOptions("",this.model.countryID).then((function(t){e.config.state.pickerConfig.defaultOptions=t,t.length?(e.tooltip.state=void 0,e.disabled.state=e._readOnly,e.setStateLabel(e.model)):(e.disabled.state=!0,e.tooltip.state=e.labels.noStatesForCountry,e.config.state.required&&(e.valid.state=!0)),e.validityChange.emit(),e.onInput(null,"state")}))):(this.config.state.pickerConfig.defaultOptions=[],this.disabled.state=!0,this.tooltip.state=this.labels.selectCountryFirst,this.config.state.required&&(this.valid.state=!1))},e.prototype.getStateOptions=function(e,t){if(void 0===e&&(e=""),t){var n=yn(gn(t).name);return e?n.filter((function(t){return new RegExp(""+e,"gi").test(t)})):n}return[]},e.prototype.updateControl=function(){this.onModelChange(this.model),this.onInput(null,"countryID"),this.onInput(null,"state")},e.prototype.writeValue=function(e){var t=this,n=!1;if(e){var o;if(e.countryName&&e.countryID)o=e.countryName;else if(e.countryID&&this.config.countryID.pickerConfig&&this.config.countryID.pickerConfig.getLabels&&R.isFunction(this.config.countryID.pickerConfig.getLabels)){var a=this.config.countryID.pickerConfig.getLabels(e.countryID);n=!0,a.then&&a.then((function(a){n=!1,o=R.interpolateWithFallback(t.config.countryID.pickerConfig.format,a),t.model=Object.assign(e,{countryName:o}),t.updateStates()}))}o?(o=o.trim(),e.state=e.state||"",this.model=Object.assign(e,{countryName:o})):this.model=e,n||R.isBlank(this.model.countryID)||this.updateStates()}this.fieldList.forEach((function(e){t.onInput(null,e)}))},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.getDefaultStateConfig=function(){var e=this;return{field:"value",format:"$label",options:function(t,n){return void 0===t&&(t=""),Promise.resolve(e.getStateOptions(t,n))},getLabels:function(e){return Promise.resolve(e)}}},e.prototype.getDefaultCountryConfig=function(){return{field:"value",format:"$label",options:function(e){return void 0===e&&(e=""),new Promise((function(t){var n=hn;return e&&(n=n.filter((function(t){return new RegExp(""+e,"gi").test(t.name)}))),t(n.map((function(e){return{value:e.id,label:e.name}})))}))},getLabels:function(e){return new Promise((function(t){var n=gn(e);t(n?{value:n.id,label:n.name}:"")}))}}},e}();bn.decorators=[{type:t.Component,args:[{selector:"novo-address",providers:[vn],template:'\n <span\n *ngIf="!config?.address1?.hidden"\n class="street-address"\n [class.invalid]="invalid.address1"\n [class.focus]="focused.address1"\n [class.disabled]="disabled.address1"\n >\n <i\n *ngIf="config.address1.required"\n class="required-indicator address1"\n [ngClass]="{ \'bhi-circle\': !valid.address1, \'bhi-check\': valid.address1 }"\n >\n </i>\n <input\n [class.maxlength-error]="invalidMaxlength.address1"\n type="text"\n id="address1"\n name="address1"\n [placeholder]="config.address1.label"\n [maxlength]="config?.address1?.maxlength"\n autocomplete="shipping street-address address-line-1"\n [(ngModel)]="model.address1"\n (ngModelChange)="updateControl()"\n (focus)="isFocused($event, \'address1\')"\n (blur)="isBlurred($event, \'address1\')"\n (input)="onInput($event, \'address1\')"\n [disabled]="disabled.address1"\n />\n </span>\n <span\n *ngIf="!config?.address2?.hidden"\n class="apt suite"\n [class.invalid]="invalid.address2"\n [class.focus]="focused.address2"\n [class.disabled]="disabled.address2"\n >\n <i\n *ngIf="config.address2.required"\n class="required-indicator address2"\n [ngClass]="{ \'bhi-circle\': !valid.address2, \'bhi-check\': valid.address2 }"\n >\n </i>\n <input\n [class.maxlength-error]="invalidMaxlength.address2"\n type="text"\n id="address2"\n name="address2"\n [placeholder]="config.address2.label"\n [maxlength]="config?.address2?.maxlength"\n autocomplete="shipping address-line-2"\n [(ngModel)]="model.address2"\n (ngModelChange)="updateControl()"\n (focus)="isFocused($event, \'address2\')"\n (blur)="isBlurred($event, \'address2\')"\n (input)="onInput($event, \'address2\')"\n [disabled]="disabled.address2"\n />\n </span>\n <span\n *ngIf="!config?.city?.hidden"\n class="city locality"\n [class.invalid]="invalid.city"\n [class.focus]="focused.city"\n [class.disabled]="disabled.city"\n >\n <i *ngIf="config.city.required" class="required-indicator" [ngClass]="{ \'bhi-circle\': !valid.city, \'bhi-check\': valid.city }"> </i>\n <input\n [class.maxlength-error]="invalidMaxlength.city"\n type="text"\n id="city"\n name="city"\n [placeholder]="config.city.label"\n autocomplete="shipping city locality"\n [maxlength]="config?.city?.maxlength"\n [(ngModel)]="model.city"\n (ngModelChange)="updateControl()"\n (focus)="isFocused($event, \'city\')"\n (blur)="isBlurred($event, \'city\')"\n (input)="onInput($event, \'city\')"\n [disabled]="disabled.city"\n />\n </span>\n <span\n *ngIf="!config?.state?.hidden"\n class="state region"\n [class.invalid]="invalid.state"\n [class.focus]="focused.state"\n [class.disabled]="disabled.state"\n [tooltip]="tooltip.state"\n >\n <i *ngIf="config.state.required" class="required-indicator" [ngClass]="{ \'bhi-circle\': !valid.state, \'bhi-check\': valid.state }"> </i>\n <novo-picker\n [config]="config?.state?.pickerConfig"\n [placeholder]="config?.state?.label"\n (changed)="onStateChange($event)"\n autocomplete="shipping region"\n [(ngModel)]="model.state"\n [disablePickerInput]="disabled.state"\n ></novo-picker>\n </span>\n <span\n *ngIf="!config?.zip?.hidden"\n class="zip postal-code"\n [class.invalid]="invalid.zip"\n [class.focus]="focused.zip"\n [class.disabled]="disabled.zip"\n >\n <i *ngIf="config.zip.required" class="required-indicator" [ngClass]="{ \'bhi-circle\': !valid.zip, \'bhi-check\': valid.zip }"> </i>\n <input\n [class.maxlength-error]="invalidMaxlength.zip"\n type="text"\n id="zip"\n name="zip"\n [placeholder]="config.zip.label"\n autocomplete="shipping postal-code"\n [maxlength]="config?.zip?.maxlength"\n [(ngModel)]="model.zip"\n (ngModelChange)="updateControl()"\n (focus)="isFocused($event, \'zip\')"\n (blur)="isBlurred($event, \'zip\')"\n (input)="onInput($event, \'zip\')"\n [disabled]="disabled.zip"\n />\n </span>\n <span\n *ngIf="!config?.countryID?.hidden"\n class="country-name"\n [class.invalid]="invalid.countryID"\n [class.focus]="focused.countryID"\n [class.disabled]="disabled.countryID"\n >\n <i\n *ngIf="config.countryID.required"\n class="required-indicator"\n [ngClass]="{ \'bhi-circle\': !valid.countryID, \'bhi-check\': valid.countryID }"\n >\n </i>\n <novo-picker\n [config]="config?.countryID?.pickerConfig"\n [placeholder]="config.countryID.label"\n (changed)="onCountryChange($event)"\n autocomplete="shipping country"\n [(ngModel)]="model.countryID"\n [disablePickerInput]="disabled.countryID"\n ></novo-picker>\n </span>\n '}]}],bn.ctorParameters=function(){return[{type:Ne}]},bn.propDecorators={config:[{type:t.Input}],readOnly:[{type:t.Input}],change:[{type:t.Output}],focus:[{type:t.Output}],blur:[{type:t.Output}],validityChange:[{type:t.Output}]};var Cn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return kn})),multi:!0},Sn={iconStyle:"box"},kn=function(){function e(e){this.ref=e,this.indeterminate=!1,this.disabled=!1,this.onSelect=new t.EventEmitter,this.boxIcon=!0,this.onModelChange=function(){},this.onModelTouched=function(){}}return e.prototype.ngOnInit=function(){this.layoutOptions=Object.assign({},Sn,this.layoutOptions),this.boxIcon="box"===this.layoutOptions.iconStyle},e.prototype.select=function(e){R.swallowEvent(e),this.disabled||(this.model=!this.model,this.onModelChange(this.model),this.onSelect.emit({originalEvent:e,value:this.model}))},e.prototype.writeValue=function(e){this.model=e,this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();kn.decorators=[{type:t.Component,args:[{selector:"novo-checkbox",providers:[Cn],template:'\n <div class="check-box-group" [class.checked]="model" [class.disabled]="disabled">\n <input [name]="name" type="checkbox" [(ngModel)]="model" [attr.id]="name" [disabled]="disabled">\n <label [attr.for]="name" (click)="select($event)" [class.disabled]="disabled">\n <i [class.bhi-checkbox-empty]="!model && !indeterminate && boxIcon"\n [class.bhi-checkbox-filled]="model && !indeterminate && boxIcon"\n [class.bhi-checkbox-indeterminate]="indeterminate && boxIcon"\n [class.bhi-circle-o]="!model && !indeterminate && !boxIcon"\n [class.bhi-check]="model && !indeterminate && !boxIcon"\n [class.bhi-circle]="indeterminate && !boxIcon"></i>\n <span *ngIf="label">{{ label }}</span>\n </label>\n </div>\n '}]}],kn.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},kn.propDecorators={name:[{type:t.Input}],label:[{type:t.Input}],indeterminate:[{type:t.Input}],disabled:[{type:t.Input}],layoutOptions:[{type:t.Input}],onSelect:[{type:t.Output}]};var In={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return En})),multi:!0},En=function(){function e(){this.onSelect=new t.EventEmitter,this.onModelChange=function(){},this.onModelTouched=function(){}}return e.prototype.ngOnInit=function(){this.setModel(),this.setupOptions()},e.prototype.select=function(e,t){R.swallowEvent(e),this.disabled||(t.checked=!t.checked,this.model=this._options.filter((function(e){return e.checked})).map((function(e){return e.value})),this.onModelChange(this.model.length>0?this.model:""),this.onSelect.emit({selected:this.model}))},e.prototype.setupOptions=function(){var e=this;this.options=this.options||[],this._options=[],this.options.length&&!this.options[0].value?this.options.forEach((function(t){var n={value:t,label:t,checked:e.model&&e.model.length&&-1!==e.model.indexOf(t.value)};e._options.push(n)})):this.options.forEach((function(t){var n=t;n.checked=e.model&&e.model.length&&-1!==e.model.indexOf(t.value),e._options.push(n)}))},e.prototype.setModel=function(){var e=this.options.filter((function(e){return e.checked})).map((function(e){return e.value}));this.writeValue(e)},e.prototype.writeValue=function(e){this.model=e||[],e&&this.setupOptions()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();En.decorators=[{type:t.Component,args:[{selector:"novo-check-list",providers:[In],template:'\n <div\n class="check-box-group"\n *ngFor="let option of _options; let i = index"\n [ngClass]="{ checked: option.checked }"\n [class.disabled]="disabled"\n [attr.data-automation-id]="option.label"\n >\n <input\n [name]="name"\n type="checkbox"\n [ngModel]="option.checked"\n [attr.id]="name + i"\n [value]="option.checked"\n (change)="select($event, option)"\n [disabled]="disabled"\n />\n <label [attr.for]="name + i" (click)="select($event, option)">\n <i [ngClass]="{ \'bhi-checkbox-empty\': !option.checked, \'bhi-checkbox-filled\': option.checked }"></i>\n <span>{{ option.label }}</span>\n </label>\n </div>\n '}]}],En.propDecorators={name:[{type:t.Input}],options:[{type:t.Input}],disabled:[{type:t.Input}],onSelect:[{type:t.Output}]};var wn=function(){function e(e){var t=this;this.name="",this.contentType="",this.lastModified=0,this.size=0,this.loaded=!1,this.reader=new FileReader,this.name=""+encodeURIComponent(e.name||""),this.contentType=e.type,this.lastModified=e.lastModified,this.size=e.size,this.file=e,this.reader.onload=function(e){t.fileContents=e.target.result.split(",")[1],t.dataURL=e.target.result,t.loaded=!0,t.readPromise&&t.readPromise(t)}}return e.prototype.read=function(){var e=this;return new Promise((function(t){e.readPromise=t,e.reader.readAsDataURL(e.file)}))},e.prototype.toJSON=function(){return{name:this.name,contentType:this.type,lastModified:this.lastModified,size:this.size,fileContents:this.fileContents}},e}(),Tn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Pn})),multi:!0},On={order:"default",download:!0,removable:!0,labelStyle:"default",draggable:!1},Pn=function(){function e(e,n,o){this.element=e,this.labels=n,this.dragula=o,this.multiple=!1,this.disabled=!1,this.value=[],this.edit=new t.EventEmitter,this.save=new t.EventEmitter,this.delete=new t.EventEmitter,this.upload=new t.EventEmitter,this.elements=[],this.files=[],this.active=!1,this.onModelChange=function(){},this.onModelTouched=function(){},this.commands={dragenter:this.dragEnterHandler.bind(this),dragleave:this.dragLeaveHandler.bind(this),dragover:this.dragOverHandler.bind(this),drop:this.dropHandler.bind(this)}}return e.prototype.ngOnInit=function(){var e=this;["dragenter","dragleave","dragover","drop"].forEach((function(t){e.element.nativeElement.addEventListener(t,e.commands[t])})),this.updateLayout(),this.initializeDragula(),this.setInitialFileList(),this.dataFeatureId=this.dataFeatureId?this.dataFeatureId:this.name},e.prototype.ngOnDestroy=function(){var e=this;["dragenter","dragleave","dragover","drop"].forEach((function(t){e.element.nativeElement.removeEventListener(t,e.commands[t])})),this.dragula.bags.length>0&&this.dragula.bags.filter((function(t){return t.name===e.fileOutputBag})).length>0&&this.dragula.destroy(this.fileOutputBag)},e.prototype.ngOnChanges=function(e){this.onModelChange(this.model)},e.prototype.updateLayout=function(){this.layoutOptions=Object.assign({},On,this.layoutOptions),this.insertTemplatesBasedOnLayout()},e.prototype.insertTemplatesBasedOnLayout=function(){var e,t=this;switch(this.layoutOptions.order){case"displayFilesBelow":e=["fileInput","fileOutput"];break;default:e=["fileOutput","fileInput"]}return e.forEach((function(e){t.container.createEmbeddedView(t[e],0)})),e},e.prototype.initializeDragula=function(){var e=this;this.fileOutputBag="file-output-"+this.dragula.bags.length,this.dragula.setOptions(this.fileOutputBag,{moves:function(t,n,o){return e.layoutOptions.draggable}})},e.prototype.setInitialFileList=function(){this.value&&(this.files=this.value)},e.prototype.dragEnterHandler=function(e){e.preventDefault(),e.dataTransfer.dropEffect="copy",this.target=e.target,this.active=!0},e.prototype.dragLeaveHandler=function(e){e.preventDefault(),this.target===e.target&&(this.active=!1)},e.prototype.dragOverHandler=function(e){e.preventDefault()},e.prototype.dropHandler=function(e){if(e.preventDefault(),this.visible=!1,"Files"===e.dataTransfer.types[0]){var t=this.layoutOptions,n=Array.from(e.dataTransfer.files);t.customActions?this.upload.emit(this.multiple?n:[n[0]]):this.process(this.multiple?n:[n[0]]),this.active=!1}},e.prototype.writeValue=function(e){this.model=e},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.check=function(e){this.process(Array.from(e.target.files))},e.prototype.validate=function(e){var t=!0;return this.layoutOptions.customValidation&&this.layoutOptions.customValidation.filter((function(e){return"upload"===e.action})).forEach((function(n){t=n.fn(e)&&t})),t},e.prototype.process=function(e){var t=this;this.validate(e)&&Promise.all(e.map((function(e){return t.readFile(e)}))).then((function(e){var n;t.multiple?(n=t.files).push.apply(n,ae(e)):t.files=e,t.model=t.files,t.onModelChange(t.model)}))},e.prototype.download=function(e){window.open(e.dataURL,"_blank")},e.prototype.remove=function(e){this.files.splice(this.files.findIndex((function(t){return t.name===e.name&&t.size===e.size})),1),this.model=this.files,this.onModelChange(this.model)},e.prototype.readFile=function(e){return new wn(e).read()},e.prototype.customEdit=function(e){this.edit.emit(e)},e.prototype.customSave=function(e){this.save.emit(e)},e.prototype.customDelete=function(e){this.delete.emit(e)},e.prototype.customCheck=function(e){this.upload.emit(e)},e.prototype.setDisabledState=function(e){this.disabled=e},e}();Pn.decorators=[{type:t.Component,args:[{selector:"novo-file-input",providers:[Tn],template:'\n <div #container></div>\n <ng-template #fileInput>\n <div class="file-input-group" [class.disabled]="disabled" [class.active]="active">\n <input\n *ngIf="!layoutOptions.customActions"\n type="file"\n [name]="name"\n [attr.id]="name"\n (change)="check($event)"\n [attr.multiple]="multiple"\n tabindex="-1"\n [attr.data-feature-id]="dataFeatureId"\n />\n <input\n *ngIf="layoutOptions.customActions"\n type="file"\n [name]="name"\n [attr.id]="name"\n (change)="customCheck($event)"\n [attr.multiple]="multiple"\n tabindex="-1"\n [attr.data-feature-id]="dataFeatureId"\n />\n <section [ngSwitch]="layoutOptions.labelStyle">\n <label *ngSwitchCase="\'no-box\'" [attr.for]="name" class="no-box">\n <div>\n <i class="bhi-dropzone"></i>{{ placeholder || labels.chooseAFile }} {{ labels.or }}\n <strong class="link">{{ labels.clickToBrowse }}</strong>\n </div>\n </label>\n <label *ngSwitchDefault [attr.for]="name" class="boxed">\n <span>{{ placeholder || labels.chooseAFile }}</span>\n <small\n >{{ labels.or }} <strong class="link">{{ labels.clickToBrowse }}</strong></small\n >\n </label>\n </section>\n </div>\n </ng-template>\n <ng-template #fileOutput>\n <div class="file-output-group" [dragula]="fileOutputBag" [dragulaModel]="files">\n <div class="file-item" *ngFor="let file of files" [class.disabled]="disabled">\n <i *ngIf="layoutOptions.draggable" class="bhi-move"></i>\n <label *ngIf="file.link"\n ><span\n ><a href="{{ file.link }}" target="_blank">{{ file.name | decodeURI }}</a></span\n ><span *ngIf="file.description">||</span><span>{{ file.description }}</span></label\n >\n <label *ngIf="!file.link">{{ file.name | decodeURI }}</label>\n <div class="actions" [attr.data-automation-id]="\'file-actions\'" *ngIf="file.loaded">\n <div *ngIf="!layoutOptions.customActions">\n <button\n *ngIf="layoutOptions.download"\n type="button"\n theme="icon"\n icon="save"\n (click)="download(file)"\n [attr.data-automation-id]="\'file-download\'"\n tabindex="-1"\n ></button>\n <button\n *ngIf="!disabled && (layoutOptions.removable || (!layoutOptions.removable && layoutOptions.removableWhenNew && !file.link))"\n type="button"\n theme="icon"\n icon="close"\n (click)="remove(file)"\n [attr.data-automation-id]="\'file-remove\'"\n tabindex="-1"\n ></button>\n </div>\n <div *ngIf="layoutOptions.customActions">\n <button\n *ngIf="layoutOptions.edit && !disabled"\n type="button"\n theme="icon"\n icon="edit"\n (click)="customEdit(file)"\n [attr.data-automation-id]="\'file-edit\'"\n tabindex="-1"\n ></button>\n <button\n *ngIf="layoutOptions.download"\n type="button"\n theme="icon"\n icon="save"\n (click)="customSave(file)"\n [attr.data-automation-id]="\'file-download\'"\n tabindex="-1"\n ></button>\n <button\n *ngIf="!disabled"\n type="button"\n theme="icon"\n icon="close"\n (click)="customDelete(file)"\n [attr.data-automation-id]="\'file-remove\'"\n tabindex="-1"\n ></button>\n </div>\n </div>\n <novo-loading *ngIf="!file.loaded"></novo-loading>\n </div>\n </div>\n </ng-template>\n '}]}],Pn.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:dn}]},Pn.propDecorators={fileInput:[{type:t.ViewChild,args:["fileInput",{static:!0}]}],fileOutput:[{type:t.ViewChild,args:["fileOutput",{static:!0}]}],container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef,static:!0}]}],name:[{type:t.Input}],multiple:[{type:t.Input}],disabled:[{type:t.Input}],placeholder:[{type:t.Input}],layoutOptions:[{type:t.Input}],value:[{type:t.Input}],dataFeatureId:[{type:t.Input}],edit:[{type:t.Output}],save:[{type:t.Output}],delete:[{type:t.Output}],upload:[{type:t.Output}]};var An=function(){};An.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,re,_,ln,Nt,ze,mn,U],declarations:[bn,kn,En,Pn],exports:[bn,kn,En,Pn]}]}];var Dn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return xn})),multi:!0},xn=function(){function e(e,n){this.element=e,this.ref=n,this.name=(new Date).getTime().toString(),this.disabled=!1,this.onChange=new t.EventEmitter,this.onSelectedOptionClick=new t.EventEmitter,this.onDisabledOptionClick=new t.EventEmitter,this._options=[],this.activeTile=null,this.focused=!1,this.onModelChange=function(){},this.onModelTouched=function(){}}return e.prototype.setFocus=function(e){this.focused=e},e.prototype.ngAfterContentInit=function(){this.name=this.name||"",this.setupOptions()},e.prototype.ngOnChanges=function(e){e.options&&e.options.currentValue&&!e.options.firstChange&&(this.name=this.name||"",this._options=[],this.setupOptions())},e.prototype.setupOptions=function(){var e=this;this.options&&this.options.length&&(void 0===this.options[0].value||null===this.options[0].value)?this._options=this.options.map((function(t){var n={value:t,label:t,checked:e.model===t};return n.checked&&e.setTile(n),n})):this._options=this.options.map((function(t){return t.checked=e.model===t.value||e.model&&e.model.id===t.value,t.checked&&e.setTile(t),t})),this.ref.markForCheck()},e.prototype.select=function(e,t){var n,o;if(e&&(e.stopPropagation(),e.preventDefault()),t.disabled)this.onDisabledOptionClick.emit(t);else{if(t.checked)return void this.onSelectedOptionClick.emit(t);try{for(var a=ne(this._options),i=a.next();!i.done;i=a.next()){i.value.checked=!1}}catch(e){n={error:e}}finally{try{i&&!i.done&&(o=a.return)&&o.call(a)}finally{if(n)throw n.error}}t.checked=!t.checked,this.onChange.emit(t.value),this.onModelChange(t.value),this.setTile(t),this.model=t.value}this.ref.markForCheck()},e.prototype.setTile=function(e){e&&(this.activeTile=e.value,this.ref.markForCheck())},e.prototype.writeValue=function(e){this.model=e,R.isBlank(e)||this.setupOptions()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();xn.decorators=[{type:t.Component,args:[{selector:"novo-tiles",providers:[Dn],template:'\n <div class="tile-container" [class.active]="focused" [class.disabled]="disabled">\n <div\n class="tile"\n *ngFor="let option of _options; let i = index"\n [ngClass]="{ active: option.checked, disabled: option.disabled }"\n (click)="select($event, option)"\n [attr.data-automation-id]="option.label || option"\n >\n <input\n class="tiles-input"\n [name]="name"\n type="radio"\n [value]="option.checked || option.value || option"\n [attr.id]="name + i"\n (change)="select($event, option)"\n (focus)="setFocus(true)"\n (blur)="setFocus(false)"\n [disabled]="disabled"\n />\n <label [attr.for]="name + i" [attr.data-automation-id]="option.label || option">\n {{ option.label || option }}\n </label>\n </div>\n </div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],xn.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},xn.propDecorators={name:[{type:t.Input}],options:[{type:t.Input}],required:[{type:t.Input}],disabled:[{type:t.Input,args:["controlDisabled"]}],onChange:[{type:t.Output}],onSelectedOptionClick:[{type:t.Output}],onDisabledOptionClick:[{type:t.Output}]};var Rn=function(){};Rn.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.ReactiveFormsModule],declarations:[xn],exports:[xn]}]}];var Mn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Fn})),multi:!0},Fn=function(){function e(e,n,o,a){this.element=e,this.labels=n,this._changeDetectorRef=o,this._zone=a,this.icon="search",this.placeholder="Search...",this.alwaysOpen=!1,this.theme="positive",this.closeOnSelect=!0,this.searchChanged=new t.EventEmitter,this.focused=!1,this._onChange=function(){},this._onTouched=function(){}}return e.prototype.showSearch=function(e,t){var n=this;void 0===t&&(t=!1),this.panelOpen||setTimeout((function(){var e=n.input.nativeElement;e&&e.focus()}),10)},e.prototype.onFocus=function(){var e=this;this._zone.run((function(){e.focused=!0,e.openPanel()}))},e.prototype.onBlur=function(){this.focused=!1},e.prototype.openPanel=function(){this.overlay.openPanel()},e.prototype.closePanel=function(){this.overlay.closePanel()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"active",{get:function(){return this.panelOpen||this.alwaysOpen},enumerable:!1,configurable:!0}),e.prototype._handleKeydown=function(e){e.keyCode!==C.ESCAPE&&e.keyCode!==C.ENTER&&e.keyCode!==C.TAB||!this.panelOpen||(this.closePanel(),e.stopPropagation())},e.prototype._handleInput=function(e){var t=this;document.activeElement===e.target&&(this._onChange(e.target.value),this.debounceSearchChange&&clearTimeout(this.debounceSearchChange),this.debounceSearchChange=setTimeout((function(){t.searchChanged.emit(e.target.value)}),400))},e.prototype.writeValue=function(e){this._setValue(e)},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype._setValue=function(e){this.value=e;var t=e;e&&this.displayField&&(t=e.hasOwnProperty(this.displayField)?e[this.displayField]:e),this.displayValue=t||"",this.input.nativeElement.value=this.displayValue,this._changeDetectorRef.markForCheck()},e.prototype.setValueAndClose=function(e){e&&e.value&&(this._setValue(e.value),this._onChange(e.value)),this.closePanel()},e.prototype.clearValue=function(e){this.writeValue(null),this._onChange(null)},e}();Fn.decorators=[{type:t.Component,args:[{selector:"novo-search",providers:[Mn],changeDetection:t.ChangeDetectionStrategy.OnPush,template:'\n \x3c!-- SEARCH ICON --\x3e\n <button\n theme="fab"\n [color]="theme"\n [icon]="icon"\n (click)="showSearch()"\n [tooltip]="hint"\n tooltipPosition="bottom"\n data-automation-id="novo-search-fab"\n ></button>\n \x3c!-- SEARCH INPUT --\x3e\n <input\n type="text"\n [attr.name]="name"\n [attr.value]="displayValue"\n [attr.placeholder]="placeholder"\n (focus)="onFocus()"\n (blur)="onBlur()"\n (keydown)="_handleKeydown($event)"\n (input)="_handleInput($event)"\n #input\n data-automation-id="novo-search-input"\n />\n \x3c!-- SEARCH OVERLAY --\x3e\n <novo-overlay-template\n [parent]="element"\n [closeOnSelect]="closeOnSelect"\n position="above-below"\n (select)="closePanel()"\n (closing)="onBlur()"\n >\n <ng-content></ng-content>\n </novo-overlay-template>\n '}]}],Fn.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef},{type:t.NgZone}]},Fn.propDecorators={name:[{type:t.Input}],icon:[{type:t.Input}],placeholder:[{type:t.Input}],alwaysOpen:[{type:t.Input}],theme:[{type:t.Input}],closeOnSelect:[{type:t.Input}],displayField:[{type:t.Input}],displayValue:[{type:t.Input}],hint:[{type:t.Input}],searchChanged:[{type:t.Output}],focused:[{type:t.HostBinding,args:["class.focused"]}],overlay:[{type:t.ViewChild,args:[yt]}],input:[{type:t.ViewChild,args:["input",{static:!0}]}],active:[{type:t.HostBinding,args:["class.active"]}]};var Ln=function(){};Ln.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_,Nt,U,vt],declarations:[Fn],exports:[Fn]}]}];var Nn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Bn})),multi:!0},Bn=function(){function e(e,n){this.labels=e,this.element=n,this.weekStart=0,this.onSelect=new t.EventEmitter(!1),this.weekdays=[],this.months=[],this.years=[],this.view="days",this.rangeSelectMode="startDate",this._onChange=function(){},this._onTouched=function(){}}return e.prototype.ngOnInit=function(){for(var e=new Date,t=this.minYear?Number(this.minYear):e.getFullYear()-100,n=this.maxYear?Number(this.maxYear):e.getFullYear()+10,o=t;o<=n;o++)this.years.push(o);this.weekdays=this.setupWeekdays(),this.months=this.labels.getMonths(),this.selectedLabel=this.labels.startDate,this.selected2Label=this.labels.endDate,this.updateView(this.model,!1,!0)},e.prototype.ngOnChanges=function(e){var t=e.weekRangeSelect;t&&t.currentValue!==t.previousValue&&!t.firstChange&&this.clearRange();var n=e.weekStart;n&&n.currentValue!==n.previousValue&&!n.firstChange&&(this.weekdays=this.setupWeekdays(),this.updateView(this.model,!1,!1))},e.prototype.setupWeekdays=function(){var e=this.labels.getWeekdays();if(!R.isBlank(this.weekStart)&&this.weekStart>0&&this.weekStart<=6){var t=e.splice(this.weekStart);e=ae(t,e)}return e},e.prototype.isSelectingRange=function(e,t,n,o,a,i,r){if(e&&!r){var s="endDate"===i&&n&&o&&p.isAfter(t,o)&&p.isBefore(t,a),l="startDate"===i&&n&&o&&p.isBefore(t,n)&&p.isAfter(t,a),c=!n&&o&&p.isBefore(t,o)&&p.isAfter(t,a);return n&&!o&&p.isAfter(t,n)&&p.isBefore(t,a)||c||l||s}return!1},e.prototype.isEndFill=function(e,t,n,o){return!!(e&&o&&n)&&(!p.isSameDay(n,o)&&p.isSameDay(t,o)&&p.isAfter(t,n))},e.prototype.isStartFill=function(e,t,n,o){return!!(e&&o&&n)&&(!p.isSameDay(n,o)&&p.isSameDay(t,n)&&p.isBefore(t,o))},e.prototype.isFiller=function(e,t,n,o){return!!(e&&o&&n)&&(p.isAfter(t,n)&&p.isBefore(t,o)||p.isSameDay(t,n)||p.isSameDay(t,o))},e.prototype.isSelected=function(e,t,n,o){return e?t&&(n&&t.getDate()===n.getDate()&&t.getMonth()===n.getMonth()&&t.getFullYear()===n.getFullYear()||o&&t.getDate()===o.getDate()&&t.getMonth()===o.getMonth()&&t.getFullYear()===o.getFullYear()):t.getDate()===n.getDate()&&t.getMonth()===n.getMonth()&&t.getFullYear()===n.getFullYear()},e.prototype.isDisabled=function(e,t,n){return p.isBefore(e,t)||p.isAfter(e,n)},e.prototype.updateView=function(e,t,n){if(e&&null===e.startDate)this.clearRange();else{e||this.clearRange();var o=e?new Date(e):new Date;o=this.removeTime(o),this.month=new Date(o),this.monthLabel=this.labels.formatDateWithFormat(this.month,{month:"short"});var a=new Date(o.getTime());a.setDate(1),this.removeTime(a.setDate(1)),this.buildMonth(a,this.month),n&&this.select(null,{date:o},t)}},e.prototype.setToday=function(){var e=new Date;this.updateView(e,!0,!0),this.open(null,"days")},e.prototype.clearRange=function(){this.selected=null,this.selectedLabel=this.labels.startDate,this.selected2=null,this.selected2Label=this.labels.endDate},e.prototype.setMonth=function(e){var t=this.month?this.month:new Date,n=p.setMonth(t,e);this.updateView(n,!0,!1),this.open(null,"days")},e.prototype.setYear=function(e){var t=this.month?this.month:new Date,n=p.setYear(t,e);this.updateView(n,!0,!1),this.open(null,"days")},e.prototype.select=function(e,t,n){R.swallowEvent(e),this.range?this.weekRangeSelect?(this.selected=p.startOfWeek(t.date,{weekStartsOn:this.weekStart}),this.selected2=p.endOfWeek(t.date,{weekStartsOn:this.weekStart}),this.selectedLabel=this.labels.formatDateWithFormat(this.selected,{month:"short",day:"2-digit",year:"numeric"}),this.selected2Label=this.labels.formatDateWithFormat(this.selected2,{month:"short",day:"2-digit",year:"numeric"}),!n&&this.weekRangeSelect&&this.fireRangeSelect()):"startDate"===this.rangeSelectMode?(this.selected=p.startOfDay(t.date),this.selectedLabel=this.labels.formatDateWithFormat(this.selected,{month:"short",day:"2-digit",year:"numeric"}),this.selected2&&p.isAfter(t.date,this.selected2)&&(this.selected2=null,this.selected2Label=this.labels.endDate),e&&(this.rangeSelectMode="endDate")):"endDate"===this.rangeSelectMode&&(this.selected2=p.endOfDay(t.date),this.selected2Label=this.labels.formatDateWithFormat(this.selected2,{month:"short",day:"2-digit",year:"numeric"}),this.selected&&p.isBefore(t.date,this.selected)&&(this.selected=null,this.selectedLabel=this.labels.startDate),e&&(this.rangeSelectMode="startDate")):(this.selected=t.date,this.selectedLabel=this.labels.formatDateWithFormat(this.selected,{month:"short",day:"2-digit",year:"numeric"}),this.updateHeading()),n&&this.selected&&(this.range&&this.selected&&this.selected2&&(this.fireRangeSelect(),this._onChange({startDate:this.selected,endDate:this.selected2?this.selected2:null}),this.model={startDate:this.selected,endDate:this.selected2?this.selected2:null}),this.range||(this.onSelect.next({month:this.labels.formatDateWithFormat(this.selected,{month:"long"}),year:this.selected.getFullYear(),day:this.labels.formatDateWithFormat(this.selected,{weekday:"long"}),date:this.selected}),this._onChange(this.selected),this.model=this.selected))},e.prototype.fireRangeSelect=function(){p.isBefore(this.selected,this.selected2)&&this.onSelect.next({startDate:{month:this.labels.formatDateWithFormat(this.selected,{month:"long"}),year:this.selected.getFullYear(),day:this.labels.formatDateWithFormat(this.selected,{weekday:"long"}),date:this.selected},endDate:{month:this.labels.formatDateWithFormat(this.selected2,{month:"long"}),year:this.selected2.getFullYear(),day:this.labels.formatDateWithFormat(this.selected2,{weekday:"long"}),date:this.selected2}})},e.prototype.open=function(e,t){var n=this;R.swallowEvent(e),t===this.view?this.view="days":this.view=t,"years"!==this.view&&"months"!==this.view||setTimeout((function(){var e=n.element.nativeElement.querySelector(".calendar-content."+n.view),t=n.element.nativeElement.querySelector(".calendar-content."+n.view+" ."+("years"===n.view?"year":"month")+".selected");e&&t&&(e.scrollTop=t.offsetTop-100)})),this.updateHeading()},e.prototype.prevMonth=function(e){R.swallowEvent(e);var t=p.subMonths(this.month,1);this.updateView(t,!1,!1)},e.prototype.nextMonth=function(e){R.swallowEvent(e);var t=p.addMonths(this.month,1);this.updateView(t,!1,!1)},e.prototype.updateHeading=function(){this.selected&&(this.heading={month:this.labels.formatDateWithFormat(this.selected,{month:"long"}),year:this.selected.getFullYear(),day:this.labels.formatDateWithFormat(this.selected,{weekday:"long"}),date:this.selected.getDate()})},e.prototype.removeTime=function(e){var t=new Date(e);return t.setHours(12),t.setSeconds(0),t.setMilliseconds(0),t},e.prototype.buildMonth=function(e,t){this.weeks=[];for(var n=!1,o=p.startOfWeek(e,{weekStartsOn:this.weekStart}),a=o.getMonth(),i=0;!n;)this.weeks.push({days:this.buildWeek(new Date(o.getTime()),t)}),o=p.addDays(o,7),n=i++>2&&a!==o.getMonth(),a=o.getMonth()},e.prototype.buildWeek=function(e,t){for(var n=[],o=0;o<7;o++)n.push({name:this.weekdays[o],number:e.getDate(),isToday:p.isToday(e),date:e}),e=p.addDays(e,1);return n},e.prototype.toggleRangeSelect=function(e){this.rangeSelectMode=e},e.prototype.rangeHover=function(e,t){this.hoverDay=t.date},e.prototype.writeValue=function(e){this.model=e,R.isDate(e)&&this.updateView(e,!1,!0)},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e}();Bn.decorators=[{type:t.Component,args:[{selector:"novo-date-picker",providers:[Nn],animations:[d.trigger("startDateTextState",[d.state("startDate",d.style({opacity:"1.0"})),d.state("endDate",d.style({opacity:"0.6"})),d.transition("startDate <=> endDate",d.animate("200ms ease-in"))]),d.trigger("endDateTextState",[d.state("startDate",d.style({opacity:"0.6"})),d.state("endDate",d.style({opacity:"1.0"})),d.transition("startDate <=> endDate",d.animate("200ms ease-in"))]),d.trigger("indicatorState",[d.state("startDate",d.style({transform:"translateX(0%)"})),d.state("endDate",d.style({transform:"translateX(100%)"})),d.transition("startDate <=> endDate",d.animate("200ms ease-in"))])],template:'\n <div class="calendar">\n <div class="calendar-top" *ngIf="!inline && !range">\n <h4 class="day" [attr.data-automation-id]="heading?.day">{{heading?.day}}</h4>\n <h2 class="month" [attr.data-automation-id]="heading?.month">{{heading?.month}}</h2>\n <h1 class="date" [attr.data-automation-id]="heading?.date">{{heading?.date}}</h1>\n <h3 class="year" [attr.data-automation-id]="heading?.year">{{heading?.year}}</h3>\n </div>\n <div class="date-range-tabs" *ngIf="range" [class.week-select-mode]="weekRangeSelect">\n <span class="range-tab" (click)="toggleRangeSelect(\'startDate\')" [@startDateTextState]="rangeSelectMode" data-automation-id="calendar-start-date">{{selectedLabel}}</span>\n <span class="range-tab" (click)="toggleRangeSelect(\'endDate\')" [@endDateTextState]="rangeSelectMode" data-automation-id="calendar-end-date">{{selected2Label}}</span>\n <i class="indicator" [@indicatorState]="rangeSelectMode"></i>\n </div>\n <div class="calendar-header">\n <span class="previous" (click)="prevMonth($event)" data-automation-id="calendar-previous"></span>\n <span class="heading">\n <span class="month" (click)="open($event, \'months\')" data-automation-id="header-month">{{monthLabel}}</span>\n <span class="year" (click)="open($event, \'years\')" data-automation-id="header-year">{{month?.getFullYear()}}</span>\n </span>\n <span class="next" (click)="nextMonth($event)" data-automation-id="calendar-next"></span>\n </div>\n <table class="calendar-content days" cellspacing="0" cellpadding="0" [hidden]="!(view==\'days\')">\n <thead>\n <tr>\n <th *ngFor="let day of weekdays" title="{{day}}" class="weekday" [attr.data-automation-id]="day.substr(0, 2)">{{day.substr(0, 2)}}</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor="let week of weeks">\n <td *ngFor="let day of week.days" [ngClass]="{\n today: day.isToday,\n \'notinmonth\': day.date.getMonth() !== this.month.getMonth(),\n selected: isSelected(range, day.date, selected, selected2),\n filler: isFiller(range, day.date, selected, selected2),\n startfill: isStartFill(range, day.date, selected, selected2),\n endfill: isEndFill(range, day.date, selected, selected2),\n \'selecting-range\': isSelectingRange(range, day.date, selected, selected2, hoverDay, rangeSelectMode, weekRangeSelect)\n }" (mouseover)="rangeHover($event, day)" [attr.data-automation-id]="day.number">\n <button class="day" [attr.data-automation-id]="day.number" [disabled]="isDisabled(day.date, start, end)" (click)="select($event, day, true)">{{day.number}}</button>\n </td>\n </tr>\n </tbody>\n </table>\n <section class="calendar-content months" [hidden]="view !== \'months\'">\n <div *ngFor="let month of months;let i = index" (click)="setMonth(i)">\n <div class="month" [ngClass]="{selected: i === selected?.getMonth()}" [attr.data-automation-id]="month">{{month}}</div>\n </div>\n </section>\n <section class="calendar-content years" [hidden]="view !== \'years\'">\n <div *ngFor="let year of years" (click)="setYear(year)">\n <div class="year" [ngClass]="{selected: year == selected?.getFullYear()}" [attr.data-automation-id]="year">{{year}}</div>\n </div>\n </section>\n <div class="calendar-footer">\n <span (click)="setToday()" class="today" data-automation-id="calendar-today">{{ labels.today }}</span>\n </div>\n </div>\n '}]}],Bn.ctorParameters=function(){return[{type:Ne},{type:t.ElementRef}]},Bn.propDecorators={minYear:[{type:t.Input}],maxYear:[{type:t.Input}],start:[{type:t.Input}],end:[{type:t.Input}],inline:[{type:t.Input}],range:[{type:t.Input}],weekRangeSelect:[{type:t.Input}],weekStart:[{type:t.Input}],onSelect:[{type:t.Output}]};var Hn=function(){function e(e){this.labels=e}return e.prototype.getTimeMask=function(e){var t,n,o=[/\d/,/\d/,/:/,/\d/,/\d/],a=[],i=this.labels.timeFormatPlaceholderAM.toLowerCase();if(e)return o;if((a=i.split("hh:mm"))&&a.length){o=[];try{for(var r=ne(a),s=r.next();!s.done;s=r.next()){var l=s.value;if(""===l)o=o.concat([/\d/,/\d|:/,/:|\d/,/\d|\w|\s/,/\d|\s|\w/]);else if(l.length)for(var c=0;c<l.length;c++)o.push(/\s|\w|\d|\./)}}catch(e){t={error:e}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(t)throw t.error}}}return o},e.prototype.getDateMask=function(){return[/\d/,/\d|\/|\.|\-/,/\/|\.|\-|\d/,/\d|\/|\.|\-/,/\d|\/|\.|\-/,/\d|\/|\.|\-/,/\d|\/|\.|\-/,/\d|\/|\.|\-/,/\d/,/\d/]},e.prototype.getDateTimeMask=function(e){return void 0===e&&(e=!1),ae(this.getDateMask(),[/\,?/,/\s/],this.getTimeMask(e))},e.prototype.getTimePlaceHolder=function(e){return e?this.labels.timeFormatPlaceholder24Hour:this.labels.timeFormatPlaceholderAM},e.prototype.parseDateString=function(e){var t,n,o,a,i,r=this.labels.dateFormatString(),s=new Date;if(r=R.isEmpty(r)?"mm/dd/yyyy":r.toLowerCase(),t=/(\w+)[\/|\.|\-](\w+)[\/|\.|\-](\w+)/gi.exec(r),n=/(\d+)[\/|\.|\-](\d+)[\/|\.|\-](\d+)/gi.exec(e),t&&4===t.length&&n&&4===n.length){for(var l=1;l<4;l++)t[l].includes("m")?a=parseInt(n[l],10)-1:t[l].includes("d")?i=parseInt(n[l],10):o=parseInt(n[l],10);a>=0&&a<=11&&o>1900&&i>0&&i<=31&&(s=new Date(o,a,i))}else if(t&&4===t.length&&e.length>=1){var c=/\d{1,4}(\/|\.|\-)(\d{1,2})/.exec(e),d=/^(\d{1,4})$/.exec(e),p=/\w+(\/|\.|\-)\w+[\/|\.|\-]\w+/gi.exec(r),u=e[e.length-1].match(/\/|\.|\-/);(c&&3===c.length&&this.isValidDatePart(c[2],t[2])&&!u||d&&2===d.length&&this.isValidDatePart(d[1],t[1])&&!u)&&(e=""+e+p[1])}return[s,e]},e.prototype.parseTimeString=function(e,t){var n,o,a,i=new Date,r=this.labels.timeFormatAM,s=this.labels.timeFormatPM;if(!e||!e.includes(":"))return[i,e];if(!t&&r&&s){var l=[],c=!1;if(r=this.labels.timeFormatAM.toLowerCase(),s=this.labels.timeFormatPM.toLowerCase(),(e=e.toLowerCase()).includes(r)?l=e.split(r):e.includes(s)&&(l=e.split(s),c=!0),l&&l.length)try{for(var d=ne(l),p=d.next();!p.done;p=d.next()){var u=p.value;u&&u.trim().includes(":")&&(a=u.trim().split(":"))}}catch(e){n={error:e}}finally{try{p&&!p.done&&(o=d.return)&&o.call(d)}finally{if(n)throw n.error}}if(a&&a.length&&2===a.length){var m=parseInt(a[0],10);12===m&&c?m=12:c?m+=12:12===m&&(m=0),i.setHours(m),i.setMinutes(parseInt(a[1],10)),i.setSeconds(0)}}else(a=/(\d{1,2}):(\d{2})/.exec(e))&&a.length&&3===a.length&&(i.setHours(parseInt(a[1],10)),i.setMinutes(parseInt(a[2],10)),i.setSeconds(0));return[i,e]},e.prototype.parseString=function(e,t,n){switch(n){case"datetime":var o=e.replace(/-/g,"/").split(" "),a=oe(this.parseDateString(o[0]),2),i=a[0],r=a[1];if(o.length>1){var s=oe(this.parseTimeString(o[1],t),2),l=s[0],c=s[1];return[new Date(i.setHours(l.getHours(),l.getMinutes())),r+" "+c]}return[i,r];case"date":return this.parseDateString(e);case"time":return this.parseTimeString(e,t);default:return}},e.prototype.isValidDatePart=function(e,t){var n=parseInt(e,10);return!(!t.includes("m")||!(n>=2||2===e.length))||(!(!t.includes("d")||!(n>=4||2===e.length))||!!(t.includes("y")&&n>=1e3))},e}();Hn.decorators=[{type:t.Injectable}],Hn.ctorParameters=function(){return[{type:Ne}]};var _n={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Gn})),multi:!0},Gn=function(){function e(e,n,o,a){this.element=e,this.labels=n,this._changeDetectorRef=o,this.dateFormatService=a,this.formattedValue="",this._onChange=function(){},this._onTouched=function(){},this.textMaskEnabled=!0,this.allowInvalidDate=!1,this.disabled=!1,this.weekStart=0,this.blurEvent=new t.EventEmitter,this.focusEvent=new t.EventEmitter,this.changeEvent=new t.EventEmitter,this.placeholder=this.labels.dateFormatString().toUpperCase()||this.labels.dateFormatPlaceholder}return e.prototype.ngOnInit=function(){this.userDefinedFormat=!!this.format&&!this.format.match(/^(DD\/MM\/YYYY|MM\/DD\/YYYY)$/g),this.userDefinedFormat||!this.textMaskEnabled||this.allowInvalidDate?this.maskOptions={mask:!1}:this.maskOptions=this.maskOptions||{mask:this.dateFormatService.getDateMask(),pipe:x.default(this.format||this.labels.dateFormatString().toLowerCase()),keepCharPositions:!1,guide:!0}},e.prototype.openPanel=function(){this.disabled||this.overlay.openPanel()},e.prototype.closePanel=function(){this.overlay.closePanel()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),e.prototype._handleKeydown=function(e){e.keyCode!==C.ESCAPE&&e.keyCode!==C.ENTER&&e.keyCode!==C.TAB||!this.panelOpen||(this._handleEvent(e,!0),this.closePanel(),e.stopPropagation())},e.prototype._handleInput=function(e){document.activeElement===e.target&&this._handleEvent(e,!1)},e.prototype._handleBlur=function(e){this.blurEvent.emit(e)},e.prototype._handleFocus=function(e){this.openPanel(),this.focusEvent.emit(e)},e.prototype._handleEvent=function(e,t){var n=e.target.value;""===n?(this.clearValue(),this.closePanel()):(this.formatDate(n,t),this.openPanel())},e.prototype.formatDate=function(e,t){try{var n=oe(this.dateFormatService.parseString(e,!1,"date"),2),o=n[0];n[1];if(isNaN(o.getUTCDate()))this.dispatchOnChange(null,t);else{var a=new Date(o);this.dispatchOnChange(a,t)}}catch(e){}},e.prototype.writeValue=function(e){var t=this;Promise.resolve(null).then((function(){return t._setTriggerValue(e)}))},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e.prototype.dispatchOnChange=function(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1),e!==this.value&&(this._onChange(e),this.changeEvent.emit(e),t?!n&&this.writeValue(e):!n&&this._setCalendarValue(e))},e.prototype._setTriggerValue=function(e){this._setCalendarValue(e),this._setFormValue(e),this._changeDetectorRef.markForCheck()},e.prototype._setCalendarValue=function(e){e instanceof Date&&this.value instanceof Date&&(e=new Date(e).setHours(0,0,0,0)),this.value=e},e.prototype._setFormValue=function(e){if(this.value){var t=this.formatDateValue(this.value);this.formattedValue=t}else this.formattedValue=""},e.prototype.setValueAndClose=function(e){e&&e.date&&this.dispatchOnChange(e.date,!0),this.closePanel()},e.prototype.clearValue=function(){this.formattedValue="",this.dispatchOnChange(null)},e.prototype.formatDateValue=function(e){var t=e;try{return e?this.userDefinedFormat&&p.isValid(e)?p.format(e,this.format):(e instanceof Date||(e=new Date(e)),isNaN(e.valueOf())&&this.allowInvalidDate?t:this.labels.formatDateWithFormat(e,{month:"2-digit",day:"2-digit",year:"numeric"})):""}catch(e){return""}},Object.defineProperty(e.prototype,"hasValue",{get:function(){return!R.isEmpty(this.value)},enumerable:!1,configurable:!0}),e}();Gn.decorators=[{type:t.Component,args:[{selector:"novo-date-picker-input",providers:[_n],template:'\n <input\n type="text"\n [name]="name"\n [(ngModel)]="formattedValue"\n [textMask]="maskOptions"\n [placeholder]="placeholder"\n (focus)="_handleFocus($event)"\n (keydown)="_handleKeydown($event)"\n (input)="_handleInput($event)"\n (blur)="_handleBlur($event)"\n #input\n data-automation-id="date-input"\n [disabled]="disabled"\n />\n <i *ngIf="!hasValue" (click)="openPanel()" class="bhi-calendar"></i>\n <i *ngIf="hasValue" (click)="clearValue()" class="bhi-times"></i>\n <novo-overlay-template [parent]="element" position="above-below">\n <novo-date-picker\n [start]="start"\n [end]="end"\n inline="true"\n (onSelect)="setValueAndClose($event)"\n [ngModel]="value"\n [weekStart]="weekStart"\n ></novo-date-picker>\n </novo-overlay-template>\n '}]}],Gn.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef},{type:Hn}]},Gn.propDecorators={name:[{type:t.Input}],start:[{type:t.Input}],end:[{type:t.Input}],placeholder:[{type:t.Input}],maskOptions:[{type:t.Input}],format:[{type:t.Input}],textMaskEnabled:[{type:t.Input}],allowInvalidDate:[{type:t.Input}],disabled:[{type:t.HostBinding,args:["class.disabled"]},{type:t.Input}],weekStart:[{type:t.Input}],blurEvent:[{type:t.Output}],focusEvent:[{type:t.Output}],changeEvent:[{type:t.Output}],overlay:[{type:t.ViewChild,args:[yt]}]};var Vn=function(){};Vn.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,vt,S.TextMaskModule],declarations:[Bn,Gn],exports:[Bn,Gn]}]}];var Un=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.elementRef=n,a.renderer=o,a.role="gridcell",a.subscriptions=[],o.setAttribute(n.nativeElement,"data-automation-id","novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-cell"),a}return te(t,e),t.prototype.ngOnInit=function(){var e=this;this.column.cellClass&&this.renderer.addClass(this.elementRef.nativeElement,this.column.cellClass(this.row)),this.column.rightAlignCellContent&&this.renderer.addClass(this.elementRef.nativeElement,"novo-data-table-cell-align-right"),this.calculateWidths(),this.subscriptions.push(this.resized.subscribe((function(t){t===e.column&&e.calculateWidths()})))},t.prototype.ngOnDestroy=function(){this.subscriptions.forEach((function(e){e.unsubscribe()}))},t.prototype.calculateWidths=function(){this.column.width&&(this.renderer.setStyle(this.elementRef.nativeElement,"min-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"max-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"width",this.column.width+"px"))},t}(y.CdkCell);Un.decorators=[{type:t.Component,args:[{selector:"novo-data-table-cell",template:'\n <ng-container *ngTemplateOutlet="template; context: {$implicit: row, col: column}"></ng-container>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Un.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},Un.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],template:[{type:t.Input}],column:[{type:t.Input}],resized:[{type:t.Input}]};var Kn=function(e){function t(t,n,o,a,i){var r=e.call(this,t,n)||this;return r.columnDef=t,r.dataTable=a,r.ref=i,r.role="gridcell",r.maxSelected=void 0,r.checked=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-checkbox-cell"),r.selectionSubscription=r.dataTable.state.selectionSource.subscribe((function(){r.checked=r.dataTable.isSelected(r.row),r.ref.markForCheck()})),r.resetSubscription=r.dataTable.state.resetSource.subscribe((function(){r.checked=!1,r.ref.markForCheck()})),r}return te(t,e),Object.defineProperty(t.prototype,"isAtLimit",{get:function(){return this.maxSelected&&this.dataTable.state.selectedRows.size>=this.maxSelected&&!this.checked},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){this.checked=this.dataTable.isSelected(this.row)},t.prototype.onClick=function(){this.isAtLimit||this.dataTable.selectRow(this.row)},t.prototype.getTooltip=function(){return this.isAtLimit?"More than "+this.maxSelected+" items are not able to be selected at one time":""},t.prototype.ngOnDestroy=function(){this.selectionSubscription&&this.selectionSubscription.unsubscribe(),this.resetSubscription&&this.resetSubscription.unsubscribe()},t}(y.CdkCell);Kn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-checkbox-cell",template:'\n <div class="data-table-checkbox" (click)="onClick()" [tooltip]="getTooltip()" tooltipPosition="right">\n <input type="checkbox" [checked]="checked">\n <label>\n <i [class.bhi-checkbox-disabled]="isAtLimit"\n [class.bhi-checkbox-empty]="!checked"\n [class.bhi-checkbox-filled]="checked"></i>\n </label>\n </div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Kn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:on},{type:t.ChangeDetectorRef}]},Kn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],maxSelected:[{type:t.Input}]};var zn=function(e){function t(t,n,o,a,i){var r=e.call(this,t,n)||this;return r.columnDef=t,r.dataTable=a,r.ref=i,r.role="gridcell",r.expanded=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-expand-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-expand-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-expand-cell"),r.expandSubscription=r.dataTable.state.expandSource.subscribe((function(){r.expanded=r.dataTable.isExpanded(r.row),r.ref.markForCheck()})),r}return te(t,e),t.prototype.ngOnInit=function(){this.expanded=this.dataTable.isExpanded(this.row)},t.prototype.onClick=function(){this.dataTable.expandRow(this.row)},t.prototype.ngOnDestroy=function(){this.expandSubscription&&this.expandSubscription.unsubscribe()},t}(y.CdkCell);zn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-expand-cell",template:'\n <i class="bhi-next data-table-icon" novo-data-table-expander="true" [class.expanded]="expanded"></i>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],zn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:on},{type:t.ChangeDetectorRef}]},zn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}]};var jn=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t.rowClass="novo-data-table-header-row",t.fixedHeader=!1,t.role="row",t}return te(t,e),t}(y.CdkHeaderRow);jn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-header-row",template:y.CDK_ROW_TEMPLATE,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],jn.propDecorators={rowClass:[{type:t.HostBinding,args:["class"]}],fixedHeader:[{type:t.HostBinding,args:["class.fixed-header"]},{type:t.Input}],role:[{type:t.HostBinding,args:["attr.role"]}]};var $n=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t.rowClass="novo-data-table-row",t.role="row",t}return te(t,e),t}(y.CdkRow);$n.decorators=[{type:t.Component,args:[{selector:"novo-data-table-row",template:y.CDK_ROW_TEMPLATE,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],$n.propDecorators={rowClass:[{type:t.HostBinding,args:["class"]}],role:[{type:t.HostBinding,args:["attr.role"]}],id:[{type:t.HostBinding,args:["attr.id"]},{type:t.Input}],dataAutomationId:[{type:t.HostBinding,args:["attr.data-automation-id"]},{type:t.Input}]};var Wn=function(e){function t(t,n,o,a,i){var r=e.call(this,t,n)||this;return r.dataTable=a,r.ref=i,r.role="columnheader",r.expanded=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-expand-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-expand-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-expand-header-cell"),r.expandSubscription=r.dataTable.state.expandSource.subscribe((function(){r.expanded=r.dataTable.allCurrentRowsExpanded(),r.ref.markForCheck()})),r}return te(t,e),t.prototype.ngOnDestroy=function(){this.expandSubscription&&this.expandSubscription.unsubscribe()},t.prototype.expandAll=function(){this.dataTable.expandRows(!this.expanded)},t}(y.CdkHeaderCell);Wn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-expand-header-cell",template:'\n <i class="bhi-next data-table-icon" novo-data-table-expander="true" (click)="expandAll()" [class.expanded]="expanded"></i>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Wn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:on},{type:t.ChangeDetectorRef}]},Wn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}]};var Zn=function(){function e(e){this.sanitizer=e,this.theme="danger",this.icon="caution",this.hasDialogue=!1,this.isCloseable=!1,this.closed=new t.EventEmitter,this.show=!1,this.animate=!1,this.parent=null,this.launched=!1}return Object.defineProperty(e.prototype,"message",{set:function(e){this._message=this.sanitizer.bypassSecurityTrustHtml(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.launched||(this.position=null,this.time=null,this.iconClass="bhi-"+this.icon,this.alertTheme=this.theme+" toast-container embedded",this.hasDialogue&&(this.alertTheme+=" dialogue"))},e.prototype.ngOnChanges=function(e){this.iconClass="bhi-"+this.icon,this.alertTheme=this.theme+" toast-container embedded",this.hasDialogue&&(this.alertTheme+=" dialogue")},e.prototype.clickHandler=function(e){this.isCloseable||(e&&(e.stopPropagation(),e.preventDefault()),this.parent?this.parent.hide(this):this.closed.emit({closed:!0}))},e.prototype.close=function(e){e&&(e.stopPropagation(),e.preventDefault()),this.parent?this.parent.hide(this):this.closed.emit({closed:!0})},e}();Zn.decorators=[{type:t.Component,args:[{selector:"novo-toast",host:{"[class]":"alertTheme","[class.show]":"show","[class.animate]":"animate","[class.embedded]":"embedded","(click)":"!isCloseable && clickHandler($event)"},template:'\n <div class="toast-icon">\n <i [ngClass]="iconClass"></i>\n </div>\n <div class="toast-content">\n <h5 *ngIf="title">{{title}}</h5>\n <p *ngIf="_message" [class.message-only]="!title" [innerHtml]="_message"></p>\n <div *ngIf="link" class="link-generated">\n <input type="text" [value]="link" onfocus="this.select();"/>\n </div>\n <div class="dialogue">\n <ng-content></ng-content>\n </div>\n </div>\n <div class="close-icon" *ngIf="isCloseable" (click)="close($event)">\n <i class="bhi-times"></i>\n </div>\n '}]}],Zn.ctorParameters=function(){return[{type:f.DomSanitizer}]},Zn.propDecorators={theme:[{type:t.Input}],icon:[{type:t.Input}],title:[{type:t.Input}],hasDialogue:[{type:t.Input}],link:[{type:t.Input}],isCloseable:[{type:t.Input}],message:[{type:t.Input}],closed:[{type:t.Output}]};var Yn=function(){function e(e){this.componentUtils=e,this.references=[],this.icons={default:"bell",success:"check",info:"info",warning:"warning",danger:"remove"},this.defaults={hideDelay:3500,position:"growlTopRight",theme:"default"}}return Object.defineProperty(e.prototype,"parentViewContainer",{set:function(e){this._parentViewContainer=e},enumerable:!1,configurable:!0}),e.prototype.alert=function(e,t){var n=this;return void 0===t&&(t=Zn),new Promise((function(o){if(n._parentViewContainer){var a=n.componentUtils.append(t,n._parentViewContainer);n.references.push(a),n.handleAlert(a.instance,e),o(a)}else console.error("No parent view container specified for the ToastService. Set it inside your main application. \nthis.toastService.parentViewContainer = view (ViewContainerRef)")}))},e.prototype.isVisible=function(e){return e.show},e.prototype.hide=function(e){var t=this;e.animate=!1,setTimeout((function(){e.show=!1;var n=t.references.filter((function(t){return t.instance===e}))[0];n&&(t.references.splice(t.references.indexOf(n),1),n.destroy())}),300)},e.prototype.handleAlert=function(e,t){var n=this;this.setToastOnSession(e,t),setTimeout((function(){n.show(e)}),20),e.isCloseable||this.toastTimer(e)},e.prototype.setToastOnSession=function(e,t){var n="object"==typeof t?t:{};e.parent=this,e.title=n.title||"",e.message=n.message||"",e.hideDelay=n.hideDelay||this.defaults.hideDelay,e.link=n.link||"",e.isCloseable=n.isCloseable||!1;var o=n.customClass||"",a=n.theme||this.defaults.theme,i=n.position||this.defaults.position,r=n.icon||this.icons.default;e.iconClass="bhi-"+r,e.launched=!0,e.alertTheme=a+" "+i+" "+o+" toast-container launched"},e.prototype.show=function(e){e.show=!0,setTimeout((function(){e.animate=!0}),25)},e.prototype.toastTimer=function(e){var t=this;e.hideDelay<0||setTimeout((function(){t.hide(e)}),e.hideDelay)},e}();Yn.decorators=[{type:t.Injectable}],Yn.ctorParameters=function(){return[{type:mt}]};var qn=function(e){function t(t,n,o,a,i,r){var s=e.call(this,t,n)||this;return s.dataTable=a,s.ref=i,s.toaster=r,s.role="columnheader",s.maxSelected=void 0,s.checked=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-checkbox-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-checkbox-header-cell"),s.selectionSubscription=s.dataTable.state.selectionSource.subscribe((function(){s.checked=s.dataTable.allCurrentRowsSelected(),s.ref.markForCheck()})),s.paginationSubscription=s.dataTable.state.paginationSource.subscribe((function(e){e.isPageSizeChange?(s.checked=!1,s.dataTable.selectRows(!1),s.dataTable.state.checkRetainment("pageSize"),s.dataTable.state.reset(!1,!0)):s.checked=s.dataTable.allCurrentRowsSelected(),s.ref.markForCheck()})),s.resetSubscription=s.dataTable.state.resetSource.subscribe((function(){s.checked=!1,s.ref.markForCheck()})),s}return te(t,e),Object.defineProperty(t.prototype,"isAtLimit",{get:function(){return this.maxSelected&&this.dataTable.state.selectedRows.size+this.dataTable.dataSource.data.length>this.maxSelected&&!this.checked},enumerable:!1,configurable:!0}),t.prototype.ngOnDestroy=function(){this.selectionSubscription&&this.selectionSubscription.unsubscribe(),this.paginationSubscription&&this.paginationSubscription.unsubscribe(),this.resetSubscription&&this.resetSubscription.unsubscribe()},t.prototype.onClick=function(){this.isAtLimit?this.toaster.alert({theme:"danger",position:"fixedTop",message:"Error, more than 500 items are not able to be selected at one time",icon:"caution"}):this.dataTable.selectRows(!this.checked)},t}(y.CdkHeaderCell);qn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-checkbox-header-cell",template:'\n <div class="data-table-checkbox" (click)="onClick()">\n <input type="checkbox" [checked]="checked">\n <label>\n <i [class.bhi-checkbox-empty]="!checked"\n [class.bhi-checkbox-filled]="checked"></i>\n </label>\n </div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],qn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:on},{type:t.ChangeDetectorRef},{type:Yn}]},qn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],maxSelected:[{type:t.Input}]};var Jn=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.elementRef=n,a.renderer=o,a.role="columnheader",o.setAttribute(n.nativeElement,"data-automation-id","novo-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-header-cell"),a}return te(t,e),t.prototype.ngOnInit=function(){this.column.width&&(this.renderer.setStyle(this.elementRef.nativeElement,"min-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"max-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"width",this.column.width+"px"))},t}(y.CdkHeaderCell);Jn.decorators=[{type:t.Directive,args:[{selector:"novo-data-table-header-cell"}]}],Jn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},Jn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],column:[{type:t.Input}]};var Xn=function(){function e(e,n,o){var a=this;this.changeDetectorRef=e,this.labels=n,this.state=o,this.theme="standard",this._page=0,this._pageSizeOptions=[],this._length=0,this.pageChange=new t.EventEmitter,this.resetSubscription=this.state.resetSource.subscribe((function(){a.page=0,a.changeDetectorRef.markForCheck()}))}return Object.defineProperty(e.prototype,"page",{get:function(){return this._page},set:function(e){this._page=e,this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.state.page=this._page},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageSize",{get:function(){return this._pageSize},set:function(e){this._pageSize=e,this.updateDisplayedPageSizeOptions(),this.state.pageSize=this._pageSize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageSizeOptions",{get:function(){return this._pageSizeOptions},set:function(e){this._pageSizeOptions=e,this.updateDisplayedPageSizeOptions()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"length",{get:function(){return this._length},set:function(e){this._length=e,this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this._initialized=!0,this.updateDisplayedPageSizeOptions()},e.prototype.ngOnDestroy=function(){this.resetSubscription.unsubscribe()},e.prototype.selectPage=function(e){this.state.checkRetainment("page"),this.page=e,this.emitPageEvent()},e.prototype.nextPage=function(){this.state.checkRetainment("page"),this.hasNextPage()&&(this.page++,this.pages=this.getPages(this.page,this.totalPages),this.emitPageEvent())},e.prototype.previousPage=function(){this.state.checkRetainment("page"),this.hasPreviousPage()&&(this.page--,this.pages=this.getPages(this.page,this.totalPages),this.emitPageEvent())},e.prototype.hasPreviousPage=function(){return this.page>=1&&0!==this.pageSize},e.prototype.hasNextPage=function(){var e=Math.ceil(this.length/this.pageSize)-1;return this.page<e&&0!==this.pageSize},e.prototype.changePageSize=function(e){this.page=0,this.pageSize=e,this.emitPageEvent(!0)},e.prototype.updateDisplayedPageSizeOptions=function(){var e=this;this._initialized&&(this.displayedPageSizeOptions||(this.displayedPageSizeOptions=[],this.pageSizeOptions.forEach((function(t){t.hasOwnProperty("value")?e.displayedPageSizeOptions.push(t):e.displayedPageSizeOptions.push({value:t,label:t})}))),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.changeDetectorRef.detectChanges())},e.prototype.emitPageEvent=function(e){void 0===e&&(e=!1);var t={page:this.page,pageSize:this.pageSize,length:this.length,filter:this.state.filter,sort:this.state.sort};this.pageChange.next(t),this.state.page=this.page,this.state.pageSize=this.pageSize,this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.state.updates.next(t),this.state.onPaginationChange(e,this.pageSize)},e.prototype.calculateTotalPages=function(){var e=this.pageSize<1?1:Math.ceil(this.length/this.pageSize);return Math.max(e||0,1)},e.prototype.makePage=function(e,t,n){return{number:e,text:t,active:n}},e.prototype.getPages=function(e,t){var n=[],o=1,a=t;5<t&&(a=(o=Math.max(e-Math.floor(2.5),1))+5-1)>t&&(o=(a=t)-5+1);for(var i=o;i<=a;i++){var r=this.makePage(i,i.toString(),i===e);n.push(r)}return n},e}();function Qn(e,t){return t.format?R.interpolateWithFallback(t.format,e):e}Xn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-pagination",template:'\n <ng-container *ngIf="theme === \'basic\' || theme === \'basic-wide\'">\n <div class="novo-data-table-pagination-size">\n <novo-tiles *ngIf="displayedPageSizeOptions.length > 1"\n [(ngModel)]="pageSize"\n [options]="displayedPageSizeOptions"\n (onChange)="changePageSize($event)"\n data-automation-id="novo-data-table-pagination-tiles">\n </novo-tiles>\n <div *ngIf="displayedPageSizeOptions.length <= 1">{{ pageSize }}</div>\n </div>\n\n <div class="novo-data-table-range-label-long" data-automation-id="novo-data-table-pagination-range-label-long">\n {{ longRangeLabel }}\n </div>\n <div class="novo-data-table-range-label-short" data-automation-id="novo-data-table-pagination-range-label-short">\n {{ shortRangeLabel }}\n </div>\n <span class="spacer novo-data-table-spacer" *ngIf="theme === \'basic-wide\'"></span>\n <button theme="dialogue" type="button"\n class="novo-data-table-pagination-navigation-previous"\n (click)="previousPage()"\n icon="previous"\n side="left"\n [disabled]="!hasPreviousPage()"\n data-automation-id="novo-data-table-pagination-previous">\n <span>{{ labels.previous }}</span>\n </button>\n <button theme="dialogue" type="button"\n class="novo-data-table-pagination-navigation-next"\n (click)="nextPage()"\n icon="next"\n side="right"\n [disabled]="!hasNextPage()"\n data-automation-id="novo-data-table-pagination-next">\n <span>{{ labels.next }}</span>\n </button>\n </ng-container>\n <ng-container *ngIf="theme === \'standard\'">\n <h5 class="rows">{{ labels.itemsPerPage }}</h5>\n <novo-select\n [options]="displayedPageSizeOptions"\n [placeholder]="labels.select"\n [(ngModel)]="pageSize"\n (onSelect)="changePageSize($event.selected)"\n data-automation-id="pager-select"\n [attr.data-feature-id]="dataFeatureId">\n </novo-select>\n <span class="spacer"></span>\n <ul class="pager" data-automation-id="pager">\n <li class="page" (click)="selectPage(page - 1)" [ngClass]="{ \'disabled\': page === 0 }"><i class="bhi-previous" data-automation-id="pager-previous"></i></li>\n <li class="page" [ngClass]="{active: p.number === page + 1}" *ngFor="let p of pages" (click)="selectPage(p.number - 1)">{{ p.text }}</li>\n <li class="page" (click)="selectPage(page + 1)" [ngClass]="{ \'disabled\': page + 1 === totalPages }"><i class="bhi-next" data-automation-id="pager-next"></i></li>\n </ul>\n </ng-container>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Xn.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:Ne},{type:Wt}]},Xn.propDecorators={theme:[{type:t.HostBinding,args:["class"]},{type:t.Input}],page:[{type:t.Input}],pageSize:[{type:t.Input}],dataFeatureId:[{type:t.Input}],pageSizeOptions:[{type:t.Input}],length:[{type:t.Input}],pageChange:[{type:t.Output}]};var eo=function(){function e(){}return e.prototype.transform=function(e,t){return R.isEmpty(e)?"":Qn(e,t)},e}();eo.decorators=[{type:t.Pipe,args:[{name:"dataTableInterpolate",pure:!0}]}];var to=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){return R.isEmpty(e)?"":t.format?e:this.labels.formatDate(Qn(e,t))},e}();to.decorators=[{type:t.Pipe,args:[{name:"dataTableDateRenderer",pure:!0}]}],to.ctorParameters=function(){return[{type:Ne}]};var no=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){return R.isEmpty(e)?"":t.format?e:this.labels.formatDateShort(Qn(e,t))},e}();no.decorators=[{type:t.Pipe,args:[{name:"dataTableDateTimeRenderer",pure:!0}]}],no.ctorParameters=function(){return[{type:Ne}]};var oo=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){return R.isEmpty(e)?"":t.format?e:this.labels.formatTime(Qn(e,t))},e}();oo.decorators=[{type:t.Pipe,args:[{name:"dataTableTimeRenderer",pure:!0}]}],oo.ctorParameters=function(){return[{type:Ne}]};var ao=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t,n){if(void 0===n&&(n=!1),!R.isEmpty(e)){var o=Qn(e,t);return n&&R.isNumber(o)&&(o=""+100*Number(o)),this.labels.formatNumber(o)+(n?"%":"")}return""},e}();ao.decorators=[{type:t.Pipe,args:[{name:"dataTableNumberRenderer",pure:!0}]}],ao.ctorParameters=function(){return[{type:Ne}]};var io=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){if(!R.isEmpty(e)){var n=Qn(e,t);return this.labels.formatBigDecimal(Number(n),t.configuration)}return""},e}();io.decorators=[{type:t.Pipe,args:[{name:"dataTableBigDecimalRenderer",pure:!0}]}],io.ctorParameters=function(){return[{type:Ne}]};var ro=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){if(!R.isEmpty(e)){var n=Qn(e,t);return this.labels.formatCurrency(Number(n))}return""},e}();ro.decorators=[{type:t.Pipe,args:[{name:"dataTableCurrencyRenderer",pure:!0}]}],ro.ctorParameters=function(){return[{type:Ne}]};var so=function(){function e(e,t,n){var o=this;this.vcRef=e,this.state=t,this.dataTable=n,this.shouldExpandAllRows=function(e){return void 0===e},this.shouldExpandOneRow=function(e){return e===o.row.id},this.subscription=this.state.expandSource.subscribe((function(e){(o.shouldExpandAllRows(e)||o.shouldExpandOneRow(e))&&(n.isExpanded(o.row)?o.render():o.clear())}))}return e.prototype.ngOnDestroy=function(){this.subscription.unsubscribe()},e.prototype.onClick=function(e){e.target.hasAttribute("novo-data-table-expander")&&(R.swallowEvent(e),this.dataTable.expandRow(this.row))},e.prototype.clear=function(){this.vcRef.clear()},e.prototype.render=function(){this.vcRef.clear(),this.template&&this.row&&this.vcRef.createEmbeddedView(this.template,{$implicit:this.row})},e}();so.decorators=[{type:t.Directive,args:[{selector:"[novoDataTableExpand]"}]}],so.ctorParameters=function(){return[{type:t.ViewContainerRef},{type:Wt},{type:on}]},so.propDecorators={row:[{type:t.Input}],template:[{type:t.Input,args:["novoDataTableExpand"]}],onClick:[{type:t.HostListener,args:["click",["$event"]]}]};var lo=function(){};lo.decorators=[{type:t.NgModule,args:[{imports:[Vn,y.CdkTableModule,s.CommonModule,n.FormsModule,_,an,An,ze,Rn,Ln,jt,ln,U],declarations:[eo,to,ro,no,ao,oo,io,nn,tn,Jn,Un,jn,$n,Xn,Kn,qn,zn,Wn,on,so,Zt],providers:[Wt],exports:[on,eo,to,ro,no,ao,oo,io,Zt]}]}];var co=function(){},po={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return uo})),multi:!0},uo=function(){function e(e,n){this.labels=e,this.element=n,this.weekStart=0,this.onSelect=new t.EventEmitter(!1),this.componentTabState="date",this.datePickerValue=new Date,this.timePickerValue=new Date,this._onChange=function(){},this._onTouched=function(){}}return e.prototype.toggleView=function(e){this.componentTabState=e},e.prototype.setDateLabels=function(e){this.selectedLabel=this.labels.formatDateWithFormat(e,{month:"short",day:"2-digit",year:"numeric"})},e.prototype.setTimeLabels=function(e){var t=e.getHours(),n=e.getMinutes();this.meridian=e.toLocaleTimeString().slice(-2),this.military||(t="PM"===this.meridian&&t>12?t-12:t,("PM"===this.meridian&&24===t||"AM"===this.meridian&&0===t)&&(t=12)),this.hours=t.toString(),this.minutes=1===n.toString().length?"0"+n.toString():n.toString()},e.prototype.onDateSelected=function(e){this.datePickerValue=e.date,this.model=this.createFullDateValue(this.datePickerValue,this.timePickerValue),this.setDateLabels(this.model),this.onSelect.emit({date:this.model}),this._onChange(this.model),this.toggleView("time")},e.prototype.onTimeSelected=function(e){this.timePickerValue=e.date,this.model=this.createFullDateValue(this.model,this.timePickerValue),this.setTimeLabels(this.model),this.onSelect.emit({date:this.model}),this._onChange(this.model)},e.prototype.createFullDateValue=function(e,t){return p.setMilliseconds(p.setSeconds(p.setMinutes(p.setHours(e,p.getHours(t)),p.getMinutes(t)),p.getSeconds(t)),p.getMilliseconds(t))},e.prototype.writeValue=function(e){this.model=e,R.isEmpty(e)?this.model=new Date:isNaN(e)||(this.model=new Date(e)),this.datePickerValue=this.model,this.timePickerValue=this.model,R.isDate(this.model)&&(this.setDateLabels(this.model),this.setTimeLabels(this.model))},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e}();uo.decorators=[{type:t.Component,args:[{selector:"novo-date-time-picker",providers:[po],animations:[d.trigger("dateTextState",[d.state("date",d.style({opacity:"1.0"})),d.state("time",d.style({opacity:"0.6"})),d.transition("date <=> time",d.animate("200ms ease-in"))]),d.trigger("timeTextState",[d.state("date",d.style({opacity:"0.6"})),d.state("time",d.style({opacity:"1.0"})),d.transition("date <=> time",d.animate("200ms ease-in"))]),d.trigger("indicatorState",[d.state("date",d.style({transform:"translateX(0%)"})),d.state("time",d.style({transform:"translateX(100%)"})),d.transition("date <=> time",d.animate("200ms ease-in"))]),d.trigger("containerState",[d.state("date",d.style({transform:"translateX(0%)"})),d.state("time",d.style({transform:"translateX(-100%)"})),d.transition("date <=> time",d.animate("200ms ease-in"))])],template:'\n <div class="date-time-container">\n <div class="date-time-tabs">\n <span\n class="date-tab"\n (click)="toggleView(\'date\')"\n [@dateTextState]="componentTabState"\n data-automation-id="novo-date-time-date-tab"\n >{{ selectedLabel }}</span\n >\n <span\n class="time-tab"\n (click)="toggleView(\'time\')"\n [@timeTextState]="componentTabState"\n data-automation-id="novo-date-time-time-tab"\n >\n <span class="hours" data-automation-id="novo-time-picker-hours">{{ hours }}</span\n >:<span class="minutes" data-automation-id="novo-time-picker-minutes">{{ minutes }}</span>\n <span *ngIf="!military" class="meridian"> {{ meridian }}</span>\n </span>\n <i class="date-time-indicator" [@indicatorState]="componentTabState"></i>\n </div>\n <div class="view-container" [@containerState]="componentTabState">\n <div class="calendar">\n <novo-date-picker\n (onSelect)="onDateSelected($event)"\n [(ngModel)]="model"\n inline="true"\n [minYear]="minYear"\n [maxYear]="maxYear"\n [start]="start"\n [end]="end"\n [weekStart]="weekStart"\n ></novo-date-picker>\n </div>\n <div class="time-picker">\n <novo-time-picker (onSelect)="onTimeSelected($event)" [(ngModel)]="model" [military]="military" inline="true"></novo-time-picker>\n </div>\n </div>\n </div>\n '}]}],uo.ctorParameters=function(){return[{type:Ne},{type:t.ElementRef}]},uo.propDecorators={minYear:[{type:t.Input}],maxYear:[{type:t.Input}],start:[{type:t.Input}],end:[{type:t.Input}],military:[{type:t.Input}],weekStart:[{type:t.Input}],onSelect:[{type:t.Output}]};var mo={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return ho})),multi:!0},ho=function(){function e(e,n,o){this.element=e,this.labels=n,this._changeDetectorRef=o,this._onChange=function(){},this._onTouched=function(){},this.military=!1,this.disabled=!1,this.weekStart=0,this.blurEvent=new t.EventEmitter,this.focusEvent=new t.EventEmitter,this.changeEvent=new t.EventEmitter}return e.prototype.writeValue=function(e){var t=this;this.datePart=p.isDate(e)?p.parse(e):e,this.timePart=p.isDate(e)?p.parse(e):e,Promise.resolve(null).then((function(){return t._setTriggerValue(e)}))},e.prototype.updateDate=function(e){this.datePart=e,this.checkParts()},e.prototype.updateTime=function(e){this.timePart=e,this.checkParts()},e.prototype.handleBlur=function(e){this.blurEvent.emit(e),this.changeEvent.emit(e)},e.prototype.handleFocus=function(e){this.focusEvent.emit(e)},e.prototype.checkParts=function(){try{this.datePart instanceof Date&&this.timePart instanceof Date?this.dispatchOnChange(new Date(this.datePart.getFullYear(),this.datePart.getMonth(),this.datePart.getDate(),this.timePart.getHours(),this.timePart.getMinutes())):this.datePart instanceof Date?(this.timePart=new Date(this.datePart.getFullYear(),this.datePart.getMonth(),this.datePart.getDate(),12,0),this.dispatchOnChange(new Date(this.datePart.getFullYear(),this.datePart.getMonth(),this.datePart.getDate(),this.timePart.getHours(),this.timePart.getMinutes()))):this.dispatchOnChange(null)}catch(e){this.dispatchOnChange(null)}},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e.prototype.dispatchOnChange=function(e){e!==this.value&&(this._onChange(e),this._setTriggerValue(e))},e.prototype._setTriggerValue=function(e){this.value=e,this._changeDetectorRef.markForCheck()},e.prototype.setValue=function(e){e&&e.date&&this.dispatchOnChange(e.date)},e.prototype.setValueAndClose=function(e){this.setValue(e)},e.prototype.clearValue=function(){this.dispatchOnChange(null)},Object.defineProperty(e.prototype,"hasValue",{get:function(){return!R.isEmpty(this.value)},enumerable:!1,configurable:!0}),e}();ho.decorators=[{type:t.Component,args:[{selector:"novo-date-time-picker-input",providers:[mo],template:'\n <novo-date-picker-input\n [ngModel]="datePart"\n (ngModelChange)="updateDate($event)"\n [start]="start"\n [end]="end"\n [maskOptions]="maskOptions"\n (blurEvent)="handleBlur($event)"\n (focusEvent)="handleFocus($event)"\n [disabled]="disabled"\n [weekStart]="weekStart"\n ></novo-date-picker-input>\n <novo-time-picker-input\n [ngModel]="timePart"\n (ngModelChange)="updateTime($event)"\n [military]="military"\n (blurEvent)="handleBlur($event)"\n (focusEvent)="handleFocus($event)"\n [disabled]="disabled"\n ></novo-time-picker-input>\n '}]}],ho.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]},ho.propDecorators={name:[{type:t.Input}],start:[{type:t.Input}],end:[{type:t.Input}],placeholder:[{type:t.Input}],maskOptions:[{type:t.Input}],military:[{type:t.Input}],disabled:[{type:t.Input}],format:[{type:t.Input}],weekStart:[{type:t.Input}],blurEvent:[{type:t.Output}],focusEvent:[{type:t.Output}],changeEvent:[{type:t.Output}]};var go={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return fo})),multi:!0},fo=function(){function e(){this.military=!1,this.analog=!1,this.inline=!1,this.onSelect=new t.EventEmitter,this.hours=12,this.minutes=0,this.value=null,this.increments=[],this.MERIDIANS=["am","pm"],this.MINUTES=["05","10","15","20","25","30","35","40","45","50","55","00"],this.HOURS=["1","2","3","4","5","6","7","8","9","10","11","12"],this._onChange=function(){},this._onTouched=function(){}}return e.prototype.flatten=function(e){var t;return(t=Array.prototype).concat.apply(t,ae(e))},e.prototype.ngOnInit=function(){if(this.military)this.HOURS=ae(["0"],this.HOURS,["13","14","15","16","17","18","19","20","21","22","23"]),this.increments=this.flatten(ae(this.HOURS.map((function(e){return[e+":00",e+":15",e+":30",e+":45"]}))));else{var e=["12","1","2","3","4","5","6","7","8","9","10","11"];this.increments=this.flatten(ae(e.map((function(e){return[e+":00 AM",e+":15 AM",e+":30 AM",e+":45 AM"]})),e.map((function(e){return[e+":00 PM",e+":15 PM",e+":30 PM",e+":45 PM"]}))))}this.ngOnChanges()},e.prototype.ngOnChanges=function(e){this.model?this.init(this.model,!1):(this.selected=null,this.init(new Date,!1))},e.prototype.init=function(e,t){var n=new Date(e),o=n.getHours(),a=n.getMinutes();this.military||(this.meridian=o>=12?"pm":"am",o=(o%=12)||12),a=a<10?"0"+a:a,this.setHours(null,o,t),this.setMinutes(null,a,t),this.checkBetween(a)},e.prototype.checkBetween=function(e){this.inBetween=this.MINUTES.indexOf(String(e))<0},e.prototype.setValue=function(e,t){R.swallowEvent(e),this.selected=t;var n=oe(t.split(" "),2),o=n[0],a=n[1],i=oe(o.split(":"),2),r=i[0],s=i[1];this.hours=r,this.minutes=s,this.meridian=a,this.dispatchChange()},e.prototype.setHours=function(e,t,n){R.swallowEvent(e),this.hours=t,this.hoursClass="hour-"+t,this.activeHour=t,n&&this.dispatchChange()},e.prototype.setMinutes=function(e,t,n){R.swallowEvent(e),this.minutes=t,this.minutesClass="min-"+t,this.activeMinute=t,this.checkBetween(t),n&&this.dispatchChange()},e.prototype.setPeriod=function(e,t,n){R.swallowEvent(e),this.meridian=t,n&&this.dispatchChange()},e.prototype.dispatchChange=function(){var e=Number(this.hours);this.military||(e="pm"===this.meridian.toLowerCase()?e+12:e,"pm"===this.meridian.toLowerCase()&&24===e?e=12:"am"===this.meridian.toLowerCase()&&12===e&&(e=0));var t=new Date;t.setHours(e),t.setMinutes(this.minutes),t.setSeconds(0),this.value=this.hours+":"+this.minutes+" "+this.meridian,this.onSelect.next({hours:e,minutes:this.minutes,meridian:this.meridian,date:t,text:this.value}),this._onChange(t)},e.prototype.writeValue=function(e){this.model=e,R.isDate(e)&&this.init(e,!1)},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e}();fo.decorators=[{type:t.Component,args:[{selector:"novo-time-picker",providers:[go],template:'\n <div class="digital" [class.inline]="inline" [class.military]="military">\n <div class="digital--inner">\n <span class="digital--clock" *ngIf="!inline">\n <span class="hours" data-automation-id="novo-time-picker-hours">{{hours}}</span>:<span class="minutes" data-automation-id="novo-time-picker-minutes">{{minutes}}</span>\n </span>\n <div class="control-block" *ngIf="!military">\n <span *ngFor="let period of MERIDIANS" class="digital--period" [class.active]="meridian==period" (click)="setPeriod($event, period, true)" [attr.data-automation-id]="period">{{period}}</span>\n </div>\n </div>\n </div>\n <div class="increments" *ngIf="!analog">\n <novo-list direction="vertical" data-automation-id="novo-time-picker-increments">\n <novo-list-item *ngFor="let increment of increments" (click)="setValue($event, increment)" [class.active]="increment==selected" [attr.data-automation-id]="increment">\n <item-content>{{increment}}</item-content>\n <i *ngIf="increment==selected" class="bhi-check"></i>\n </novo-list-item>\n </novo-list>\n </div>\n <div class="analog" *ngIf="analog">\n <div class="analog--inner">\n <div class="analog--face">\n <span class="analog--center"></span>\n <span class="analog--hand--hours" [ngClass]="hoursClass">\n <span class="analog--ball"></span>\n </span>\n <span class="analog--hand--minutes" [ngClass]="minutesClass">\n <span class="analog--ball" [ngClass]="{between: inBetween}"></span>\n </span>\n </div>\n <div class="analog--hours">\n <span *ngFor="let hour of HOURS" class="analog--hour" [ngClass]="{active: activeHour == hour}" (click)="setHours($event, hour, true)" [attr.data-automation-id]="hour">{{hour}}</span>\n </div>\n <div class="analog--minutes">\n <span *ngFor="let minute of MINUTES" class="analog--minute" [ngClass]="{active: activeMinute == minute}" (click)="setMinutes($event, minute, true)" [attr.data-automation-id]="minute">{{minute}}</span>\n </div>\n </div>\n </div>\n ',host:{"[class.military]":"military"}}]}],fo.propDecorators={military:[{type:t.Input}],analog:[{type:t.Input}],inline:[{type:t.Input}],onSelect:[{type:t.Output}]};var yo={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return vo})),multi:!0},vo=function(){function e(e,n,o,a){this.element=e,this.labels=n,this.dateFormatService=o,this._changeDetectorRef=a,this.formattedValue="",this._onChange=function(){},this._onTouched=function(){},this.military=!1,this.disabled=!1,this.blurEvent=new t.EventEmitter,this.focusEvent=new t.EventEmitter}return e.prototype.ngOnInit=function(){this.placeholder=this.military?this.labels.timeFormatPlaceholder24Hour:this.labels.timeFormatPlaceholderAM,this.maskOptions={mask:this.military?[/\d/,/\d/,":",/\d/,/\d/]:[/\d/,/\d/,":",/\d/,/\d/," ",/[aApP上下]/,/[mM午]/],pipe:this.military?x.default("HH:MM"):x.default("mm:MM"),keepCharPositions:!1,guide:!0}},e.prototype.openPanel=function(){var e=this;if(!this.overlay.panelOpen){this.overlay.openPanel();var t=(new Date).getHours();Promise.resolve(null).then((function(){return e.scrollToIndex(4*t)}))}},e.prototype.closePanel=function(){this.overlay.closePanel()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),e.prototype._handleKeydown=function(e){e.keyCode!==C.ESCAPE&&e.keyCode!==C.ENTER&&e.keyCode!==C.TAB||!this.panelOpen||(this.closePanel(),e.stopPropagation(),e.stopImmediatePropagation())},e.prototype._handleInput=function(e){if(document.activeElement===e.target){var t=e.target.value;if(this.military?5===t.replace(/_/g,"").length:8===t.replace(/_/g,"").length){var n=oe(this.dateFormatService.parseString(t,this.military,"time"),2),o=n[0];n[1];this.dispatchOnChange(o)}else this.dispatchOnChange(null);this.openPanel();var a=Number(t.split(":")[0]);this.scrollToIndex(4*a)}},e.prototype._handleBlur=function(e){this.blurEvent.emit(e)},e.prototype._handleFocus=function(e){this.openPanel(),this.focusEvent.emit(e)},e.prototype.writeValue=function(e){var t=this;Promise.resolve(null).then((function(){return t._setTriggerValue(e)}))},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e.prototype.dispatchOnChange=function(e,t){void 0===t&&(t=!1),e!==this.value&&(this._onChange(e),!t&&this.writeValue(e))},e.prototype._setTriggerValue=function(e){this._setCalendarValue(e),this._setFormValue(e),this._changeDetectorRef.markForCheck()},e.prototype._setCalendarValue=function(e){e instanceof Date&&this.value instanceof Date&&(e=new Date(e.setFullYear(this.value.getFullYear(),this.value.getMonth(),this.value.getDate()))),this.value=e},e.prototype._setFormValue=function(e){if(this.value){var t=this.formatDateValue(this.value);this.formattedValue=t}else this.formattedValue=""},e.prototype.setValue=function(e){e&&e.date&&this.dispatchOnChange(e.date)},e.prototype.setValueAndClose=function(e){this.setValue(e),this.closePanel()},e.prototype.clearValue=function(){this.formattedValue="",this.dispatchOnChange(null)},e.prototype.formatDateValue=function(e){if(!e)return"";var t=this.labels.formatTimeWithFormat(e,{hour:"numeric",minute:"2-digit",hour12:!this.military});return 1===t.split(":")[0].length?"0"+t:t},Object.defineProperty(e.prototype,"hasValue",{get:function(){return!R.isEmpty(this.value)},enumerable:!1,configurable:!0}),e.prototype.scrollToIndex=function(e){var t=this.overlay.overlayRef.overlayElement.querySelector(".increments"),n=t.querySelectorAll("novo-list-item")[e];n&&(t.scrollTop=n.offsetTop)},e}();vo.decorators=[{type:t.Component,args:[{selector:"novo-time-picker-input",providers:[yo],template:'\n <input\n type="text"\n [name]="name"\n [(ngModel)]="formattedValue"\n [textMask]="maskOptions"\n [placeholder]="placeholder"\n (focus)="_handleFocus($event)"\n (keydown)="_handleKeydown($event)"\n (input)="_handleInput($event)"\n (blur)="_handleBlur($event)"\n #input\n data-automation-id="time-input"\n [disabled]="disabled"\n />\n <i *ngIf="!hasValue" (click)="openPanel()" class="bhi-clock"></i> <i *ngIf="hasValue" (click)="clearValue()" class="bhi-times"></i>\n\n <novo-overlay-template [parent]="element" position="above-below">\n <novo-time-picker inline="true" (onSelect)="setValue($event)" [ngModel]="value" [military]="military"></novo-time-picker>\n </novo-overlay-template>\n '}]}],vo.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:Hn},{type:t.ChangeDetectorRef}]},vo.propDecorators={name:[{type:t.Input}],placeholder:[{type:t.Input}],military:[{type:t.Input}],maskOptions:[{type:t.Input}],disabled:[{type:t.HostBinding,args:["class.disabled"]},{type:t.Input}],blurEvent:[{type:t.Output}],focusEvent:[{type:t.Output}],overlay:[{type:t.ViewChild,args:[yt]}]};var bo=function(){};bo.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,S.TextMaskModule,vt,pt],declarations:[fo,vo],exports:[fo,vo]}]}];var Co=function(){};Co.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,Vn,bo,S.TextMaskModule,vt],declarations:[uo,ho],exports:[uo,ho]}]}];var So=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t._hideToggle=!1,t.displayMode="default",t}return te(t,e),Object.defineProperty(t.prototype,"hideToggle",{get:function(){return this._hideToggle},set:function(e){this._hideToggle=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),t}(I.CdkAccordion);So.decorators=[{type:t.Directive,args:[{selector:"novo-accordion",exportAs:"novoAccordion",host:{class:"novo-accordion"}}]}],So.propDecorators={hideToggle:[{type:t.Input}],displayMode:[{type:t.Input}]};var ko="225ms cubic-bezier(0.4,0.0,0.2,1)",Io={indicatorRotate:d.trigger("indicatorRotate",[d.state("collapsed",d.style({transform:"rotate(0deg)"})),d.state("expanded",d.style({transform:"rotate(180deg)"})),d.transition("expanded <=> collapsed",d.animate(ko))]),expansionHeaderHeight:d.trigger("expansionHeight",[d.state("collapsed",d.style({height:"{{collapsedHeight}}"}),{params:{collapsedHeight:"48px"}}),d.state("expanded",d.style({height:"{{expandedHeight}}"}),{params:{expandedHeight:"56px"}}),d.transition("expanded <=> collapsed",d.group([d.query("@indicatorRotate",d.animateChild(),{optional:!0}),d.animate(ko)]))]),bodyExpansion:d.trigger("bodyExpansion",[d.state("collapsed",d.style({height:"0px",visibility:"hidden"})),d.state("expanded",d.style({height:"*",visibility:"visible"})),d.transition("expanded <=> collapsed",d.animate(ko))])},Eo=function(e){this._template=e};Eo.decorators=[{type:t.Directive,args:[{selector:"ng-template[matExpansionPanelContent]"}]}],Eo.ctorParameters=function(){return[{type:t.TemplateRef}]};var wo=0,To=function(e){function n(n,o,a,i){var r=e.call(this,n,o,a)||this;return r._viewContainerRef=i,r._hideToggle=!1,r._padding=!0,r.opened=new t.EventEmitter,r.closed=new t.EventEmitter,r.expandedChange=new t.EventEmitter,r._inputChanges=new u.Subject,r._headerId="novo-expansion-panel-header-"+wo++,r.accordion=n,r}return te(n,e),Object.defineProperty(n.prototype,"hideToggle",{get:function(){return this._hideToggle},set:function(e){this._hideToggle=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"padding",{get:function(){return this._padding},set:function(e){this._padding=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),n.prototype._getHideToggle=function(){return this.accordion?this.accordion.hideToggle:this.hideToggle},n.prototype._hasSpacing=function(){return!!this.accordion&&"default"===(this.expanded?this.accordion.displayMode:this._getExpandedState())},n.prototype._getExpandedState=function(){return this.expanded?"expanded":"collapsed"},n.prototype.ngAfterContentInit=function(){var e=this;this._lazyContent&&this.opened.pipe(g.startWith(null),g.filter((function(){return e.expanded&&!e._portal})),g.take(1)).subscribe((function(){e._portal=new c.TemplatePortal(e._lazyContent._template,e._viewContainerRef)}))},n.prototype.ngOnChanges=function(e){this._inputChanges.next(e)},n.prototype.ngOnDestroy=function(){e.prototype.ngOnDestroy.call(this),this._inputChanges.complete()},n.prototype._bodyAnimation=function(e){var t=e.element.classList,n="novo-expanded",o=e.phaseName,a=e.toState;"done"===o&&"expanded"===a?t.add(n):"start"===o&&"collapsed"===a&&t.remove(n)},n}(I.CdkAccordionItem);To.decorators=[{type:t.Component,args:[{selector:"novo-expansion-panel",exportAs:"novoExpansionPanel",template:'<ng-content select="novo-expansion-panel-header"></ng-content>\n<div class="novo-expansion-panel-content"\n role="region"\n [@bodyExpansion]="_getExpandedState()"\n (@bodyExpansion.done)="_bodyAnimation($event)"\n (@bodyExpansion.start)="_bodyAnimation($event)"\n [attr.aria-labelledby]="_headerId"\n [id]="id"\n #body>\n <div class="novo-expansion-panel-body">\n <ng-content></ng-content>\n <ng-template [cdkPortalOutlet]="_portal"></ng-template>\n </div>\n <ng-content select="novo-action-row"></ng-content>\n</div>\n',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,animations:[Io.bodyExpansion],host:{class:"novo-expansion-panel","[class.novo-expanded]":"expanded","[class.novo-expansion-panel-spacing]":"_hasSpacing()","[class.novo-expansion-panel-padding]":"padding"},styles:["@-webkit-keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@-webkit-keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@-webkit-keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@-webkit-keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}@keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}.novo-expansion-panel{background:#fff;color:#3d464d}.novo-action-row{border-top-color:#3d464d}.novo-expansion-panel:not(.novo-expanded) .novo-expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.novo-expansion-panel:not(.novo-expanded) .novo-expansion-panel-header:not([aria-disabled=true]).cdk-program-focused,.novo-expansion-panel:not(.novo-expanded) .novo-expansion-panel-header:not([aria-disabled=true]):hover{background:rgba(0,0,0,.04)}.novo-expansion-panel-header-title{color:#3d464d}.novo-expansion-indicator:after,.novo-expansion-panel-header-description{color:#999}.novo-expansion-panel-header[aria-disabled=true]{color:#999;pointer-events:none}.novo-expansion-panel-header[aria-disabled=true] .novo-expansion-panel-header-description,.novo-expansion-panel-header[aria-disabled=true] .novo-expansion-panel-header-title{color:inherit}.novo-expansion-panel.novo-expanded[theme=company]{border-top:3px solid #39d}.novo-expansion-panel.novo-expanded[theme=candidate]{border-top:3px solid #4b7}.novo-expansion-panel.novo-expanded[theme=navigation]{border-top:3px solid #2f384f}.novo-expansion-panel.novo-expanded[theme=lead]{border-top:3px solid #a69}.novo-expansion-panel.novo-expanded[theme=contact]{border-top:3px solid #fa4}.novo-expansion-panel.novo-expanded[theme=opportunity]{border-top:3px solid #625}.novo-expansion-panel.novo-expanded[theme=job]{border-top:3px solid #b56}.novo-expansion-panel.novo-expanded[theme=earnCode],.novo-expansion-panel.novo-expanded[theme=jobCode]{border-top:3px solid #696d79}.novo-expansion-panel.novo-expanded[theme=sendout]{border-top:3px solid #747884}.novo-expansion-panel.novo-expanded[theme=placement]{border-top:3px solid #0b344f}.novo-expansion-panel.novo-expanded[theme=corporateuser],.novo-expansion-panel.novo-expanded[theme=credential],.novo-expansion-panel.novo-expanded[theme=distributionList],.novo-expansion-panel.novo-expanded[theme=task],.novo-expansion-panel.novo-expanded[theme=user]{border-top:3px solid #4f5361}.novo-expansion-panel.novo-expanded[theme=aqua]{border-top:3px solid #3bafda}.novo-expansion-panel.novo-expanded[theme=ocean]{border-top:3px solid #4a89dc}.novo-expansion-panel.novo-expanded[theme=mint]{border-top:3px solid #37bc9b}.novo-expansion-panel.novo-expanded[theme=grass]{border-top:3px solid #8cc152}.novo-expansion-panel.novo-expanded[theme=sunflower]{border-top:3px solid #f6b042}.novo-expansion-panel.novo-expanded[theme=bittersweet]{border-top:3px solid #eb6845}.novo-expansion-panel.novo-expanded[theme=grapefruit]{border-top:3px solid #da4453}.novo-expansion-panel.novo-expanded[theme=carnation]{border-top:3px solid #d770ad}.novo-expansion-panel.novo-expanded[theme=lavender]{border-top:3px solid #967adc}.novo-expansion-panel.novo-expanded[theme=positive]{border-top:3px solid #4a89dc}.novo-expansion-panel.novo-expanded[theme=success]{border-top:3px solid #8cc152}.novo-expansion-panel.novo-expanded[theme=negative]{border-top:3px solid #da4453}.novo-expansion-panel.novo-expanded[theme=warning]{border-top:3px solid #f6b042}.novo-expansion-panel.novo-expanded[theme=black]{border-top:3px solid #000}.novo-expansion-panel.novo-expanded[theme=dark]{border-top:3px solid #3d464d}.novo-expansion-panel.novo-expanded[theme=pulse]{border-top:3px solid #3bafda}.novo-expansion-panel.novo-expanded[theme=neutral]{border-top:3px solid #4f5361}.novo-expansion-panel.novo-expanded[theme=navy]{border-top:3px solid #0d2d42}.novo-expansion-panel.novo-expanded[theme=contract]{border-top:3px solid #454ea0}.novo-expansion-panel.novo-expanded[theme=mountain]{border-top:3px solid #9678b6}.novo-expansion-panel.novo-expanded[theme=billableCharge],.novo-expansion-panel.novo-expanded[theme=invoiceStatement],.novo-expansion-panel.novo-expanded[theme=payableCharge]{border-top:3px solid #696d79}.novo-expansion-panel.novo-expanded[theme=submission]{border-top:3px solid #a9adbb}.novo-expansion-panel.novo-expanded[theme=note]{border-top:3px solid #747884}.novo-expansion-panel.novo-expanded[theme=ash]{border-top:3px solid #a0a0a0}.novo-expansion-panel.novo-expanded[theme=slate]{border-top:3px solid #707070}.novo-expansion-panel.novo-expanded[theme=charcoal]{border-top:3px solid #282828}.novo-expansion-panel.novo-expanded[theme=jobShift]{border-top:3px solid #454ea0}.novo-expansion-panel.novo-expanded[theme=background]{border-top:3px solid #f4f4f4}.novo-expansion-panel.novo-expanded[theme=background-dark]{border-top:3px solid #e2e2e2}.novo-expansion-panel.novo-expanded[theme=white]{border-top:3px solid #fff}.novo-expansion-panel.novo-expanded[theme=grey]{border-top:3px solid #999}.novo-expansion-panel.novo-expanded[theme=off-white]{border-top:3px solid #f4f4f4}.novo-expansion-panel.novo-expanded[theme=light]{border-top:3px solid #d9dadc}.novo-expansion-panel.novo-expanded[theme=empty]{border-top:3px solid #cccdcc}.novo-expansion-panel.novo-expanded[theme=sand]{border-top:3px solid #f4f4f4}.novo-expansion-panel.novo-expanded[theme=silver]{border-top:3px solid #e2e2e2}.novo-expansion-panel.novo-expanded[theme=stone]{border-top:3px solid #bebebe}.novo-expansion-panel{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-sizing:content-box;display:block;margin:0 16px;transition:margin 225ms ease-in-out}.novo-expansion-panel.novo-expanded{margin:16px 4px}.novo-expansion-panel.novo-expanded:first-child{margin-top:0}.novo-expansion-panel.novo-expanded:last-child{margin-bottom:0}.novo-expansion-panel-content{overflow:hidden}.novo-expansion-panel-content.novo-expanded{overflow:visible}.novo-expansion-panel-padding .novo-expansion-panel-body{padding:0 24px 16px}.novo-accordion .novo-expansion-panel-spacing:first-child{margin-top:0}.novo-accordion .novo-expansion-panel-spacing:last-child{margin-bottom:0}.novo-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.novo-action-row button.novo-button{margin-left:8px}[dir=rtl] .novo-action-row button.novo-button{margin-left:0;margin-right:8px}"]}]}],To.ctorParameters=function(){return[{type:So,decorators:[{type:t.Optional},{type:t.Host}]},{type:t.ChangeDetectorRef},{type:E.UniqueSelectionDispatcher},{type:t.ViewContainerRef}]},To.propDecorators={disabled:[{type:t.Input}],expanded:[{type:t.Input}],hideToggle:[{type:t.Input}],padding:[{type:t.Input}],opened:[{type:t.Output}],closed:[{type:t.Output}],expandedChange:[{type:t.Output}],_lazyContent:[{type:t.ContentChild,args:[Eo]}]};var Oo=function(){};Oo.decorators=[{type:t.Directive,args:[{selector:"novo-action-row",host:{class:"novo-action-row"}}]}];var Po=function(){function e(e,t,n){var o=this;this.panel=e,this._element=t,this._changeDetectorRef=n,this._parentChangeSubscription=u.Subscription.EMPTY,this._parentChangeSubscription=u.merge(e.opened,e.closed,e._inputChanges.pipe(g.filter((function(e){return!(!e.hideToggle&&!e.disabled)})))).subscribe((function(){return o._changeDetectorRef.markForCheck()}))}return e.prototype._toggle=function(){this.panel.toggle()},e.prototype._isExpanded=function(){return this.panel.expanded},e.prototype._getExpandedState=function(){return this.panel._getExpandedState()},e.prototype._getPanelId=function(){return this.panel.id},e.prototype._showToggle=function(){return!this.panel.hideToggle&&!this.panel.disabled},e.prototype._keydown=function(e){switch(e.keyCode){case C.SPACE:case C.ENTER:e.preventDefault(),this._toggle();break;default:return}},e.prototype.ngOnDestroy=function(){this._parentChangeSubscription.unsubscribe()},e}();Po.decorators=[{type:t.Component,args:[{selector:"novo-expansion-panel-header",template:'<span class="novo-content">\n <ng-content select="novo-panel-title"></ng-content>\n <ng-content select="novo-panel-description"></ng-content>\n <ng-content></ng-content>\n</span>\n<span [@indicatorRotate]="_getExpandedState()" *ngIf="_showToggle()"\n class="novo-expansion-indicator"></span>\n',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,animations:[Io.indicatorRotate,Io.expansionHeaderHeight],host:{class:"novo-expansion-panel-header",role:"button","[attr.id]":"panel._headerId","[attr.tabindex]":"panel.disabled ? -1 : 0","[attr.aria-controls]":"_getPanelId()","[attr.aria-expanded]":"_isExpanded()","[attr.aria-disabled]":"panel.disabled","[class.novo-expanded]":"_isExpanded()","(click)":"_toggle()","(keydown)":"_keydown($event)","[@expansionHeight]":"{\n value: _getExpandedState(),\n params: {\n collapsedHeight: collapsedHeight,\n expandedHeight: expandedHeight\n }\n }"},styles:['.novo-expansion-panel-header{align-items:center;display:flex;flex-direction:row;padding:0 24px}.novo-expansion-panel-header:focus,.novo-expansion-panel-header:hover{outline:none}.novo-expansion-panel-header.novo-expanded:focus,.novo-expansion-panel-header.novo-expanded:hover{background:inherit}.novo-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.novo-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.novo-expansion-panel-header-description,.novo-expansion-panel-header-title{align-items:center;display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .novo-expansion-panel-header-description,[dir=rtl] .novo-expansion-panel-header-title{margin-left:16px;margin-right:0}.novo-expansion-panel-header-description{flex-grow:2}.novo-expansion-indicator:after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}']}]}],Po.ctorParameters=function(){return[{type:To,decorators:[{type:t.Host}]},{type:t.ElementRef},{type:t.ChangeDetectorRef}]},Po.propDecorators={expandedHeight:[{type:t.Input}],collapsedHeight:[{type:t.Input}]};var Ao=function(){};Ao.decorators=[{type:t.Directive,args:[{selector:"novo-panel-description",host:{class:"novo-expansion-panel-header-description"}}]}];var Do=function(){};Do.decorators=[{type:t.Directive,args:[{selector:"novo-panel-title",host:{class:"novo-expansion-panel-header-title"}}]}];var xo=function(){};xo.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,I.CdkAccordionModule,c.PortalModule],exports:[So,To,Oo,Po,Do,Ao,Eo],declarations:[So,To,Oo,Po,Do,Ao,Eo]}]}];var Ro=function(e){function o(o,a){void 0===o&&(o="BaseControl"),void 0===a&&(a={});var i=e.call(this)||this;return i.__type="BaseControl",i.__type=o,i.__config=a,i.validators=a.validators||[],i.asyncValidators=a.asyncValidators||[],i.value=a.value,i.key=a.key||"",i.label=a.label||"",i.checkboxLabel=a.checkboxLabel,i.name=a.name||"",i.required=!!a.required,i.hidden=!!a.hidden,i.encrypted=!!a.encrypted,i.sortOrder=void 0===a.sortOrder?1:a.sortOrder,i.controlType=a.controlType||"",i.type=a.type,i.subType=a.subType,i.metaType=a.metaType,i.placeholder=a.placeholder||"",i.config=a.config||null,i.dirty=!(void 0===a.value||null===a.value),i.multiple=!!a.multiple,i.headerConfig=a.headerConfig||null,i.currencyFormat=a.currencyFormat||null,i.associatedEntity=a.associatedEntity||null,i.optionsType=a.optionsType||null,i.options=a.options||[],i.forceClear=new t.EventEmitter,i.readOnly=!!a.readOnly||!!a.disabled,i.disabled=!!a.disabled,i.layoutOptions=a.layoutOptions||{},i.military=!!a.military,i.dateFormat=a.dateFormat,i.textMaskEnabled=a.textMaskEnabled,i.maskOptions=a.maskOptions,i.allowInvalidDate=a.allowInvalidDate,i.startDate=a.startDate,i.endDate=a.endDate,i.restrictFieldInteractions=!!a.restrictFieldInteractions,i.highlighted=!!a.highlighted,R.isEmpty(a.warning)||(i.warning=a.warning),i.required&&i.validators.push(n.Validators.required),R.isBlank(a.maxlength)||(i.maxlength=a.maxlength,i.validators.push(n.Validators.maxLength(i.maxlength))),R.isBlank(a.minlength)||(i.minlength=a.minlength,i.validators.push(n.Validators.minLength(i.minlength))),i.closeOnSelect=!!a.closeOnSelect,i.interactions=a.interactions,i.dataSpecialization=a.dataSpecialization,i.dataType=a.dataType,i.appendToBody=!!a.appendToBody,i.appendToBody&&wt("'appendToBody' has been deprecated. Please remove this attribute."),i.parentScrollSelector=a.parentScrollSelector,i.description=a.description,a.tooltip&&(i.tooltip=a.tooltip,i.tooltipPosition=a.tooltipPosition,i.tooltipSize=a.tooltipSize,i.tooltipPreline=a.tooltipPreline,i.removeTooltipArrow=a.removeTooltipArrow,i.tooltipAutoPosition=a.tooltipAutoPosition),i.template=a.template,i.customControlConfig=a.customControlConfig,i.tipWell=a.tipWell,i.width=a.width,i.startupFocus=!!a.startupFocus,a.fileBrowserImageUploadUrl&&(i.fileBrowserImageUploadUrl=a.fileBrowserImageUploadUrl),a.isEmpty&&(i.isEmpty=a.isEmpty),i.weekStart=a.weekStart||0,i}return te(o,e),o}((function(){this.isEmbedded=!1,this.isInlineEmbedded=!1,this.highlighted=!1})),Mo=function(){function e(){}return e.prototype.showStateRequiredFlag=function(e,t){return"state"===e&&!R.isEmpty(t.config.state)&&t.config.state.required&&R.isBlank(t.value.state)&&t.config.state.updated&&!R.isBlank(t.value.countryName)&&t.config.state.pickerConfig&&t.config.state.pickerConfig.defaultOptions&&t.config.state.pickerConfig.defaultOptions.length>0},e.maxInteger=function(e){return e.value<2147483647?null:{integerTooLarge:!0}},e.minYear=function(e){return e.value?e.value>=1753?null:{minYear:!0}:null},e.maxDouble=function(e){return e.value<Number.MAX_SAFE_INTEGER?null:{doubleTooLarge:!0}},e.isEmail=function(e){return!e.value||/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i.test(e.value)?null:{invalidEmail:!0}},e.isValidAddress=function(e){var t=[],n=[],o=null,a=!1;if(e.value&&e.config){var i=!0,r=!0;return["address1","address2","city","state","zip","countryID"].forEach((function(o){R.isEmpty(e.config[o])||((-1===["countryID","state"].indexOf(o)&&e.config[o].required&&!R.isBlank(e.value[o])&&R.isEmpty(e.value[o])||function(e,t){return"countryID"===e&&!R.isEmpty(t.config.countryID)&&t.config.countryID.required&&R.isBlank(t.value.countryName)&&t.config.countryID.updated}(o,e)||function(e,t){return"state"===e&&!R.isEmpty(t.config.state)&&t.config.state.required&&R.isBlank(t.value.state)&&t.config.state.updated&&!R.isBlank(t.value.countryName)&&t.config.state.pickerConfig&&t.config.state.pickerConfig.defaultOptions&&t.config.state.pickerConfig.defaultOptions.length>0}(o,e))&&(i=!1,t.push(e.config[o].label)),!("countryID"!==o&&e.config[o].required&&R.isEmpty(e.value[o])||"countryID"===o&&!R.isEmpty(e.config.countryID)&&e.config.countryID.required&&R.isEmpty(e.value.countryName))||"state"===o&&!R.isBlank(e.value.countryName)&&e.config.state.pickerConfig&&e.config.state.pickerConfig.defaultOptions&&0===e.config.state.pickerConfig.defaultOptions.length||(r=!1),!R.isEmpty(e.config[o].maxlength)&&!R.isEmpty(e.value[o])&&e.value[o].length>e.config[o].maxlength&&(a=!0,n.push(o),r=!1))})),i&&r&&!a||(o={}),i||(o.invalidAddress=!0,o.invalidAddressFields=t),r||(o.invalidAddressForForm=!0),a&&(o.maxlength=!0,o.maxlengthFields=n),o}return null},e}(),Fo=function(e){function t(t){var n=e.call(this,"AddressControl",t)||this;return n.controlType="address",n.validators.push(Mo.isValidAddress),n}return te(t,e),t}(Ro),Lo=function(e){function t(t){var n=e.call(this,"CheckListControl",t)||this;return n.controlType="checklist",n.options=t.options||[],n}return te(t,e),t}(Ro),No=function(e){function t(t){var n=e.call(this,"CheckboxControl",t)||this;return n.controlType="checkbox",n}return te(t,e),t}(Ro),Bo=function(e){function t(t){var n=e.call(this,"DateControl",t)||this;return n.controlType="date",n}return te(t,e),t}(Ro),Ho=function(e){function t(t){var n=e.call(this,"DateTimeControl",t)||this;return n.controlType="date-time",n}return te(t,e),t}(Ro),_o=function(e){function t(t){var n=e.call(this,"EditorControl",t)||this;return n.controlType="editor",n.minimal=!1,n}return te(t,e),t}(Ro),Go=function(e){function t(t){var n=e.call(this,"AceEditorControl",t)||this;return n.controlType="ace-editor",n}return te(t,e),t}(Ro),Vo=function(e){function t(t){var n=e.call(this,"FileControl",t)||this;return n.controlType="file",n.placeholder=t.placeholder,n.multiple=t.multiple,n}return te(t,e),t}(Ro),Uo=function(e){function t(t){var n=e.call(this,"NativeSelectControl",t)||this;return n.controlType="native-select",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),Ko=function(e){function t(t){var n=e.call(this,"PickerControl",t)||this;return n.controlType="picker",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),zo=function(e){function t(t){var n=e.call(this,Object.assign(t,{parentScrollSelector:".table-container"}))||this;return n.__type="TablePickerControl",n}return te(t,e),t}(Ko),jo=function(e){function t(t){var n=e.call(this,"QuickNoteControl",t)||this;return n.controlType="quick-note",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),$o=function(e){function t(t){var n=e.call(this,"RadioControl",t)||this;return n.controlType="radio",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),Wo=function(e){function t(t){var n=e.call(this,"ReadOnlyControl",t)||this;return n.controlType="read-only",t.readOnly=!0,n}return te(t,e),t}(Ro),Zo=function(e){function t(t){var n=e.call(this,"SelectControl",t)||this;return n.controlType="select",n.options=[],n.options=t.options||[],n.placeholder=t.placeholder||"",n}return te(t,e),t}(Ro),Yo=function(e){function t(t){var n=e.call(this,"TextAreaControl",t)||this;return n.controlType="text-area",n}return te(t,e),t}(Ro),qo=function(e){function t(t){var n=e.call(this,"TextBoxControl",t)||this;return n.controlType="textbox",n.type=n.getTextboxType(t.type)||"",n.subType=t.type||"",n.setValidators(n.subType),n}return te(t,e),t.prototype.setValidators=function(e){switch(e){case"email":this.validators.push(Mo.isEmail);break;case"number":case"currency":this.validators.push(Mo.maxInteger);break;case"float":case"percentage":this.validators.push(Mo.maxDouble);break;case"year":this.validators.push(Mo.minYear)}},t.prototype.getTextboxType=function(e){switch(e){case"percentage":case"currency":case"float":case"year":return"number";default:return e}},t}(Ro),Jo=function(e){function t(t){var n=e.call(this,"TilesControl",t)||this;return n.controlType="tiles",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),Xo=function(e){function t(t){var n=e.call(this,"TimeControl",t)||this;return n.controlType="time",n}return te(t,e),t}(Ro),Qo=function(e){var t=this;this.__type="GroupedControl",Object.keys(e).forEach((function(n){return t[n]=e[n]}))},ea=function(){function e(){}return e.create=function(e,t){switch(e){case"AddressControl":return new Fo(t);case"CheckboxControl":return new No(t);case"CheckListControl":case"CheckListControl":return new Lo(t);case"DateTimeControl":return new Ho(t);case"EditorControl":return new _o(t);case"FileControl":return new Vo(t);case"NativeSelectControl":return new Uo(t);case"PickerControl":return new Ko(t);case"TablePickerControl":return new zo(t);case"QuickNoteControl":return new jo(t);case"RadioControl":return new $o(t);case"ReadOnlyControl":return new Wo(t);case"TextAreaControl":return new Yo(t);case"TextBoxControl":return new qo(t);case"SelectControl":return new Zo(t);case"TilesControl":return new Jo(t);case"TimeControl":return new Xo(t);default:return console.warn('[ControlFactory] - unable to find control for type. Make sure to set "editorType" and "editorConfig" on your column',e),null}},e}(),ta=function(e){function t(t){var n=e.call(this,t.template,t)||this;return n.controlType="custom",n.controlType=t.template,n}return te(t,e),t}(Ro),na=function(e){function o(n,o){var a=e.call(this,n,o.validators,o.asyncValidators)||this;return a.displayValueChanges=new t.EventEmitter,a.valueHistory=[],a.validators=o.validators,a.initialValue=n,a.valueHistory.push(n),a.key=o.key,a.label=o.label,a.readOnly=o.readOnly,a.hidden=o.hidden,a.encrypted=o.encrypted,a.config=o.config,a.type=o.type,a.subType=o.subType,a.required=o.required,a.hasRequiredValidator=a.required,a.tooltip=o.tooltip,a.tooltipPosition=o.tooltipPosition,a.tooltipSize=o.tooltipSize,a.tooltipPreline=o.tooltipPreline,a.removeTooltipArrow=o.removeTooltipArrow,a.tooltipAutoPosition=o.tooltipAutoPosition,a.label=o.label,a.name=o.name,a.required=o.required,a.sortOrder=o.sortOrder,a.controlType=o.controlType,a.placeholder=o.placeholder,a.minimal=o.minimal,a.multiple=o.multiple,a.headerConfig=o.headerConfig,a.optionsType=o.optionsType,a.readOnly=o.readOnly,a.layoutOptions=o.layoutOptions,a.military=o.military,a.dateFormat=o.dateFormat,a.currencyFormat=o.currencyFormat,a.startDate=o.startDate,a.endDate=o.endDate,a.weekStart=o.weekStart,a.textMaskEnabled=o.textMaskEnabled,a.textMaskEnabled=o.textMaskEnabled,a.maskOptions=o.maskOptions,a.allowInvalidDate=o.allowInvalidDate,a.maxlength=o.maxlength,a.minlength=o.minlength,a.closeOnSelect=o.closeOnSelect,a.interactions=o.interactions,a.checkboxLabel=o.checkboxLabel,a.restrictFieldInteractions=o.restrictFieldInteractions,a.appendToBody=o.appendToBody,a.appendToBody&&wt("'appendToBody' has been deprecated. Please remove this attribute."),a.parentScrollSelector=o.parentScrollSelector,a.description=o.description,a.options=o.options,a.tipWell=o.tipWell,a.customControlConfig=o.customControlConfig,a.warning=o.warning,a.readOnly?a.disable():a.enable(),a}return te(o,e),o.prototype.hide=function(e){void 0===e&&(e=!0),this.hidden=!0,e&&this.setValue(null)},o.prototype.show=function(){this.hidden=!1},o.prototype.setRequired=function(e){if(this.required=e,this.required&&!this.hasRequiredValidator)(t=ae(this.validators)).push(n.Validators.required),this.setValidators(t),this.updateValueAndValidity({emitEvent:!1}),this.hasRequiredValidator=this.required;else if(!this.required&&this.hasRequiredValidator){var t;t=(t=ae(this.validators)).filter((function(e){return e!==n.Validators.required})),this.setValidators(t),this.updateValueAndValidity({emitEvent:!1}),this.hasRequiredValidator=this.required}},o.prototype.setValue=function(t,n){var o=this,a=void 0===n?{}:n,i=a.onlySelf,r=a.emitEvent,s=a.emitModelToViewChange,l=a.emitViewToModelChange;this.markAsDirty(),this.markAsTouched(),this.displayValueChanges.emit(t),e.prototype.setValue.call(this,t,{onlySelf:i,emitEvent:r,emitModelToViewChange:s,emitViewToModelChange:l}),clearTimeout(this.historyTimeout),this.historyTimeout=setTimeout((function(){o.valueHistory.push(t)}),300)},o.prototype.setReadOnly=function(e){this.readOnly=e,this.readOnly?this.disable():this.enable()},o.prototype.disable=function(t){void 0===t&&(t={emitEvent:!1}),void 0===t.emitEvent&&(t.emitEvent=!1),e.prototype.disable.call(this,t)},o.prototype.enable=function(t){void 0===t&&(t={emitEvent:!1}),void 0===t.emitEvent&&(t.emitEvent=!1),e.prototype.enable.call(this,t)},o.prototype.markAsInvalid=function(e){this.markAsDirty(),this.markAsTouched(),this.setErrors(Object.assign({},this.errors,{custom:e}))},o.prototype.markAsValid=function(){this.setErrors(null)},o}(n.FormControl),oa=function(e){function n(){var n=e.apply(this,ae(arguments))||this;return n.fieldInteractionEvents=new t.EventEmitter,n}return te(n,e),Object.defineProperty(n.prototype,"value",{get:function(){return this.getRawValue()},set:function(e){this._value=e},enumerable:!1,configurable:!0}),n.prototype.enableAllControls=function(){for(var e in this.controls)this.controls[e].readOnly&&(this.controls[e].readOnly=!1,this.controls[e].enable())},n.prototype.disableAllControls=function(){for(var e in this.controls)this.controls[e].readOnly||(this.controls[e].readOnly=!0,this.controls[e].disable())},n}(n.FormGroup),aa=function(){function e(){}return e.prototype.getOptionsConfig=function(e,t,n){return{field:"value",format:"$label",options:function(n){return new Promise((function(o,a){n&&n.length?e.get(t.optionsUrl+"?filter="+(n||"")).subscribe(o,a):o([])}))}}},e}();aa.decorators=[{type:t.Injectable}],aa.ctorParameters=function(){return[]};var ia=function(){function e(e,t){this.labels=e,this.optionsService=t,this.ASSOCIATED_ENTITY_LIST=["Candidate","ClientContact","ClientCorporation","CorporationDepartment","Lead","Opportunity","JobOrder","CorporateUser","Person","Placement"],this.ENTITY_PICKER_LIST=["Candidate","CandidateText","Client","ClientText","ClientContact","ClientContactText","ClientCorporation","ClientCorporationText","Lead","LeadText","Opportunity","OpportunityText","JobOrder","JobOrderText","CorporateUser","CorporateUserText","Person","PersonText","Placement"]}return e.prototype.toFormGroup=function(e){var t={};return e.forEach((function(e){var n=R.isBlank(e.value)?"":e.value;t[e.key]=new na(n,e)})),new oa(t)},e.prototype.emptyFormGroup=function(){return new oa({})},e.prototype.addControls=function(e,t){t.forEach((function(t){var n=R.isBlank(t.value)?"":t.value,o=new na(n,t);e.addControl(t.key,o)}))},e.prototype.removeControls=function(e,t){t.forEach((function(t){e.removeControl(t.key)}))},e.prototype.toFormGroupFromFieldset=function(e){var t=[];return e.forEach((function(e){t.push.apply(t,ae(e.controls))})),this.toFormGroup(t)},e.prototype.hasAssociatedEntity=function(e){return!(!e.associatedEntity||!~this.ASSOCIATED_ENTITY_LIST.indexOf(e.associatedEntity.entity))},e.prototype.determineInputType=function(e){var t,n={DATETIME:"datetime",TIME:"time",MONEY:"currency",PERCENTAGE:"percentage",HTML:"editor","HTML-MINIMAL":"editor-minimal",YEAR:"year",WORKFLOW_OPTIONS:"select",SPECIALIZED_OPTIONS:"select",ALL_WORKFLOW_OPTIONS:"select",WorkflowOptionsLookup:"select",SpecializedOptionsLookup:"select",SimplifiedOptionsLookup:"select",AllWorkflowOptionsLookup:"select"},o={Timestamp:"date",Date:"date",Boolean:"tiles"},a={CHECKBOX:"radio",RADIO:"radio",SELECT:"select",TILES:"tiles"},i={CHECKBOX:"checklist",RADIO:"checklist",SELECT:"chips"},r={file:"file",COMPOSITE:"address"},s={Double:"float",BigDecimal:"float",Integer:"number"};return"TO_MANY"===e.type?t=this.hasAssociatedEntity(e)?!1===e.multiValue?"entitypicker":"entitychips":!1===e.multiValue?"picker":"chips":"TO_ONE"===e.type?t="SYSTEM"===e.dataSpecialization&&["WorkflowOptionsLookup","SpecializedOptionsLookup","AllWorkflowOptionsLookup"].includes(e.dataType)?n[e.dataType]:["WORKFLOW_OPTIONS","SPECIALIZED_OPTIONS","ALL_WORKFLOW_OPTIONS"].includes(e.dataSpecialization)?n[e.dataSpecialization]:["SimplifiedOptionsLookup","SpecializedOptionsLookup"].includes(e.dataType)?e.options&&Object.keys(a).indexOf(e.inputType)>-1&&!e.multiValue?a[e.inputType]:e.options&&Object.keys(i).indexOf(e.inputType)>-1&&e.multiValue?i[e.inputType]:n[e.dataType]:this.hasAssociatedEntity(e)?"entitypicker":"picker":e.optionsUrl&&"SELECT"===e.inputType?t=e.optionsType&&~this.ENTITY_PICKER_LIST.indexOf(e.optionsType)?"entitypicker":"picker":Object.keys(n).indexOf(e.dataSpecialization)>-1?t=n[e.dataSpecialization]:Object.keys(o).indexOf(e.dataType)>-1?t=o[e.dataType]:"TEXTAREA"===e.inputType?t="textarea":e.options&&Object.keys(a).indexOf(e.inputType)>-1&&!e.multiValue?t=a[e.inputType]:e.options&&Object.keys(i).indexOf(e.inputType)>-1&&e.multiValue?t=i[e.inputType]:Object.keys(r).indexOf(e.type)>-1?t=r[e.type]:Object.keys(s).indexOf(e.dataType)>-1&&(t=s[e.dataType]),t},e.prototype.isFieldEncrypted=function(e){return e.indexOf("customEncrypted")>-1},e.prototype.getControlForField=function(e,t,n,o,a,i){var r,s;void 0===a&&(a=!1);var l,c=this.determineInputType(e)||e.type,d={metaType:e.type,type:c,key:e.name,label:e.label,placeholder:e.hint||"",required:e.required||e.systemRequired,hidden:!e.required,encrypted:this.isFieldEncrypted(e.name?e.name.toString():""),value:e.value||e.defaultValue,sortOrder:e.sortOrder,associatedEntity:e.associatedEntity,optionsType:e.optionsType,multiple:e.multiValue,readOnly:!!e.disabled||!!e.readOnly,disabled:e.disabled,maxlength:e.maxLength,interactions:e.interactions,dataSpecialization:e.dataSpecialization,dataType:e.dataType,description:e.description||"",tooltip:e.tooltip,tooltipPosition:e.tooltipPosition,customControl:e.customControl,template:e.template,customControlConfig:e.customControlConfig,restrictFieldInteractions:e.restrictFieldInteractions,validators:e.validators,warning:e.warning,config:e.config||{},closeOnSelect:e.closeOnSelect,layoutOptions:e.layoutOptions};this.inferStartDate(d,e);var p,u=this.getControlOptions(e,t,n,i);switch(Array.isArray(u)&&"chips"!==c&&"picker"!==c?d.options=u:!Array.isArray(u)||"chips"!==c&&"picker"!==c?u&&(d.config=Object.assign(Object.assign({},u),d&&d.config)):d.config={options:u},"year"===c&&(d.maxlength=4),o&&o[e.name]&&(o[e.name].resultsTemplate&&(p=o[e.name].resultsTemplate,d.config.resultsTemplate=p,delete o[e.name].resultsTemplate),o[e.name].overridePreviewTemplate&&(p=o[e.name].overridePreviewTemplate,d.config.overridePreviewTemplate=p,delete o[e.name].overridePreviewTemplate),o[e.name].pickerCallback&&(d.config.callback=o[e.name].pickerCallback),o[e.name].type&&(c=o[e.name].type),o[e.name].columns&&(d.config.columns=o[e.name].columns,d.closeOnSelect=!0,delete d.label),o[e.name].warning&&(d.warning=o[e.name].warning),Object.assign(d,o[e.name])),c){case"entitychips":d.multiple=!0,d.config.resultsTemplate=p||At,d.config.previewTemplate=Pt,l=new Ko(d);break;case"chips":d.multiple=!0,l=new Ko(d);break;case"entitypicker":d.config.resultsTemplate=p||At,l=new Ko(d);break;case"picker":l=new Ko(d);break;case"datetime":d.military=!!n&&!!n.military,d.weekStart=n&&n.weekStart?n.weekStart:0,l=new Ho(d);break;case"date":d.dateFormat=e.dateFormat,d.textMaskEnabled=e.textMaskEnabled,d.allowInvalidDate=e.allowInvalidDate,d.military=!!n&&!!n.military,d.weekStart=n&&n.weekStart?n.weekStart:0,l=new Bo(d);break;case"time":d.military=!!n&&!!n.military,l=new Xo(d);break;case"currency":case"money":case"email":case"percentage":case"float":case"number":case"year":"money"===c&&(c="currency"),d.type=c,l=new qo(d);break;case"text":l=new qo(d);break;case"textarea":l=new Yo(d);break;case"editor":l=new _o(d);break;case"editor-minimal":(l=new _o(d)).minimal=!0;break;case"tiles":l=new Jo(d);break;case"checkbox":d.checkboxLabel=e.checkboxLabel,l=new No(d);break;case"checklist":l=new Lo(d);break;case"radio":l=new $o(d);break;case"select":l=new Zo(d);break;case"address":if(d.required=e.required||!1,R.isBlank(d.config)&&(d.config={}),d.config.required=e.required,d.config.readOnly=d.readOnly,e.fields&&e.fields.length)try{for(var m=ne(e.fields),h=m.next();!h.done;h=m.next()){var g=h.value;d.config[g.name]={required:!!g.required,hidden:!!g.readOnly},R.isEmpty(g.label)||(d.config[g.name].label=g.label),R.isEmpty(g.maxLength)||(d.config[g.name].maxlength=g.maxLength),d.required=d.required||g.required,g.defaultValue?(R.isBlank(d.value)&&(d.value={}),d.value[g.name]=g.defaultValue):"countryID"===g.name&&(R.isBlank(d.value)&&(d.value={}),d.value[g.name]=1),"state"!==g.name&&"countryID"!==g.name||("countryID"===g.name&&(g.optionsType="Country"),g.optionsUrl||(g.optionsUrl="options/"+g.optionsType),d.config[g.name].pickerConfig=this.getControlOptions(g,t,n,i))}}catch(e){r={error:e}}finally{try{h&&!h.done&&(s=m.return)&&s.call(m)}finally{if(r)throw r.error}}d.isEmpty=this.isAddressEmpty,l=new Fo(d);break;case"file":l=new Vo(d);break;case"custom":l=new ta(d);break;default:l=new qo(d)}return l},e.prototype.shouldCreateControl=function(e){return e.systemRequired&&(e.readOnly=!1),"id"!==e.name&&(!["SYSTEM","SECTION_HEADER"].includes(e.dataSpecialization)||["address","billingAddress","secondaryAddress"].includes(e.name))&&!e.readOnly},e.prototype.toControls=function(e,t,n,o,a,i){var r=this;void 0===i&&(i=!1);var s=[];e&&e.fields&&e.fields.forEach((function(e){if(r.shouldCreateControl(e)){var l=r.getControlForField(e,n,o,a,i);"currency"===l.subType&&(l.currencyFormat=t),s.push(l)}}));return s},e.prototype.toTableControls=function(e,t,n,o,a){var i=this.toControls(e,t,n,o,a,!0),r={};return i.forEach((function(e){r[e.key]={editorType:e.__type,editorConfig:e.__config}})),r},e.prototype.toFieldSets=function(e,t,n,o,a,i){var r=this,s=[];return e&&e.fields&&this.getFormFields(e).forEach((function(e){if(r.isHeader(e))e.enabled&&r.insertHeaderToFieldsets(s,e);else if(r.isEmbeddedField(e)){r.insertHeaderToFieldsets(s,e),r.getEmbeddedFields(e).forEach((function(l){if(r.shouldCreateControl(l)){var c=r.createControl(l,i,n,o,a,t);c=r.markControlAsEmbedded(c,e.dataSpecialization?e.dataSpecialization.toLowerCase():null),s[s.length-1].controls.push(c)}else r.isHeader(l)&&r.insertHeaderToFieldsets(s,l)}))}else if(r.shouldCreateControl(e)){var l=r.createControl(e,i,n,o,a,t);e.inlineEmbeddedAssociatedEntityField&&(l=r.markControlAsEmbedded(l,"inline_embedded")),0===s.length&&s.push({controls:[]}),s[s.length-1].controls.push(l)}})),s.length>0?s:[{controls:this.toControls(e,t,n,o)}]},e.prototype.isEmbeddedField=function(e){return e.dataSpecialization&&["embedded"].includes(e.dataSpecialization.toLowerCase())&&!e.readOnly},e.prototype.createControl=function(e,t,n,o,a,i){var r=this.isEmbeddedFieldData(e,t)?this.getEmbeddedFieldData(e,t):this.getFieldData(e,t),s=this.getControlForField(e,n,o,a,void 0,r);return"currency"===s.subType&&(s.currencyFormat=i),s},e.prototype.isEmbeddedFieldData=function(e,t){return t&&e.name.includes(".")},e.prototype.getFieldData=function(e,t){return t&&t[e.name]||null},e.prototype.getEmbeddedFieldData=function(e,t){var n=oe(e.name.split("."),2),o=n[0],a=n[1];return t&&t[o]&&t[o][a]||null},e.prototype.getFormFields=function(e){var t=e.sectionHeaders?e.sectionHeaders.map((function(e){return e.isSectionHeader=!0,e})):[],n=e.fields.map((function(t){return t.parentEntity=e.entity,t.hasOwnProperty("sortOrder")||(t.sortOrder=Number.MAX_SAFE_INTEGER-1),t})),o=this.getInlineEmbeddedFields(n);return ae(t,n=n.filter((function(e){return!e.dataSpecialization||"inline_embedded"!==e.dataSpecialization.toLowerCase()})),o).sort(R.sortByField(["sortOrder","name"]))},e.prototype.getInlineEmbeddedFields=function(e){var t=this,n=[];return e.filter((function(e){return e.dataSpecialization&&"inline_embedded"===e.dataSpecialization.toLowerCase()})).forEach((function(e){n=ae(n,t.getAssociatedFieldsForInlineEmbedded(e))})),n},e.prototype.getAssociatedFieldsForInlineEmbedded=function(e){return this.getEmbeddedFields(e).map((function(e){return e.inlineEmbeddedAssociatedEntityField=!0,e}))},e.prototype.getEmbeddedFields=function(e){return e.associatedEntity.fields.filter((function(e){return"id"!==e.name})).map((function(t){return t.name.startsWith(e.name+".")||(t.name=e.name+"."+t.name),t})).sort(R.sortByField(["sortOrder","name"]))},e.prototype.isHeader=function(e){return!R.isBlank(e)&&(e.hasOwnProperty("isSectionHeader")&&e.isSectionHeader||e.dataSpecialization&&"section_header"===e.dataSpecialization.toLowerCase())},e.prototype.insertHeaderToFieldsets=function(e,t){var n={controls:[],isEmbedded:t.dataSpecialization&&"embedded"===t.dataSpecialization.toLowerCase(),isInlineEmbedded:t.dataSpecialization&&"inline_embedded"===t.dataSpecialization.toLowerCase(),key:t.name};t.name&&t.name.startsWith("customObject")&&t.associatedEntity&&t.associatedEntity.label?e.push(Object.assign({title:t.associatedEntity.label||t.label,icon:t.icon||"bhi-card-expand"},n)):e.push(Object.assign({title:t.label,icon:t.icon||"bhi-section"},n))},e.prototype.markControlAsEmbedded=function(e,t){return R.isBlank(e.config)&&(e.config={}),e.config.embedded=!0,e.isEmbedded="embedded"===t,e.isInlineEmbedded="inline_embedded"===t,e},e.prototype.getControlOptions=function(e,t,n,o){return"Boolean"!==e.dataType||e.options?"ALL_WORKFLOW_OPTIONS"===e.dataSpecialization&&e.options?e.options:e.workflowOptions?this.getWorkflowOptions(e.workflowOptions,o):"SPECIALIZED_OPTIONS"===e.dataSpecialization||e.options&&["SpecializedOptionsLookup","SimplifiedOptionsLookup"].includes(e.dataType)?e.options:e.optionsUrl?this.optionsService.getOptionsConfig(t,e,n):Array.isArray(e.options)&&"chips"===e.type?{field:"value",format:"$label",options:e.options}:e.options?e.options:null:[{value:!1,label:this.labels.no},{value:!0,label:this.labels.yes}]},e.prototype.getWorkflowOptions=function(e,t){var n=null,o="initial";(null==t?void 0:t.id)&&(n=Object.assign(Object.assign({},t),{value:t.id,label:t.label||t.id}),o=t.id);var a=e[o]||[];return n&&!a.find((function(e){return e.value===n.value}))&&a.unshift(n),a},e.prototype.setInitialValues=function(e,t,n,o){for(var a=0;a<e.length;a++){var i=e[a],r=t[o?i.key.replace(o,""):i.key];R.isBlank(r)||(Array.isArray(r)&&0===r.length||Array.isArray(r)&&r.length>0&&0===(r=r.filter((function(e){return!(0===Object.keys(e).length&&e.constructor===Object)}))).length||r.data&&0===r.data.length||0===Object.keys(r).length&&r.constructor===Object||("Date"===i.dataType&&"string"==typeof r&&"skipConversion"!==i.optionsType&&(r=p.startOfDay(r)),i.value=r,i.dirty=!n))}},e.prototype.setInitialValuesFieldsets=function(e,t,n){var o=this;e.forEach((function(e){o.setInitialValues(e.controls,t,n)}))},e.prototype.forceShowAllControls=function(e){e.forEach((function(e){e.hidden=!1}))},e.prototype.forceShowAllControlsInFieldsets=function(e){e.forEach((function(e){e.controls.forEach((function(e){e.hidden=!1}))}))},e.prototype.forceValidation=function(e){Object.keys(e.controls).forEach((function(t){var n=e.controls[t];n.required&&R.isBlank(e.value[n.key])&&(n.markAsDirty(),n.markAsTouched())}))},e.prototype.isAddressEmpty=function(e){var t=!0;return e.value&&e.config&&["address1","address2","city","state","zip","countryID"].forEach((function(n){!("countryID"!==n&&!R.isEmpty(e.config[n])&&e.config[n].required&&(R.isBlank(e.value[n])||R.isEmpty(e.value[n]))||"countryID"===n&&!R.isEmpty(e.config.countryID)&&e.config.countryID.required&&R.isEmpty(e.value.countryName))||"state"===n&&!R.isBlank(e.value.countryName)&&e.config.state.pickerConfig&&e.config.state.pickerConfig.defaultOptions&&0===e.config.state.pickerConfig.defaultOptions.length||(t=!1)})),t},e.prototype.getStartDateFromRange=function(e){return e.minDate?p.parse(e.minDate):e.minOffset?p.addDays(p.startOfToday(),e.minOffset):void 0},e.prototype.getStartDate=function(e){return e.allowedDateRange?this.getStartDateFromRange(e.allowedDateRange):null},e.prototype.inferStartDate=function(e,t){if("Date"===t.dataType){var n=this.getStartDate(t);return n&&(e.startDate=n),n}},e.prototype.inflateEmbeddedProperties=function(e){return e&&Object.keys(e).filter((function(e){return e.includes(".")})).forEach((function(t){var n=oe(t.split("."),2),o=n[0],a=n[1];e[o]||(e[o]={}),e[o][a]=e[t],delete e[t]})),e},e}();function ra(){var e={},t=new Promise((function(t,n){e.resolve=t,e.reject=n}));return t.resolve=e.resolve,t.reject=e.reject,t}ia.decorators=[{type:t.Injectable}],ia.ctorParameters=function(){return[{type:Ne},{type:aa}]};var sa=function(){},la=function(){function e(){this.component=null,this.contentRef=null,this.containerRef=null,this.isClosed=!1,this._onClosed=ra()}return Object.defineProperty(e.prototype,"onClosed",{get:function(){return this._onClosed},enumerable:!1,configurable:!0}),e.prototype.open=function(){document.body.classList.add("modal-open")},e.prototype.close=function(e){document.body.classList.remove("modal-open"),this.contentRef&&this.contentRef.destroy(),this.containerRef&&this.containerRef.destroy(),this._onClosed.resolve(e)},e}();la.decorators=[{type:t.Injectable}];var ca=function(){function e(e,t){this.modalRef=e,this.componentUtils=t}return e.prototype.ngAfterViewInit=function(){var e=this;setTimeout((function(){e.modalRef.contentRef=e.componentUtils.append(e.modalRef.component,e.container)}))},e}();ca.decorators=[{type:t.Component,args:[{selector:"novo-modal-container",template:"<span #container></span>"}]}],ca.ctorParameters=function(){return[{type:la},{type:mt}]},ca.propDecorators={container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef}]}]};var da=function(){function e(e){this.modalRef=e}return e.prototype.close=function(){this.modalRef.close()},e}();da.decorators=[{type:t.Component,args:[{selector:"novo-modal",template:'\n <ng-content select="header"></ng-content>\n <ng-content select="section"></ng-content>\n <footer><ng-content select="button"></ng-content></footer>\n '}]}],da.ctorParameters=function(){return[{type:la}]};var pa=function(){function e(e){this.modalRef=e,this.cancel=new t.EventEmitter,this.modalRef=e}return e.prototype.close=function(){this.cancel.emit(),this.modalRef.close()},e.prototype.ngOnInit=function(){switch(this.type){case"success":this.iconType="bhi-check";break;case"warning":case"error":this.iconType="bhi-caution-o";break;case"custom":this.iconType="bhi-"+this.icon}},e}();pa.decorators=[{type:t.Component,args:[{selector:"novo-notification",template:'\n <button class="modal-close" theme="icon" icon="times" (click)="close()"></button>\n <header><ng-content select="label"></ng-content></header>\n <section class="notification-body">\n <i class="indicator" [ngClass]="iconType" *ngIf="iconType"></i>\n <ng-content select="h1"></ng-content>\n <ng-content select="h2"></ng-content>\n <ng-content select="p"></ng-content>\n </section>\n <footer><ng-content select="button"></ng-content></footer>\n '}]}],pa.ctorParameters=function(){return[{type:la}]},pa.propDecorators={type:[{type:t.Input}],icon:[{type:t.Input}],cancel:[{type:t.Output}]};var ua=function(){function e(e){this.componentUtils=e}return Object.defineProperty(e.prototype,"parentViewContainer",{set:function(e){this._parentViewContainer=e},enumerable:!1,configurable:!0}),e.prototype.open=function(e,t){if(void 0===t&&(t={}),!this._parentViewContainer)throw new Error("No parent view container specified for the ModalService. Set it inside your main application. \nthis.modalService.parentViewContainer = view (ViewContainerRef)");var n=new la;n.component=e,n.open();var o=[{provide:la,useValue:n},{provide:sa,useValue:t}];return n.containerRef=this.componentUtils.append(ca,this._parentViewContainer,o),n},e}();ua.decorators=[{type:t.Injectable}],ua.ctorParameters=function(){return[{type:mt}]};var ma=function(){function e(e,t,n){this.modalRef=e,this.params=t,this.labels=n}return e.prototype.close=function(e){this.modalRef.close(e)},e}();ma.decorators=[{type:t.Component,args:[{selector:"control-confirm-modal",template:"\n <novo-notification type=\"warning\" [attr.data-automation-id]=\"'field-interaction-modal-' + params['key']\">\n <h1>{{ labels.confirmChangesModalMessage }}</h1>\n <h2 *ngIf=\"!params['message']\"><label>{{ params['label'] }}:</label> {{ params['oldValue'] }} <i class=\"bhi-arrow-right\"></i> {{ params['newValue'] }}</h2>\n <h2 *ngIf=\"params['message']\">{{ params['message'] }}</h2>\n <button theme=\"standard\" (click)=\"close(false)\" [attr.data-automation-id]=\"'field-interaction-modal-cancel' + params['key']\">{{ labels.cancel }}</button>\n <button theme=\"primary\" icon=\"check\" (click)=\"close(true)\" autofocus [attr.data-automation-id]=\"'field-interaction-modal-save-' + params['key']\">{{ labels.save }}</button>\n </novo-notification>\n "}]}],ma.ctorParameters=function(){return[{type:la},{type:sa},{type:Ne}]};var ha=function(){function e(e,t,n){this.modalRef=e,this.params=t,this.labels=n}return e.prototype.close=function(e){this.modalRef.close(e)},e}();ha.decorators=[{type:t.Component,args:[{selector:"control-prompt-modal",template:'\n <novo-notification type="warning" [attr.data-automation-id]="\'field-interaction-modal-\' + params[\'key\']">\n <h1>{{ labels.promptModalMessage }}</h1>\n <p *ngFor="let change of params[\'changes\']">{{ change }}</p>\n <button theme="standard" (click)="close(false)" [attr.data-automation-id]="\'field-interaction-modal-cancel\' + params[\'key\']">{{ labels.cancel }}</button>\n <button theme="primary" icon="check" (click)="close(true)" autofocus [attr.data-automation-id]="\'field-interaction-modal-yes-\' + params[\'key\']">{{ labels.yes }}</button>\n </novo-notification>\n '}]}],ha.ctorParameters=function(){return[{type:la},{type:sa},{type:Ne}]};var ga=function(){function e(e){this.http=e,this.mapFn=function(e){return e}}return e.prototype.get=function(e,t){return this.url=e,this.options=t,this},e.prototype.map=function(e){return this.mapFn=e,this},e.prototype.subscribe=function(e,t){return this.http.get(this.url,this.options).pipe(g.map(this.mapFn)).subscribe(e,t)},e}(),fa=function(){function e(e,t,n,o,a){var i=this;this.toaster=e,this.modalService=t,this.formUtils=n,this.http=o,this.labels=a,this._isInvokedOnInit=!1,this.getOptionsConfig=function(e,t,n,o){if(n||"optionsUrl"in e||"optionsUrlBuilder"in e||"optionsPromise"in e){var a="format"in e&&e.format||o;return Object.assign(Object.assign({options:i.createOptionsFunction(e,t,n)},"emptyPickerMessage"in e&&{emptyPickerMessage:e.emptyPickerMessage}),a&&{format:a})}return"options"in e&&Array.isArray(e.options)?{options:ae(e.options)}:void 0},this.createOptionsFunction=function(e,t,n){return function(o,a){return"optionsPromise"in e&&e.optionsPromise?e.optionsPromise(o,new ga(i.http),a):"optionsUrlBuilder"in e&&e.optionsUrlBuilder||"optionsUrl"in e&&e.optionsUrl?new Promise((function(n,a){var r="optionsUrlBuilder"in e?e.optionsUrlBuilder(o):e.optionsUrl+"?filter="+(o||"");i.http.get(r).pipe(g.map((function(e){return t?e.map(t):e}))).subscribe(n,a)})):n?"where"in e?n(e.where)(o,a):n()(o,a):void 0}}}return Object.defineProperty(e.prototype,"associations",{get:function(){return this.form.hasOwnProperty("associations")?this.form.associations:{}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentEntity",{get:function(){return this.form.hasOwnProperty("currentEntity")?this.form.currentEntity:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentEntityId",{get:function(){return this.form.hasOwnProperty("currentEntityId")?this.form.currentEntityId:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isEdit",{get:function(){return!!this.form.hasOwnProperty("edit")&&this.form.edit},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isAdd",{get:function(){return!!this.form.hasOwnProperty("edit")&&!this.form.edit},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"globals",{get:function(){return this._globals},set:function(e){this._globals=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentKey",{get:function(){return this._currentKey},set:function(e){this._currentKey=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isInvokedOnInit",{get:function(){return this._isInvokedOnInit},set:function(e){this._isInvokedOnInit=e},enumerable:!1,configurable:!0}),e.prototype.isActiveControlValid=function(){return!!this.getValue(this.currentKey)},e.prototype.getActiveControl=function(){return this.getControl(this.currentKey)},e.prototype.getActiveKey=function(){return this.currentKey},e.prototype.getActiveValue=function(){return this.getValue(this.currentKey)},e.prototype.getActiveInitialValue=function(){return this.getInitialValue(this.currentKey)},e.prototype.getFieldSet=function(e,t){if(!e)return console.error('[FieldInteractionAPI] - invalid or missing "key"'),null;var n=(t||this.form).fieldsets.find((function(t){return t.key&&t.key.toLowerCase()===e.toLowerCase()}));return n||(console.error("[FieldInteractionAPI] - could not find a fieldset in the form by the key --",e),null)},e.prototype.getControl=function(e,t){if(!e)return console.error('[FieldInteractionAPI] - invalid or missing "key"'),null;var n=(t||this.form).controls[e];return n||(console.error("[FieldInteractionAPI] - could not find a control in the form by the key --",e),null)},e.prototype.getFormGroupArray=function(e,t){if(!e)return console.error('[FieldInteractionAPI] - invalid or missing "key"'),null;var n=(t||this.form).controls[e];return n&&n.controls?n.controls:(console.error("[FieldInteractionAPI] - could not find a form array in the form by the key --",e),null)},e.prototype.getValue=function(e,t){var n=this.getControl(e,t);return n?n.value:null},e.prototype.getRawValue=function(e,t){var n=this.getControl(e,t);return n?n.rawValue:null},e.prototype.getInitialValue=function(e,t){var n=this.getControl(e,t);return n?n.initialValue:null},e.prototype.setValue=function(e,t,n,o){var a=this.getControl(e,o);a&&!a.restrictFieldInteractions&&(a.setValue(t,n),this.triggerEvent({controlKey:e,prop:"value",value:t},o))},e.prototype.patchValue=function(e,t,n,o){var a=this.getControl(e,o);a&&!a.restrictFieldInteractions&&(a.setValue(t,n),this.triggerEvent({controlKey:e,prop:"value",value:t},o))},e.prototype.setReadOnly=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.setReadOnly(t),this.triggerEvent({controlKey:e,prop:"readOnly",value:t},n))},e.prototype.setRequired=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.setRequired(t),this.triggerEvent({controlKey:e,prop:"required",value:t},n))},e.prototype.highlight=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.highlighted=t,this.triggerEvent({controlKey:e,prop:"highlight",value:t},n))},e.prototype.hide=function(e,t,n){void 0===t&&(t=!0);var o=this.getControl(e,n);return o&&!o.restrictFieldInteractions&&(o.hide(t),this.disable(e,{emitEvent:!1}),this.triggerEvent({controlKey:e,prop:"hidden",value:!0},n)),o},e.prototype.show=function(e,t){var n=this.getControl(e,t);n&&!n.restrictFieldInteractions&&(n.show(),this.enable(e,{emitEvent:!1}),this.triggerEvent({controlKey:e,prop:"hidden",value:!1},t))},e.prototype.hideFieldSetHeader=function(e){var t=this.getFieldSet(e);t&&(t.hidden=!0)},e.prototype.showFieldSetHeader=function(e){var t=this.getFieldSet(e);t&&(t.hidden=!1)},e.prototype.disable=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.disable(t),this.triggerEvent({controlKey:e,prop:"readOnly",value:!0},n))},e.prototype.enable=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.enable(t),this.triggerEvent({controlKey:e,prop:"readOnly",value:!1},n))},e.prototype.markAsInvalid=function(e,t,n){var o=this.getControl(e,n);o&&o&&!o.restrictFieldInteractions&&(o.markAsInvalid(t),this.triggerEvent({controlKey:e,prop:"errors",value:t},n))},e.prototype.markAsValid=function(e,t){var n=this.getControl(e,t);n&&n&&!n.restrictFieldInteractions&&(n.markAsValid(),this.triggerEvent({controlKey:e,prop:"errors",value:null},t))},e.prototype.markAsDirty=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsDirty(t)},e.prototype.markAsPending=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsPending(t)},e.prototype.markAsPristine=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsPristine(t)},e.prototype.markAsTouched=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsTouched(t)},e.prototype.markAsUntouched=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsUntouched(t)},e.prototype.updateValueAndValidity=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.updateValueAndValidity(t)},e.prototype.displayToast=function(e){this.toaster&&this.toaster.alert(e)},e.prototype.displayTip=function(e,t,n,o,a,i){var r=this.getControl(e,i);r&&!r.restrictFieldInteractions&&(r.tipWell={tip:t,icon:n,button:o,sanitize:!1!==a},this.triggerEvent({controlKey:e,prop:"tipWell",value:t},i))},e.prototype.clearTip=function(e,t){var n=this.getControl(e,t);n&&!n.restrictFieldInteractions&&(n.tipWell=null,this.triggerEvent({controlKey:e,prop:"tipWell",value:null},t))},e.prototype.setTooltip=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.tooltip=t,t.length>=40&&t.length<=400?(o.tooltipSize="large",o.tooltipPreline=!0):t.length>400&&(o.tooltipSize="extra-large"),this.triggerEvent({controlKey:e,prop:"tooltip",value:t},n))},e.prototype.confirmChanges=function(e,t){var n=this,o=this.getProperty(e,"valueHistory"),a=o[o.length-2],i=this.getValue(e),r=this.getProperty(e,"label");return document.activeElement.blur(),this.modalService.open(ma,{oldValue:a,newValue:i,label:r,message:t,key:e}).onClosed.then((function(t){t||n.setValue(e,a,{emitEvent:!1})}))},e.prototype.promptUser=function(e,t){return document.activeElement.blur(),this.modalService.open(ha,{changes:t,key:e}).onClosed},e.prototype.setProperty=function(e,t,n,o){var a=this.getControl(e,o);a&&!a.restrictFieldInteractions&&(a[t]=n,this.triggerEvent({controlKey:e,prop:t,value:n},o))},e.prototype.getProperty=function(e,t,n){var o=this.getControl(e,n);return o&&!o.restrictFieldInteractions?o[t]:null},e.prototype.isValueEmpty=function(e){var t=this.getValue(e);return R.isEmpty(t)},e.prototype.isValueBlank=function(e){var t=this.getValue(e);return R.isBlank(t)},e.prototype.hasField=function(e,t){return!!(t||this.form).controls[e]},e.prototype.addStaticOption=function(e,t,n){var o=this.getControl(e,n),a=t,i=!0;if(o&&!o.restrictFieldInteractions){var r=this.getProperty(e,"options");if(r&&r.length)r[0].value&&!a.value&&(a={value:t,label:t}),r.forEach((function(e){(e.value&&e.value===a.value||e===a)&&(i=!1)})),i&&this.setProperty(e,"options",ae(r,[a]));else{var s=this.getProperty(e,"config");s&&(r=s.options)&&Array.isArray(r)&&(r[0].value&&!a.value&&(a={value:t,label:t}),s.options=ae(r,[a]),this.setProperty(e,"config",s))}i&&this.triggerEvent({controlKey:e,prop:"options",value:ae(r,[a])},n)}},e.prototype.removeStaticOption=function(e,t,n){var o=this.getControl(e,n);if(o&&!o.restrictFieldInteractions){var a=this.getProperty(e,"options",n);if(a&&a.length){var i=-1;a.forEach((function(e,n){e.value||e.label?e.value!==t&&e.label!==t||(i=n):e===t&&(i=n)})),-1!==i&&a.splice(i,1),this.setProperty(e,"options",ae(a),n)}else{var r=this.getProperty(e,"config",n);if(r&&(a=r.options)&&Array.isArray(a)){var s=-1;a.forEach((function(e,n){e.value||e.label?e.value!==t&&e.label!==t||(s=n):e===t&&(s=n)})),-1!==s&&a.splice(s,1),r.options=ae(a),this.setProperty(e,"config",r,n)}}this.triggerEvent({controlKey:e,prop:"options",value:o.options},n)}},e.prototype.modifyPickerConfig=function(e,t,n){this.mutatePickerConfig(e,t,n)},e.prototype.mutatePickerConfig=function(e,t,n,o){var a=this.getControl(e,o);if(a&&!a.restrictFieldInteractions){var i=a.config,r=i.minSearchLength,s=i.enableInfiniteScroll,l=i.filteredOptionsCreator,c=i.format,d=i.getLabels,p=i.emptyPickerMessage,u=this.getOptionsConfig(t,n,l,c),m=Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},p&&{emptyPickerMessage:p}),Number.isInteger(r)&&{minSearchLength:r}),s&&{enableInfiniteScroll:s}),l&&{filteredOptionsCreator:l}),d&&{getLabels:d}),u&&u),{resultsTemplate:a.config.resultsTemplate||"resultsTemplateType"in t&&this.getAppropriateResultsTemplate(t.resultsTemplateType)});this.setProperty(e,"config",m),this.triggerEvent({controlKey:e,prop:"pickerConfig",value:t},o)}},e.prototype.addPropertiesToPickerConfig=function(e,t,n){var o=this.getControl(e,n);if(o&&!o.restrictFieldInteractions){var a=Object.assign(Object.assign({},o.config),t);this.setProperty(e,"config",a),this.triggerEvent({controlKey:e,prop:"pickerConfig",value:t},n)}},e.prototype.getAppropriateResultsTemplate=function(e){switch(e){case"entity-picker":return At;default:return}},e.prototype.setLoading=function(e,t,n){var o=this,a=n||this.form,i=this.getControl(e,n);i&&!i.restrictFieldInteractions&&(t?(a.controls[e].fieldInteractionloading=!0,i.setErrors({loading:!0}),clearTimeout(this.asyncBlockTimeout),this.asyncBlockTimeout=setTimeout((function(){o.setLoading(e,!1),o.displayTip(e,o.labels.asyncFailure,"info",!1),o.setProperty(e,"_displayedAsyncFailure",!0)}),1e4)):(a.controls[e].fieldInteractionloading=!1,clearTimeout(this.asyncBlockTimeout),i.setErrors({loading:null}),i.updateValueAndValidity({emitEvent:!1}),this.getProperty(e,"_displayedAsyncFailure")&&this.setProperty(e,"tipWell",null)),this.triggerEvent({controlKey:e,prop:"loading",value:t},n))},e.prototype.addControl=function(t,n,o,a,i){if(void 0===o&&(o=e.FIELD_POSITIONS.ABOVE_FIELD),!n.key&&!n.name)return console.error('[FieldInteractionAPI] - missing "key" in meta for new field'),null;n.key||(n.key=n.name);var r,s,l=i||this.form;if(l.controls[n.key])return null;if(l.controls[t]){switch(r=-1,s=-1,l.fieldsets.forEach((function(e,n){e.controls.forEach((function(e,o){e.key===t&&(r=n,s=o)}))})),o){case e.FIELD_POSITIONS.ABOVE_FIELD:break;case e.FIELD_POSITIONS.BELOW_FIELD:s+=1;break;case e.FIELD_POSITIONS.TOP_OF_FORM:s=0,r=0;break;case e.FIELD_POSITIONS.BOTTOM_OF_FORM:r=l.fieldsets.length-1,s=l.fieldsets[r].controls.length}if(-1!==r&&-1!==s){var c=this.formUtils.getControlForField(n,this.http,{});c.hidden=!1;var d=new na(a,c);l.addControl(c.key,d),l.fieldsets[r].controls.splice(s,0,c),this.triggerEvent({controlKey:t,prop:"addControl",value:d},i)}}},e.prototype.removeControl=function(e,t){var n=t||this.form;if(!n.controls[e])return null;var o=this.getControl(e,t);if(o&&!o.restrictFieldInteractions){var a=-1,i=-1;n.fieldsets.forEach((function(t,n){t.controls.forEach((function(t,o){t.key===e&&(a=n,i=o)}))})),-1!==a&&-1!==i&&(n.removeControl(e),n.fieldsets[a].controls.splice(i,1),this.triggerEvent({controlKey:e,prop:"removeControl",value:e},t))}},e.prototype.debounce=function(e,t){var n;void 0===t&&(t=50),clearTimeout(n),n=setTimeout((function(){return e()}),t)},e.prototype.getParent=function(e){return(e||this.form).parent},e.prototype.getIndex=function(e){var t=e||this.form;return t.associations&&t.associations.hasOwnProperty("index")?t.associations.index:null},e.prototype.triggerEvent=function(e,t){var n=t||this.form;n&&n.fieldInteractionEvents&&n.fieldInteractionEvents.emit(e)},e}();fa.FIELD_POSITIONS={ABOVE_FIELD:"ABOVE_FIELD",BELOW_FIELD:"BELOW_FIELD",TOP_OF_FORM:"TOP_OF_FORM",BOTTOM_OF_FORM:"BOTTOM_OF_FORM"},fa.decorators=[{type:t.Injectable}],fa.ctorParameters=function(){return[{type:Yn},{type:ua},{type:ia},{type:w.HttpClient},{type:Ne}]};var ya=function(){function e(){this.templates={default:{},custom:{}}}return e.prototype.getAll=function(){var e=this,t={},n=Object.keys(this.templates.custom);return Object.keys(this.templates.default).forEach((function(n){t[n]=e.templates.default[n]})),n.forEach((function(n){t[n]=e.templates.custom[n]})),t},e.prototype.addDefault=function(e,t){this.templates.default[e]=t},e.prototype.addCustom=function(e,t){this.templates.custom[e]=t},e}();ya.decorators=[{type:t.Injectable}],ya.ctorParameters=function(){return[]};var va=function(){function e(e){this.element=e}return e.prototype.onInput=function(e){this.adjust()},e.prototype.ngAfterContentInit=function(){var e=this;setTimeout((function(){e.adjust()}))},e.prototype.adjust=function(){var e=this.element.nativeElement;e.style.height=e.style.minHeight,e.style.height=e.scrollHeight+"px"},e}();va.decorators=[{type:t.Directive,args:[{selector:"textarea[autosize]"}]}],va.ctorParameters=function(){return[{type:t.ElementRef}]},va.propDecorators={onInput:[{type:t.HostListener,args:["input",["$event.target"]]}]};var ba=function(e){function n(n,o,a,i,r,s,l){void 0===l&&(l="en-US");var c=e.call(this,n)||this;return c.labels=o,c.dateFormatService=a,c.fieldInteractionApi=i,c.templateService=r,c.changeDetectorRef=s,c.locale=l,c.condensed=!1,c.autoFocus=!1,c.change=new t.EventEmitter,c.edit=new t.EventEmitter,c.save=new t.EventEmitter,c.delete=new t.EventEmitter,c.upload=new t.EventEmitter,c.formattedValue="",c.maxLengthMet=!1,c.itemCount=0,c._blurEmitter=new t.EventEmitter,c._focusEmitter=new t.EventEmitter,c._focused=!1,c._enteredText="",c._showCount=!1,c.maxLengthMetErrorfields=[],c.templates={},c.loading=!1,c}return te(n,e),Object.defineProperty(n.prototype,"onBlur",{get:function(){return this._blurEmitter.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"onFocus",{get:function(){return this._focusEmitter.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"maxlengthMetField",{get:function(){var e=this;return this.maxLengthMetErrorfields&&this.maxLengthMetErrorfields.length&&this.maxLengthMetErrorfields.find((function(t){return t===e.focusedField}))||""},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"maxlengthErrorField",{get:function(){var e=this;return this.errors&&this.errors.maxlengthFields&&this.errors.maxlengthFields.length&&this.errors.maxlengthFields.find((function(t){return t===e.focusedField}))||""},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showFieldMessage",{get:function(){return!this.errors&&!this.maxLengthMet&&R.isBlank(this.control.description)},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showMaxLengthMetMessage",{get:function(){return this.isDirty&&this.maxLengthMet&&this.focused&&(!this.errors||this.errors&&!this.errors.maxlength)||this.isDirty&&this.maxlengthMetField&&this.focused&&(!this.errors||this.errors&&!this.errors.maxlengthFields.includes(this.maxlengthMetField))},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showErrorState",{get:function(){return this.isDirty&&this.errors||this.focused&&this.errors&&this.errors.maxlength&&this.errors.maxlengthFields||this.focused&&this.errors&&this.errors.maxlength&&this.errors.maxlengthFields&&this.maxlengthErrorField},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showCount",{get:function(){var e=this.focused&&!!this.form.controls[this.control.key].maxlength&&["textbox","picker","text-area"].includes(this.form.controls[this.control.key].controlType);return this._showCount||e},set:function(e){this._showCount=e},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showMessages",{get:function(){return this.showCount||!R.isEmpty(this.form.controls[this.control.key].warning)||!R.isEmpty(this.form.controls[this.control.key].description)},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"decimalSeparator",{get:function(){return new Intl.NumberFormat(this.locale).format(1.2)[1]},enumerable:!1,configurable:!0}),n.prototype.ngAfterViewInit=function(){var e=this;this.autoFocus&&!["picker","time","date","date-time"].includes(this.control.controlType)&&setTimeout((function(){var t=e.element.nativeElement.querySelector("input");t&&t.focus()}))},n.prototype.ngAfterContentInit=function(){var e,t,n=this;if(this.control.interactions&&!this.form.controls[this.control.key].restrictFieldInteractions){var o=function(e){switch(e.event){case"blur":a.valueChangeSubscription=a.onBlur.pipe(g.debounceTime(300)).subscribe((function(){n.form.controls[n.control.key].restrictFieldInteractions||n.executeInteraction(e)}));break;case"focus":a.valueChangeSubscription=a.onFocus.pipe(g.debounceTime(300)).subscribe((function(){n.form.controls[n.control.key].restrictFieldInteractions||n.executeInteraction(e)}));break;case"change":a.valueChangeSubscription=a.form.controls[a.control.key].valueChanges.pipe(g.debounceTime(300)).subscribe((function(){n.form.controls[n.control.key].restrictFieldInteractions||n.executeInteraction(e)}));break;case"init":e.invokeOnInit=!0}e.invokeOnInit&&(a.form.controls[a.control.key].restrictFieldInteractions||a.executeInteraction(e,!0))},a=this;try{for(var i=ne(this.control.interactions),r=i.next();!r.done;r=i.next()){o(r.value)}}catch(t){e={error:t}}finally{try{r&&!r.done&&(t=i.return)&&t.call(i)}finally{if(e)throw e.error}}}setTimeout((function(){n.templates=n.templateService.getAll(),n.loading=!1,n.changeDetectorRef.markForCheck()}))},n.prototype.ngOnInit=function(){var e=this;this.loading=!0,this.control&&this.form.controls[this.control.key].value&&("textbox"!==this.form.controls[this.control.key].controlType&&"text-area"!==this.form.controls[this.control.key].controlType||(this.itemCount=this.form.controls[this.control.key].value.length)),this.control&&(this.forceClearSubscription=this.control.forceClear.subscribe((function(){e.clearValue()})),this.statusChangeSubscription=this.form.controls[this.control.key].statusChanges.subscribe((function(t){e.form.controls[e.control.key]=e.templateContext.$implicit,"PENDING"!==t&&e.form.updateValueAndValidity&&e.form.updateValueAndValidity()}))),this.templateContext={$implicit:this.form.controls[this.control.key],methods:{restrictKeys:this.restrictKeys.bind(this),emitChange:this.emitChange.bind(this),handleFocus:this.handleFocus.bind(this),handlePercentChange:this.handlePercentChange.bind(this),handleBlur:this.handleBlur.bind(this),handleTextAreaInput:this.handleTextAreaInput.bind(this),handleEdit:this.handleEdit.bind(this),handleSave:this.handleSave.bind(this),handleDelete:this.handleDelete.bind(this),handleUpload:this.handleUpload.bind(this),modelChange:this.modelChange.bind(this),modelChangeWithRaw:this.modelChangeWithRaw.bind(this),handleAddressChange:this.handleAddressChange.bind(this),handleTyping:this.handleTyping.bind(this),updateValidity:this.updateValidity.bind(this),toggleActive:this.toggleActive.bind(this),validateIntegerInput:this.validateIntegerInput.bind(this),validateNumberOnBlur:this.validateNumberOnBlur.bind(this)},form:this.form},this.templateContext.$implicit.tooltipPosition=this.tooltipPosition,this.templateContext.$implicit.tooltip=this.tooltip,this.templateContext.$implicit.tooltipSize=this.tooltipSize,this.templateContext.$implicit.tooltipPreline=this.tooltipPreline,this.templateContext.$implicit.removeTooltipArrow=this.removeTooltipArrow,this.templateContext.$implicit.startupFocus=this.form.controls[this.control.key].startupFocus,this.templateContext.$implicit.fileBrowserImageUploadUrl=this.form.controls[this.control.key].fileBrowserImageUploadUrl,this.templateContext.$implicit.minimal=this.form.controls[this.control.key].minimal,this.templateContext.$implicit.currencyFormat=this.form.controls[this.control.key].currencyFormat,this.templateContext.$implicit.percentValue=this.form.controls[this.control.key].percentValue,this.templateContext.$implicit.config=this.form.controls[this.control.key].config,this.form.controls[this.control.key]&&"percentage"===this.form.controls[this.control.key].subType&&(R.isEmpty(this.form.controls[this.control.key].value)||(this.templateContext.$implicit.percentValue=Number((100*this.form.controls[this.control.key].value).toFixed(6).replace(/\.?0*$/,""))),this.percentChangeSubscription=this.form.controls[this.control.key].displayValueChanges.subscribe((function(t){R.isEmpty(t)||isNaN(t)?R.isEmpty(t)&&(e.templateContext.$implicit.percentValue=void 0):e.templateContext.$implicit.percentValue=Number((100*t).toFixed(6).replace(/\.?0*$/,""))})))},n.prototype.ngOnDestroy=function(){this.valueChangeSubscription&&this.valueChangeSubscription.unsubscribe(),this.forceClearSubscription&&this.forceClearSubscription.unsubscribe(),this.percentChangeSubscription&&this.percentChangeSubscription.unsubscribe(),this.dateChangeSubscription&&this.dateChangeSubscription.unsubscribe(),this.statusChangeSubscription&&this.statusChangeSubscription.unsubscribe(),e.prototype.ngOnDestroy.call(this)},Object.defineProperty(n.prototype,"errors",{get:function(){return this.form.controls[this.control.key].errors},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"isValid",{get:function(){return this.form.controls[this.control.key].valid},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"isDirty",{get:function(){return this.form.controls[this.control.key].dirty||this.control.dirty},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasValue",{get:function(){return!R.isEmpty(this.form.value[this.control.key])},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"focused",{get:function(){return this._focused},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"tooltip",{get:function(){return this.form.controls[this.control.key].tooltip},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"tooltipPosition",{get:function(){return R.isBlank(this.form.controls[this.control.key].tooltipPosition)?"right":this.form.controls[this.control.key].tooltipPosition},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"tooltipSize",{get:function(){return R.isBlank(this.form.controls[this.control.key].tooltipSize)?"":this.form.controls[this.control.key].tooltipSize},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"tooltipPreline",{get:function(){return!R.isBlank(this.form.controls[this.control.key].tooltipPreline)&&this.form.controls[this.control.key].tooltipPreline},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"removeTooltipArrow",{get:function(){return!R.isBlank(this.form.controls[this.control.key].removeTooltipArrow)&&this.form.controls[this.control.key].removeTooltipArrow},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"alwaysActive",{get:function(){return!("picker"!==this.form.controls[this.control.key].controlType||!this._enteredText.length)||-1!==["tiles","checklist","checkbox","date","time","date-time","address","file","editor","ace-editor","radio","text-area","quick-note"].indexOf(this.form.controls[this.control.key].controlType)},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"requiresExtraSpacing",{get:function(){return!("picker"!==this.form.controls[this.control.key].controlType||!this.form.controls[this.control.key].multiple||!this.hasValue)},enumerable:!1,configurable:!0}),n.prototype.executeInteraction=function(e,t){var n=this;void 0===t&&(t=!1),e.script&&R.isFunction(e.script)&&setTimeout((function(){n.fieldInteractionApi.form=n.form,n.fieldInteractionApi.currentKey=n.control.key,n.fieldInteractionApi.isInvokedOnInit=t;try{e.script(n.fieldInteractionApi,n.control.key)}catch(e){console.info("Field Interaction Error!",n.control.key),console.error(e)}}))},n.prototype.handleTyping=function(e){this._focused=e&&e.length,this._enteredText=e},n.prototype.handleFocus=function(e,t){this._focused=!0,this.focusedField=t,R.isBlank(this.characterCountField)||this.characterCountField!==t?"address"!==this.form.controls[this.control.key].controlType||!t||R.isEmpty(this.form.value[this.control.key])||R.isBlank(this.form.value[this.control.key][t])||this.handleAddressChange({value:this.form.value[this.control.key][t],field:t}):this.showCount=!0,this._focusEmitter.emit(e)},n.prototype.handleBlur=function(e){this._focused=!1,this.focusedField="",this.showCount=!1,this._blurEmitter.emit(e)},n.prototype.clearValue=function(){this.form.controls[this.control.key].setValue(null),this.formattedValue=null},n.prototype.handleTextAreaInput=function(e){this.emitChange(e),this.restrictKeys(e)},n.prototype.checkMaxLength=function(e){this.control&&this.form.controls[this.control.key].maxlength&&(this.itemCount=e.target.value.length,this.maxLengthMet=e.target.value.length>=this.form.controls[this.control.key].maxlength)},n.prototype.modelChangeWithRaw=function(e){R.isEmpty(e.value)&&(this._focused=!1,this._enteredText=""),"picker"===this.form.controls[this.control.key].controlType&&this.form.controls[this.control.key].maxlength&&(this.itemCount=e.value?e.value.length:0,this.maxLengthMet=this.itemCount>=this.form.controls[this.control.key].maxlength),this.form.controls[this.control.key].rawValue=e.rawValue,this.change.emit(e.value)},n.prototype.modelChange=function(e){R.isEmpty(e)&&(this._focused=!1,this._enteredText=""),this.change.emit(e)},n.prototype.validateNumberOnBlur=function(e){this._focused=!1,this.focusedField="",this.showCount=!1,"number"===this.form.controls[this.control.key].subType&&this.validateIntegerInput(),this._blurEmitter.emit(e)},n.prototype.validateIntegerInput=function(){this.form.controls[this.control.key].value&&!/^[\d\-]\d*$/.test(this.form.controls[this.control.key].value)&&this.form.controls[this.control.key].markAsInvalid(this.labels.invalidIntegerInput+" "+this.form.controls[this.control.key].label.toUpperCase())},n.prototype.restrictKeys=function(e){var t=["Backspace","Delete","ArrowLeft","ArrowRight","Tab"],n=e.key;"number"!==this.form.controls[this.control.key].subType||/[0-9\-]/.test(n)||t.includes(n)?["currency","float","percentage"].includes(this.form.controls[this.control.key].subType)&&!("."===this.decimalSeparator&&/[0-9\.\-]/.test(n)||","===this.decimalSeparator&&/[0-9\.\,\-]/.test(n)||t.includes(n))&&e.preventDefault():e.preventDefault(),this.form.controls[this.control.key].maxlength&&e.target.value.length>=this.form.controls[this.control.key].maxlength&&e.preventDefault()},n.prototype.handlePercentChange=function(e){var t=e.target.value||e.data,n=R.isEmpty(t)||isNaN(t)?t:Number((t/100).toFixed(6).replace(/\.?0*$/,""));R.isEmpty(n)?(this.change.emit(null),this.form.controls[this.control.key].setValue(null)):(this.change.emit(n),this.form.controls[this.control.key].setValue(n))},n.prototype.handleTabForPickers=function(e){this.active&&e&&e.keyCode&&(e.keyCode!==We.ESC&&e.keyCode!==We.TAB||this.toggleActive(e,!1))},n.prototype.emitChange=function(e){this.change.emit(e),this.checkMaxLength(e)},n.prototype.handleEdit=function(e){this.edit.emit(e)},n.prototype.handleSave=function(e){this.save.emit(e)},n.prototype.handleDelete=function(e){this.delete.emit(e)},n.prototype.handleUpload=function(e){this.upload.emit(e)},n.prototype.handleAddressChange=function(e){e&&!R.isBlank(e.value)&&e.field&&this.control.config[e.field]&&!R.isEmpty(this.control.config[e.field].maxlength)&&(this.itemCount=e.value.length,this.characterCountField=e.field,this.maxLength=this.control.config[e.field].maxlength,this.showCount=!0,this.maxLength===this.itemCount?this.maxLengthMetErrorfields.push(e.field):this.maxLengthMetErrorfields=this.maxLengthMetErrorfields.filter((function(t){return t!==e.field})))},n.prototype.updateValidity=function(e){var t=!!e;this.form.controls[this.control.key].updateValueAndValidity({emitEvent:t})},n}($e);ba.decorators=[{type:t.Component,args:[{selector:"novo-control",template:'\n <div class="novo-control-container" [hidden]="form.controls[control.key].hidden || form.controls[control.key].type === \'hidden\' || form.controls[control.key].controlType === \'hidden\'">\n \x3c!--Encrypted Field--\x3e\n <span [tooltip]="labels.encryptedFieldTooltip" [tooltipPosition]="\'right\'"><i [hidden]="!form.controls[control.key].encrypted"\n class="bhi-lock"></i></span>\n \x3c!--Label (for horizontal)--\x3e\n <label [attr.for]="control.key" *ngIf="form.layout !== \'vertical\' && form.controls[control.key].label && !condensed" [ngClass]="{\'encrypted\': form.controls[control.key].encrypted }">\n {{ form.controls[control.key].label }}\n </label>\n <div class="novo-control-outer-container">\n \x3c!--Label (for vertical)--\x3e\n <label\n *ngIf="form.layout === \'vertical\' && form.controls[control.key].label && !condensed"\n class="novo-control-label"\n [attr.for]="control.key"\n [class.novo-control-empty]="!hasValue"\n [class.novo-control-focused]="focused"\n [class.novo-control-filled]="hasValue"\n [class.novo-control-always-active]="alwaysActive || form.controls[control.key].placeholder"\n [class.novo-control-extra-spacing]="requiresExtraSpacing">\n {{ form.controls[control.key].label }}\n </label>\n <div class="novo-control-inner-container" [class.required]="form.controls[control.key].required && !form.controls[control.key].readOnly">\n <div class="novo-control-inner-input-container" [class.novo-control-filled]="hasValue" [class.novo-control-empty]="!hasValue">\n \x3c!--Required Indicator--\x3e\n <i [hidden]="!form.controls[control.key].required || form.controls[control.key].readOnly"\n class="required-indicator {{ form.controls[control.key].controlType }}"\n [ngClass]="{\'bhi-circle\': !isValid, \'bhi-check\': isValid}" *ngIf="!condensed || form.controls[control.key].required">\n </i>\n \x3c!--Form Controls--\x3e\n <div class="novo-control-input {{ form.controls[control.key].controlType }}" [attr.data-automation-id]="control.key" [class.control-disabled]="form.controls[control.key].disabled" [class.highlighted]="form.controls[control.key].highlighted">\n \x3c!--TODO prefix/suffix on the control--\x3e\n <ng-container *ngIf="templates">\n <ng-container *ngTemplateOutlet="templates[form.controls[control.key].controlType]; context: templateContext"></ng-container>\n </ng-container>\n <ng-container *ngIf="!templates || loading">\n <div class="novo-control-input-container novo-control-input-with-label">\n <input type="text"/>\n </div>\n </ng-container>\n </div>\n </div>\n \x3c!--Error Message--\x3e\n <div class="field-message {{ form.controls[control.key].controlType }}" *ngIf="!condensed" [class.has-tip]="form.controls[control.key].tipWell" [ngClass]="showErrorState || showMaxLengthMetMessage ? \'error-shown\' : \'error-hidden\'">\n <div class="messages" [ngClass]="showMessages ? \'count-shown messages-shown\' : \'count-hidden messages-hidden\'">\n <span class="error-text" *ngIf="showFieldMessage"></span>\n <span class="error-text" *ngIf="isDirty && errors?.required && form.controls[control.key].controlType !== \'address\'">{{ form.controls[control.key].label | uppercase }} {{ labels.isRequired }}</span>\n <span class="error-text" *ngIf="isDirty && errors?.minlength">{{ form.controls[control.key].label | uppercase }} {{ labels.minLength }} {{ form.controls[control.key].minlength }}</span>\n <span class="error-text" *ngIf="isDirty && maxLengthMet && focused && !errors?.maxlength && form.controls[control.key].controlType !== \'picker\'">{{ labels.maxlengthMet(form.controls[control.key].maxlength) }}</span>\n <span class="error-text" *ngIf="errors?.maxlength && focused && !errors?.maxlengthFields">{{ labels.invalidMaxlength(form.controls[control.key].maxlength) }}</span>\n <span class="error-text" *ngIf="maxLengthMet && form.controls[control.key].controlType === \'picker\'">{{ labels.maxRecordsReached }}</span>\n <span class="error-text" *ngIf="isDirty && errors?.invalidEmail">{{ form.controls[control.key].label | uppercase }} {{ labels.invalidEmail }}</span>\n <span class="error-text" *ngIf="isDirty && (errors?.integerTooLarge || errors?.doubleTooLarge)">{{ form.controls[control.key].label | uppercase }} {{ labels.isTooLarge }}</span>\n <span *ngIf="isDirty && errors?.minYear">{{ form.controls[control.key].label | uppercase }} {{ labels.notValidYear }}</span>\n <span class="error-text" *ngIf="isDirty && (errors?.custom)">{{ errors.custom }}</span>\n <span class="error-text" *ngIf="errors?.maxlength && errors?.maxlengthFields && maxlengthErrorField && focused">\n {{ labels.invalidMaxlengthWithField(control.config[maxlengthErrorField]?.label, control.config[maxlengthErrorField]?.maxlength) }}\n </span>\n <span class="error-text" *ngIf="isDirty && maxlengthMetField && focused && !errors?.maxlengthFields?.includes(maxlengthMetField)">\n {{ labels.maxlengthMetWithField(control.config[maxlengthMetField]?.label, control.config[maxlengthMetField]?.maxlength) }}\n </span>\n <span *ngIf="isDirty && errors?.invalidAddress">\n <span class="error-text" *ngFor="let invalidAddressField of errors?.invalidAddressFields">{{ invalidAddressField | uppercase }} {{ labels.isRequired }} </span>\n </span>\n \x3c!--Field Hint--\x3e\n <span class="description" *ngIf="form.controls[control.key].description">\n {{ form.controls[control.key].description }}\n </span>\n <span class="warning-text" *ngIf="form.controls[control.key].warning">{{ form.controls[control.key].warning }}</span>\n\n </div>\n <span class="character-count" [class.error]="((errors?.maxlength && !errors?.maxlengthFields) || (errors?.maxlength && errors?.maxlengthFields && errors.maxlengthFields.includes(focusedField)))" *ngIf="showCount && form.controls[control.key].controlType !== \'picker\'">{{ itemCount }}/{{ maxLength || form.controls[control.key].maxlength }}</span>\n <span class="record-count" [class.zero-count]="itemCount === 0" [class.row-picker]="form.controls[this.control.key].config.columns" *ngIf="showCount && form.controls[control.key].controlType === \'picker\'">{{ itemCount }}/{{ maxLength || form.controls[control.key].maxlength }}</span>\n </div>\n \x3c!--Tip Wel--\x3e\n <novo-tip-well *ngIf="form.controls[control.key].tipWell" [name]="control.key" [tip]="form.controls[control.key]?.tipWell?.tip" [icon]="form.controls[control.key]?.tipWell?.icon" [button]="form.controls[control.key]?.tipWell?.button" [sanitize]="form.controls[control.key]?.tipWell?.sanitize"></novo-tip-well>\n </div>\n <i *ngIf="form.controls[control.key].fieldInteractionloading" class="loading">\n <svg version="1.1"\n xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/"\n x="0px" y="0px" width="18.2px" height="18.5px" viewBox="0 0 18.2 18.5" style="enable-background:new 0 0 18.2 18.5;"\n xml:space="preserve">\n <style type="text/css">\n .spinner { fill:#FFFFFF; }\n </style>\n <path class="spinner" d="M9.2,18.5C4.1,18.5,0,14.4,0,9.2S4.1,0,9.2,0c0.9,0,1.9,0.1,2.7,0.4c0.8,0.2,1.2,1.1,1,1.9\n c-0.2,0.8-1.1,1.2-1.9,1C10.5,3.1,9.9,3,9.2,3C5.8,3,3,5.8,3,9.2s2.8,6.2,6.2,6.2c2.8,0,5.3-1.9,6-4.7c0.2-0.8,1-1.3,1.8-1.1\n c0.8,0.2,1.3,1,1.1,1.8C17.1,15.7,13.4,18.5,9.2,18.5z"/>\n </svg>\n </i>\n </div>\n </div>\n ',host:{"[class]":"form.controls[control.key].controlType","[attr.data-control-type]":"form.controls[control.key].controlType","[class.disabled]":"form.controls[control.key].readOnly","[class.hidden]":"form.controls[control.key].hidden","[attr.data-control-key]":"control.key","[class.inline-embedded]":"control.isInlineEmbedded","[class.embedded]":"control.isEmbedded"}}]}],ba.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:Hn},{type:fa},{type:ya},{type:t.ChangeDetectorRef},{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},ba.propDecorators={control:[{type:t.Input}],form:[{type:t.Input}],condensed:[{type:t.Input}],autoFocus:[{type:t.Input}],change:[{type:t.Output}],edit:[{type:t.Output}],save:[{type:t.Output}],delete:[{type:t.Output}],upload:[{type:t.Output}],onBlur:[{type:t.Output,args:["blur"]}],onFocus:[{type:t.Output,args:["focus"]}]};var Ca=function(){function e(e,n,o){this.formUtils=e,this.fb=n,this.ref=o,this._vertical=!1,this._remove=!1,this._edit=!1,this._collapsible=!1,this.onRemove=new t.EventEmitter,this.onEdit=new t.EventEmitter,this.onAdd=new t.EventEmitter,this.change=new t.EventEmitter,this.controlLabels=[],this.toggled=!1,this.disabledArray=[],this.currentIndex=0}return Object.defineProperty(e.prototype,"vertical",{get:function(){return this._vertical},set:function(e){this._vertical=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"remove",{get:function(){return this._remove},set:function(e){this._remove=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"edit",{get:function(){return this._edit},set:function(e){this._edit=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"collapsible",{get:function(){return this._collapsible},set:function(e){this._collapsible=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"icon",{get:function(){return this._icon},set:function(e){this._icon=e&&-1!==e.indexOf("bhi")?e:"bhi-"+e},enumerable:!1,configurable:!0}),e.prototype.ngAfterContentInit=function(){if(!this.key)throw new Error("novo-control-group must have the [key] attribute provided!")},e.prototype.ngOnChanges=function(e){var t=this,n=e.initialValue;n&&n.currentValue!==n.previousValue&&!n.firstChange&&this.clearControls(),this.initialValue&&Array.isArray(this.initialValue)?0!==this.initialValue.length&&(this.currentIndex=0,this.initialValue.forEach((function(e){return t.addNewControl(e)}))):this.initialValue&&this.addNewControl(this.initialValue),this.vertical||(this.controlLabels=(this.controls||[]).map((function(e){return{value:e.label,width:e.width,required:e.required,key:e.key}})),this.ref.markForCheck())},e.prototype.ngOnDestroy=function(){this.clearControls()},e.prototype.onChange=function(){this.change.emit(this)},e.prototype.resetAddRemove=function(){var e=this;this.disabledArray.forEach((function(t,n){t.edit=e.checkCanEdit(n),t.remove=e.checkCanRemove(n)})),this.ref.markForCheck()},e.prototype.addNewControl=function(e){var t=this.form.controls[this.key],n=this.buildNestedFormGroup(e);t?t.push(n):this.form.addControl(this.key,this.fb.array([n])),this.disabledArray.push({edit:!0,remove:!0}),this.resetAddRemove(),e||this.onAdd.emit(),this.currentIndex++,this.assignIndexes(),n.fieldInteractionEvents.subscribe(this.onFieldInteractionEvent.bind(this)),this.ref.markForCheck()},e.prototype.removeControl=function(e,t){var n=this;void 0===t&&(t=!0),t&&R.isFunction(this.shouldRemove)?this.shouldRemove(e).then((function(o){o&&n.doRemoveControl(e,t)})):this.doRemoveControl(e,t)},e.prototype.doRemoveControl=function(e,t){var n=this.form.controls[this.key],o=n.at(e);o.fieldInteractionEvents.unsubscribe(),t&&this.onRemove.emit({value:o.value,index:e}),n.removeAt(e),this.disabledArray=this.disabledArray.filter((function(t,n){return n!==e})),this.resetAddRemove(),this.currentIndex--,this.assignIndexes(),this.ref.markForCheck()},e.prototype.editControl=function(e){var t=this.form.controls[this.key];this.onEdit.emit({value:t.at(e).value,index:e})},e.prototype.toggle=function(e){R.swallowEvent(e),this.collapsible&&(this.toggled=!this.toggled,this.ref.markForCheck())},e.prototype.buildNestedFormGroup=function(e){var t=this.getNewControls();return e&&this.formUtils.setInitialValues(t,e),this.formUtils.toFormGroup(t)},e.prototype.clearControls=function(){var e=this.form.controls[this.key];if(e){for(var t=e.length-1;t>=0;t--)this.removeControl(t,!1);this.currentIndex=0}},e.prototype.checkCanEdit=function(e){if(this.canEdit){var t=this.form.controls[this.key];return this.canEdit(t.at(e).value,e)}return!0},e.prototype.checkCanRemove=function(e){if(this.canRemove){var t=this.form.controls[this.key];return!t.at(e)||this.canRemove(t.at(e).value,e)}return!0},e.prototype.getNewControls=function(){var e=[];return(this.controls||[]).forEach((function(t){e.push(new Ro(t.__type,t))})),e},e.prototype.assignIndexes=function(){var e=this.form.controls[this.key];if(e)for(var t=0;t<e.length;t++){var n=e.at(t);n.associations=Object.assign(Object.assign({},n.associations),{index:t})}},e.prototype.onFieldInteractionEvent=function(){this.ref.markForCheck()},e}();Ca.decorators=[{type:t.Component,args:[{selector:"novo-control-group",template:'<h6 class="novo-section-header" *ngIf="label">\n <span (click)="toggle($event)" [class.clickable]="collapsible">\n <i *ngIf="icon && !collapsible" [ngClass]="icon" [attr.data-automation-id]="\'novo-control-group-icon-\' + key"></i>\n <i *ngIf="collapsible" class="bhi-next" [class.toggled]="toggled" [attr.data-automation-id]="\'novo-control-group-collapse-\' + key"></i>\n <span [attr.data-automation-id]="\'novo-control-group-label-\' + key">{{ label }}</span>\n </span>\n <label class="novo-control-group-description" *ngIf="description" [attr.data-automation-id]="\'novo-control-group-description-\' + key">{{ description }}</label>\n</h6>\n<div class="novo-control-group-controls" [class.vertical]="vertical" [class.horizontal]="!vertical" [class.hidden]="collapsible && !toggled">\n <ng-template #defaultTemplate let-index="index" let-form="form" let-key="key">\n <div class="novo-control-group-control">\n <div *ngFor="let c of controls" class="novo-control-container {{c.key}}" [class.is-label]="c.controlType === \'read-only\'" [style.max-width.px]="c.width">\n <novo-control (change)="onChange()" [form]="(form?.controls)[key][\'controls\'][index]" [control]="c" [condensed]="!vertical || c.controlType === \'read-only\'"></novo-control>\n </div>\n <div class="novo-control-container last" *ngIf="edit && !vertical">\n <button [disabled]="!disabledArray[index].edit" type="button" *ngIf="edit && !vertical" theme="icon" icon="edit" (click)="editControl(index)" [attr.data-automation-id]="\'novo-control-group-edit-\' + key" index="-1"></button>\n </div>\n <div class="novo-control-container last" *ngIf="remove && !vertical">\n <button [disabled]="!disabledArray[index].remove" type="button" *ngIf="remove && !vertical" theme="icon" icon="delete-o" (click)="removeControl(index)" [attr.data-automation-id]="\'novo-control-group-delete-\' + key" index="-1"></button>\n </div>\n </div>\n <button [disabled]="!disabledArray[index].edit" type="button" *ngIf="edit && vertical" theme="icon" icon="edit" (click)="editControl(index)" [attr.data-automation-id]="\'novo-control-group-edit-\' + key" index="-1"></button>\n <button [disabled]="!disabledArray[index].remove" type="button" *ngIf="remove && vertical" theme="icon" icon="delete-o" (click)="removeControl(index)" [attr.data-automation-id]="\'novo-control-group-delete-\' + key" index="-1"></button>\n </ng-template>\n <ng-template #defaultColumnLabelTemplate let-form="form" let-key="key">\n <div class="novo-control-group-control-label {{ label.key }}" *ngFor="let label of controlLabels" [style.max-width.px]="label.width" [class.column-required]="label.required">\n <span [attr.data-automation-id]="\'novo-control-group-label-\' + label.value">{{ label.value }}</span>\n </div>\n <div class="novo-control-group-control-label last" *ngIf="edit" [attr.data-automation-id]="\'novo-control-group-edit-\' + key"></div>\n <div class="novo-control-group-control-label last" *ngIf="remove" [attr.data-automation-id]="\'novo-control-group-delete-\' + key"></div>\n </ng-template>\n <ng-container *ngIf="!vertical && (form?.controls)[key] && (form?.controls)[key][\'controls\'].length !== 0">\n <div class="novo-control-group-labels" *ngIf="!vertical && (form?.controls)[key] && (form?.controls)[key][\'controls\'].length !== 0">\n <ng-template [ngTemplateOutlet]="columnLabelTemplate || defaultColumnLabelTemplate" [ngTemplateOutletContext]="{ form: form, key: key, controlLabels: controlLabels }">\n </ng-template>\n </div>\n </ng-container>\n <ng-container *ngIf="(form?.controls)[key]">\n <div class="novo-control-group-row" *ngFor="let control of (form?.controls)[key][\'controls\']; let index = index">\n <ng-template [ngTemplateOutlet]="rowTemplate || defaultTemplate" [ngTemplateOutletContext]="{ form: form, index: index, key: key, controls: controls }">\n </ng-template>\n </div>\n </ng-container>\n <div class="novo-control-group-empty" *ngIf="(form?.controls)[key] && (form?.controls)[key][\'controls\'].length === 0" [attr.data-automation-id]="\'novo-control-group-empty-\' + key">\n {{ emptyMessage }}\n </div>\n <p *ngIf="add">\n <button type="button" theme="dialogue" icon="add-thin" (click)="addNewControl()" [attr.data-automation-id]="\'novo-control-group-bottom-add-\' + key" index="-1">\n {{ add?.label }}\n </button>\n </p>\n</div>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Ca.ctorParameters=function(){return[{type:ia},{type:n.FormBuilder},{type:t.ChangeDetectorRef}]},Ca.propDecorators={vertical:[{type:t.Input}],add:[{type:t.Input}],remove:[{type:t.Input}],edit:[{type:t.Input}],collapsible:[{type:t.Input}],form:[{type:t.Input}],controls:[{type:t.Input}],key:[{type:t.Input}],label:[{type:t.Input}],description:[{type:t.Input}],emptyMessage:[{type:t.Input}],icon:[{type:t.Input}],initialValue:[{type:t.Input}],canEdit:[{type:t.Input}],canRemove:[{type:t.Input}],shouldRemove:[{type:t.Input}],rowTemplate:[{type:t.Input}],columnLabelTemplate:[{type:t.Input}],onRemove:[{type:t.Output}],onEdit:[{type:t.Output}],onAdd:[{type:t.Output}],change:[{type:t.Output}]};var Sa=function(){function e(e){this.templates=e}return e.prototype.ngAfterViewInit=function(){var e=this;this.defaultTemplates&&this.defaultTemplates.length&&this.defaultTemplates.forEach((function(t){e.templates.addDefault(t.name,t.template)}))},e}();Sa.decorators=[{type:t.Component,args:[{selector:"novo-control-templates",template:'\n \x3c!---Readonly---\x3e\n <ng-template novoTemplate="read-only" let-form="form" let-control>\n <div>{{ form.value[control.key] }}</div>\n </ng-template>\n \x3c!--Textbox---\x3e\n <ng-template novoTemplate="textbox" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container novo-control-input-with-label" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <input *ngIf="control?.type !== \'number\' && control?.textMaskEnabled" [textMask]="control.maskOptions" [formControlName]="control.key" [id]="control.key" [type]="control?.type" [placeholder]="control?.placeholder" (input)="methods.emitChange($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" autocomplete>\n <input *ngIf="control?.type !== \'number\' && !control?.textMaskEnabled" [class.maxlength-error]="errors?.maxlength" [formControlName]="control.key" [id]="control.key" [type]="control?.type" [placeholder]="control?.placeholder" (input)="methods.emitChange($event)" [maxlength]="control?.maxlength" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" autocomplete>\n <input *ngIf="control?.type === \'number\' && control?.subType !== \'percentage\'" [class.maxlength-error]="errors?.maxlength" [formControlName]="control.key" [id]="control.key" [type]="control?.type" [placeholder]="control?.placeholder" (keydown)="methods.restrictKeys($event)" (input)="methods.emitChange($event)" [maxlength]="control?.maxlength" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" step="any" (mousewheel)="numberInput.blur()" #numberInput>\n \x3c!-- the percentage input does not use formControlName like a normal reactive input because instead of setting the floating point value directly, it is multiplied by 100 into a percentage value --\x3e\n <input *ngIf="control?.type === \'number\' && control?.subType === \'percentage\'" [id]="control.key" [type]="control?.type" [placeholder]="control?.placeholder" (keydown)="methods.restrictKeys($event)" [value]="control?.percentValue" [disabled]="control?.readOnly" (input)="methods.handlePercentChange($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" step="any" (mousewheel)="percentInput.blur()" #percentInput>\n <label class="input-label" *ngIf="control?.subType === \'currency\'">{{ control.currencyFormat }}</label>\n <label class="input-label" *ngIf="control?.subType === \'percentage\'">%</label>\n </div>\n </ng-template>\n\n \x3c!--Textarea---\x3e\n <ng-template novoTemplate="text-area" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div class="textarea-container" [formGroup]="form" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <textarea [class.maxlength-error]="errors?.maxlength" [name]="control.key" [attr.id]="control.key" [placeholder]="control.placeholder" [formControlName]="control.key" autosize (input)="methods.handleTextAreaInput($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [maxlength]="control?.maxlength"></textarea>\n </div>\n </ng-template>\n\n \x3c!--Editor--\x3e\n <ng-template novoTemplate="editor" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-editor [name]="control.key" [formControlName]="control.key" [startupFocus]="control.startupFocus" [minimal]="control.minimal" [fileBrowserImageUploadUrl]="control.fileBrowserImageUploadUrl" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [config]="control.config"></novo-editor>\n </div>\n </ng-template>\n\n \x3c!--AceEditor--\x3e\n <ng-template novoTemplate="ace-editor" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-ace-editor [name]="control.key" [formControlName]="control.key" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)"></novo-ace-editor>\n </div>\n </ng-template>\n\n \x3c!--HTML5 Select--\x3e\n <ng-template novoTemplate="native-select" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <select [id]="control.key" [formControlName]="control.key" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <option *ngIf="control.placeholder" value="" disabled selected hidden>{{ control.placeholder }}</option>\n <option *ngFor="let opt of control.options" [value]="opt.key">{{opt.value}}</option>\n </select>\n </div>\n </ng-template>\n\n \x3c!--File--\x3e\n <ng-template novoTemplate="file" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-file-input [formControlName]="control.key" [id]="control.key" [name]="control.key" [placeholder]="control.placeholder" [value]="control.value" [multiple]="control.multiple" [layoutOptions]="control.layoutOptions" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" (edit)="methods.handleEdit($event)" (save)="methods.handleSave($event)" (delete)="methods.handleDelete($event)" (upload)="methods.handleUpload($event)"></novo-file-input>\n </div>\n </ng-template>\n\n \x3c!--Tiles--\x3e\n <ng-template novoTemplate="tiles" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-tiles [options]="control.options" [formControlName]="control.key" (onChange)="methods.modelChange($event)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" [controlDisabled]="control.disabled"></novo-tiles>\n </div>\n </ng-template>\n\n \x3c!--Picker--\x3e\n <ng-template novoTemplate="picker" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container">\n <novo-picker [config]="control.config" [formControlName]="control.key" [placeholder]="control.placeholder" [parentScrollSelector]="control.parentScrollSelector" *ngIf="!control.multiple" (select)="methods.modelChange($event);" (changed)="methods.modelChangeWithRaw($event)" (typing)="methods.handleTyping($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition"></novo-picker>\n <novo-chips [source]="control.config" [type]="control.config.type" [formControlName]="control.key" [placeholder]="control.placeholder" [maxlength]="control?.maxlength" *ngIf="control.multiple && !control.config.columns" [closeOnSelect]="control.closeOnSelect" (changed)="methods.modelChangeWithRaw($event)" (typing)="methods.handleTyping($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition"></novo-chips>\n <novo-row-chips [source]="control.config" [type]="control.config.type" [formControlName]="control.key" [placeholder]="control.placeholder" *ngIf="control.multiple && control.config.columns" [closeOnSelect]="control.closeOnSelect" (changed)="methods.modelChangeWithRaw($event)" (typing)="methods.handleTyping($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition"></novo-row-chips>\n </div>\n </ng-template>\n\n \x3c!--Novo Select--\x3e\n <ng-template novoTemplate="select" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-select [options]="control.options" [headerConfig]="control.headerConfig" [placeholder]="control.placeholder" [formControlName]="control.key" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" (onSelect)="methods.modelChange($event)"></novo-select>\n </div>\n </ng-template>\n\n \x3c!--Radio--\x3e\n <ng-template novoTemplate="radio" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container">\n <novo-radio [name]="control.key" [formControlName]="control.key" *ngFor="let option of control.options" [value]="option.value" [label]="option.label" [checked]="option.value === form.value[control.key] || (form.value[control.key] && option.value === form.value[control.key].id)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" [button]="!!option.icon" [icon]="option.icon" [attr.data-automation-id]="control.key + \'-\' + (option?.label || option?.value)"></novo-radio>\n </div>\n </ng-template>\n\n \x3c!--Time--\x3e\n <ng-template novoTemplate="time" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <novo-time-picker-input [attr.id]="control.key" [name]="control.key" [formControlName]="control.key" [placeholder]="control.placeholder" [military]="control.military"></novo-time-picker-input>\n </div>\n </ng-template>\n\n \x3c!--Date--\x3e\n <ng-template novoTemplate="date" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <novo-date-picker-input [attr.id]="control.key" [name]="control.key" [formControlName]="control.key" [start]="control.startDate" [end]="control.endDate" [format]="control.dateFormat" [allowInvalidDate]="control.allowInvalidDate" [textMaskEnabled]="control.textMaskEnabled" [placeholder]="control.placeholder" [weekStart]="control.weekStart" (focusEvent)="methods.handleFocus($event)" (blurEvent)="methods.handleBlur($event)" (changeEvent)="methods.emitChange($event)"></novo-date-picker-input>\n </div>\n </ng-template>\n\n \x3c!--Date and Time--\x3e\n <ng-template novoTemplate="date-time" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <novo-date-time-picker-input [attr.id]="control.key" [name]="control.key" [formControlName]="control.key" [start]="control.startDate" [end]="control.endDate" [placeholder]="control.placeholder" [military]="control.military" [weekStart]="control.weekStart" (focusEvent)="methods.handleFocus($event)" (blurEvent)="methods.handleBlur($event)" (changeEvent)="methods.emitChange($event)" ></novo-date-time-picker-input>\n </div>\n </ng-template>\n\n \x3c!--Address--\x3e\n <ng-template novoTemplate="address" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-address [formControlName]="control.key" [config]="control?.config" [readOnly]="control?.readOnly" (change)="methods.handleAddressChange($event)" (focus)="methods.handleFocus($event.event, $event.field)" (blur)="methods.handleBlur($event.event, $event.field)" (validityChange)="methods.updateValidity()"></novo-address>\n </div>\n </ng-template>\n\n \x3c!--Checkbox--\x3e\n <ng-template novoTemplate="checkbox" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-checkbox [formControlName]="control?.key" [name]="control?.key" [label]="control?.checkboxLabel" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" [layoutOptions]="control?.layoutOptions"></novo-checkbox>\n </div>\n </ng-template>\n\n \x3c!--Checklist--\x3e\n <ng-template novoTemplate="checklist" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-check-list [formControlName]="control.key" [name]="control.key" [options]="control?.options" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" (onSelect)="methods.modelChange($event)"></novo-check-list>\n </div>\n </ng-template>\n\n \x3c!--QuickNote--\x3e\n <ng-template novoTemplate="quick-note" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-quick-note [formControlName]="control.key" [startupFocus]="control?.startupFocus" [placeholder]="control?.placeholder" [config]="control?.config" (change)="methods.modelChange($event)" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" [tooltipPreline]="control?.tooltipPreline"></novo-quick-note>\n </div>\n </ng-template>\n '}]}],Sa.ctorParameters=function(){return[{type:ya}]},Sa.propDecorators={defaultTemplates:[{type:t.ViewChildren,args:[zt]}]};var ka=function(){};ka.decorators=[{type:t.Component,args:[{selector:"novo-fieldset-header",template:"\n <h6><i [class]=\"icon || 'bhi-section'\"></i>{{title}}</h6>\n "}]}],ka.propDecorators={title:[{type:t.Input}],icon:[{type:t.Input}]};var Ia=function(){this.controls=[],this.isEmbedded=!1,this.isInlineEmbedded=!1,this.hidden=!1};Ia.decorators=[{type:t.Component,args:[{selector:"novo-fieldset",template:'\n <div class="novo-fieldset-container">\n <novo-fieldset-header [icon]="icon" [title]="title" *ngIf="title" [class.embedded]="isEmbedded" [class.inline-embedded]="isInlineEmbedded" [class.hidden]="hidden"></novo-fieldset-header>\n <ng-container *ngFor="let control of controls;let controlIndex = index;">\n <div class="novo-form-row" [class.disabled]="control.disabled" *ngIf="control.__type !== \'GroupedControl\'">\n <novo-control [autoFocus]="autoFocus && index === 0 && controlIndex === 0" [control]="control" [form]="form"></novo-control>\n </div>\n <div *ngIf="control.__type === \'GroupedControl\'">TODO - GroupedControl</div>\n </ng-container>\n </div>\n '}]}],Ia.propDecorators={controls:[{type:t.Input}],form:[{type:t.Input}],title:[{type:t.Input}],icon:[{type:t.Input}],index:[{type:t.Input}],autoFocus:[{type:t.Input}],isEmbedded:[{type:t.Input}],isInlineEmbedded:[{type:t.Input}],hidden:[{type:t.Input}]};var Ea=function(){function e(e,t){this.element=e,this.templates=t,this.controls=[],this.fieldsets=[],this.hideNonRequiredFields=!0,this.autoFocusFirstField=!1,this.allFieldsRequired=!1,this.allFieldsNotRequired=!1,this.showingAllFields=!1,this.showingRequiredFields=!0,this.numControls=0}return e.prototype.ngOnInit=function(){this.ngOnChanges()},e.prototype.ngOnChanges=function(e){var t=this;this.form.layout=this.layout,this.fieldsets&&this.fieldsets.length||!this.controls||!this.controls.length?this.fieldsets&&this.fieldsets.forEach((function(e){t.numControls=t.numControls+e.controls.length})):(this.fieldsets=[{controls:this.controls}],this.numControls=this.controls.length);var n=[],o=[];this.fieldsets.forEach((function(e){e.controls.forEach((function(e){e.required?n.push(e):o.push(e)}))})),this.allFieldsRequired=n.length===this.numControls,this.allFieldsNotRequired=o.length===this.numControls,this.allFieldsNotRequired&&this.hideNonRequiredFields&&this.fieldsets.forEach((function(e){e.controls.forEach((function(e){t.form.controls[e.key].hidden=!1}))})),this.form.fieldsets=ae(this.fieldsets)},e.prototype.ngAfterContentInit=function(){var e=this;this.customTemplates&&this.customTemplates.length&&this.customTemplates.forEach((function(t){e.templates.addCustom(t.name,t.template)}))},e.prototype.showAllFields=function(){var e=this;this.form.fieldsets.forEach((function(t){t.controls.forEach((function(t){var n=e.form.controls[t.key];e.fieldsAlreadyHidden.includes(t.key)||(n.hidden=!1)}))})),this.showingAllFields=!0,this.showingRequiredFields=!1},e.prototype.showOnlyRequired=function(e){var t=this;this.fieldsAlreadyHidden=[],this.form.fieldsets.forEach((function(n){n.controls.forEach((function(n){var o=t.form.controls[n.key];o.hidden&&t.fieldsAlreadyHidden.push(n.key),n.required||(o.hidden=!0),e&&!R.isBlank(t.form.value[n.key])&&(!n.isEmpty||n.isEmpty&&n.isEmpty(o))&&(o.hidden=!0),o.errors&&(o.hidden=!1)}))})),this.showingAllFields=!1,this.showingRequiredFields=!0,this.forceValidation()},Object.defineProperty(e.prototype,"values",{get:function(){return this.form?this.form.value:null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isValid",{get:function(){return!!this.form&&this.form.valid},enumerable:!1,configurable:!0}),e.prototype.updatedValues=function(){var e=this,t=null;return this.form.fieldsets.forEach((function(n){n.controls.forEach((function(n){(e.form.controls[n.key].dirty||n.dirty)&&(t||(t={}),t[n.key]=e.form.value[n.key])}))})),t},e.prototype.forceValidation=function(){var e=this;Object.keys(this.form.controls).forEach((function(t){var n=e.form.controls[t];n.required&&R.isBlank(e.form.value[n.key])&&(n.markAsDirty(),n.markAsTouched())}))},e}();Ea.decorators=[{type:t.Component,args:[{selector:"novo-dynamic-form",template:'\n <novo-control-templates></novo-control-templates>\n <div class="novo-form-container">\n <header>\n <ng-content select="form-title"></ng-content>\n <ng-content select="form-subtitle"></ng-content>\n </header>\n <form class="novo-form" [formGroup]="form">\n <ng-container *ngFor="let fieldset of form.fieldsets;let i = index">\n <novo-fieldset *ngIf="fieldset.controls.length" [index]="i" [autoFocus]="autoFocusFirstField" [icon]="fieldset.icon" [controls]="fieldset.controls" [title]="fieldset.title" [form]="form" [isEmbedded]="fieldset.isEmbedded" [isInlineEmbedded]="fieldset.isInlineEmbedded" [hidden]="fieldset.hidden"></novo-fieldset>\n </ng-container>\n </form>\n </div>\n ',providers:[ya]}]}],Ea.ctorParameters=function(){return[{type:t.ElementRef},{type:ya}]},Ea.propDecorators={controls:[{type:t.Input}],fieldsets:[{type:t.Input}],form:[{type:t.Input}],layout:[{type:t.Input}],hideNonRequiredFields:[{type:t.Input}],autoFocusFirstField:[{type:t.Input}],customTemplates:[{type:t.ContentChildren,args:[zt]}]};var wa=function(){function e(e){this.templates=e,this.hideHeader=!1,this.showingAllFields=!1,this.showingRequiredFields=!0}return Object.defineProperty(e.prototype,"value",{get:function(){return this.form.getRawValue()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isValid",{get:function(){return this.form.valid},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.form.layout=this.layout},e.prototype.ngAfterContentInit=function(){var e=this;this.customTemplates&&this.customTemplates.length&&this.customTemplates.forEach((function(t){e.templates.addCustom(t.name,t.template)}))},e.prototype.showAllFields=function(){var e=this;Object.keys(this.form.controls).forEach((function(t){e.form.controls[t].hidden=!1})),this.showingAllFields=!0,this.showingRequiredFields=!1},e.prototype.showOnlyRequired=function(e){var t=this;Object.keys(this.form.controls).forEach((function(n){t.form.controls[n].required||(t.form.controls[n].hidden=!0),e&&!R.isBlank(t.form.value[n])&&(t.form.controls[n].hidden=!0),t.form.controls[n].errors&&(t.form.controls[n].hidden=!1)})),this.showingAllFields=!1,this.showingRequiredFields=!0,this.forceValidation()},e.prototype.forceValidation=function(){var e=this;Object.keys(this.form.controls).forEach((function(t){var n=e.form.controls[t];n.required&&R.isBlank(e.form.value[n.key])&&(n.markAsDirty(),n.markAsTouched())}))},e}();wa.decorators=[{type:t.Component,args:[{selector:"novo-form",template:'\n <novo-control-templates></novo-control-templates>\n <div class="novo-form-container">\n <header *ngIf="!hideHeader">\n <ng-content select="form-title"></ng-content>\n <ng-content select="form-subtitle"></ng-content>\n </header>\n <form class="novo-form" [formGroup]="form">\n <ng-content></ng-content>\n </form>\n </div>\n ',providers:[ya]}]}],wa.ctorParameters=function(){return[{type:ya}]},wa.propDecorators={form:[{type:t.Input}],layout:[{type:t.Input}],hideHeader:[{type:t.Input}],customTemplates:[{type:t.ContentChildren,args:[zt]}]};var Ta={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Pa})),multi:!0},Oa=function(){};Oa.decorators=[{type:t.Component,args:[{selector:"novo-radio-group",template:"<ng-content></ng-content>"}]}];var Pa=function(){function e(e){this.ref=e,this.button=!1,this.theme="secondary",this.disabled=!1,this.change=new t.EventEmitter,this.onModelChange=function(){},this.onModelTouched=function(){}}return e.prototype.select=function(e){R.swallowEvent(e),this.checked||(this.checked=!this.checked,this.change.emit(this.value),this.onModelChange(this.value),this.ref.markForCheck())},e.prototype.writeValue=function(e){this.model=e,this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();Pa.decorators=[{type:t.Component,args:[{selector:"novo-radio",providers:[Ta],template:'\n <input [name]="name" type="radio" [checked]="checked" [attr.id]="name" (change)="select($event)" [disabled]="disabled">\n <label [attr.for]="name" (click)="select($event)" [class.disabled]="disabled">\n <button *ngIf="button" [ngClass]="{\'unchecked\': !checked, \'checked\': checked, \'has-icon\': !!icon}" [theme]="theme" [icon]="icon">{{ label }}</button>\n <div *ngIf="!button">\n <i [ngClass]="{\'bhi-radio-empty\': !checked, \'bhi-radio-filled\': checked}"></i>\n {{ label }}\n <ng-content></ng-content>\n </div>\n </label>\n ',host:{"[class.vertical]":"vertical"}}]}],Pa.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},Pa.propDecorators={name:[{type:t.Input}],value:[{type:t.Input}],checked:[{type:t.Input}],vertical:[{type:t.Input}],label:[{type:t.Input}],button:[{type:t.Input}],theme:[{type:t.Input}],icon:[{type:t.Input}],disabled:[{type:t.Input}],change:[{type:t.Output}]};var Aa=function(){};Aa.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[Pa,Oa],exports:[Pa,Oa]}]}];var Da=function(e){function t(t,n,o){var a=e.call(this,t,n,o)||this;return a.labels=n,a.taggingMode="",a}return te(t,e),Object.defineProperty(t.prototype,"term",{get:function(){return this._term},set:function(e){var t=this;this._term=e.searchTerm,this.taggingMode=e.taggingMode,this.hasError=!1,this.isLoading=!0,this.search(e,this.taggingMode).subscribe((function(e){t.matches=t.isStatic?t.filterData(e):e,t.isLoading=!1}),(function(){t.hasError=!0,t.isLoading=!1}))},enumerable:!1,configurable:!0}),t.prototype.search=function(e,t){var n=this,o=this.config.options[t];return u.from(new Promise((function(t,a){if(o)if(Array.isArray(o))n.isStatic=!0,t(n.structureArray(o));else if(o.hasOwnProperty("reject")&&o.hasOwnProperty("resolve")||Object.getPrototypeOf(o).hasOwnProperty("then"))n.isStatic=!1,o.then(n.structureArray.bind(n)).then(t,a);else{if("function"!=typeof o)throw a("The data provided is not an array or a promise"),new Error("The data provided is not an array or a promise");n.isStatic=!1,o(e).then(n.structureArray.bind(n)).then(t,a)}else a("error")})))},t.prototype.structureArray=function(e){var t=this;return!e||"string"!=typeof e[0]&&"number"!=typeof e[0]?e.map((function(e){var n=t.config.field?e[t.config.field[t.taggingMode]]:e.value||e;return{value:n,label:t.config.format?R.interpolate(t.config.format[t.taggingMode],e):e.label||String(n),data:e}})):e.map((function(e){return{value:e,label:e}}))},t.prototype.selectMatch=function(e){e&&(e.stopPropagation(),e.preventDefault());var t=this.activeMatch;return t&&(this.parent.onSelected(this.taggingMode,t),this.parent.hideResults()),!1},t}(It);Da.decorators=[{type:t.Component,args:[{selector:"quick-note-results",host:{class:"active"},template:'\n <novo-loading theme="line" *ngIf="isLoading && !matches.length"></novo-loading>\n <novo-list *ngIf="matches.length > 0">\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match===activeMatch"\n (mouseenter)="selectActive(match)">\n <item-content>\n <p [innerHtml]="highlight(match.label, term)"></p>\n </item-content>\n </novo-list-item>\n </novo-list>\n <p class="picker-error" *ngIf="hasError">{{ labels.quickNoteError }}</p>\n <p class="picker-null" *ngIf="!isLoading && !matches.length && !hasError">{{ labels.quickNoteEmpty }}</p>\n '}]}],Da.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]};var xa={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Ra})),multi:!0},Ra=function(e){function n(n,o,a){var i=e.call(this,o)||this;return i.zone=n,i.componentUtils=a,i.startupFocus=!1,i.focus=new t.EventEmitter,i.blur=new t.EventEmitter,i.change=new t.EventEmitter,i.placeholderVisible=!1,i._placeholderElement=null,i.onModelChange=function(){},i.onModelTouched=function(){},i.onActiveChange.subscribe((function(e){e||setTimeout((function(){i.hideResults()}))})),i}return te(n,e),n.prototype.ngOnInit=function(){if(!this.config)throw new Error("No config set for QuickNote!");if(!this.config.triggers)throw new Error("QuickNote config must supply triggers!");if(!this.config.options)throw new Error("QuickNote config must supply options!");this.resultsComponent=this.config.resultsTemplate||Da},n.prototype.ngOnDestroy=function(){var e=this;this.ckeInstance&&(this.ckeInstance.focusManager.blur(!0),setTimeout((function(){e.ckeInstance.removeAllListeners(),CKEDITOR.instances[e.ckeInstance.name].destroy(),e.ckeInstance.destroy(),e.ckeInstance=null})))},n.prototype.ngAfterViewInit=function(){var e=this;CKEDITOR?(this.ckeInstance=CKEDITOR.replace(this.host.nativeElement,this.getCKEditorConfig()),this.writeValue(this.model),this.ckeInstance.on("key",(function(t){e.onKey(t.data.domEvent.$)||t.cancel()})),this.ckeInstance.on("change",(function(){e.debounceTimeout&&clearTimeout(e.debounceTimeout),e.debounceTimeout=setTimeout((function(){e.zone.run((function(){e.onValueChange()})),e.debounceTimeout=null}),250)})),this.ckeInstance.on("blur",(function(t){e.showPlaceholder(),e.blur.emit(t)})),this.ckeInstance.on("focus",(function(t){e.hidePlaceholder(),e.focus.emit(t)})),this.ckeInstance.on("instanceReady",(function(t){e.showPlaceholder(),e.config.readOnly&&e.ckeInstance.setReadOnly(e.config.readOnly)}))):console.error("Make sure to include CKEditor sources in your dependencies!")},n.prototype.onTouched=function(e){this.onModelTouched()},n.prototype.writeValue=function(e){e&&(e.references||e.note)?this.model={note:e.note||"",references:e.references||{}}:this.model={note:e,references:{}},this.ckeInstance&&this.ckeInstance.setData(this.model.note)},n.prototype.registerOnChange=function(e){this.onModelChange=e},n.prototype.registerOnTouched=function(e){this.onModelTouched=e},n.defaultRenderer=function(e,t){return"<a>"+e+t.label+"</a>"},n.prototype.getRenderer=function(e){return this.config.renderer?this.config.renderer[e]:n.defaultRenderer},n.prototype.onKey=function(e){var t=this;if(e.key)if(this.quickNoteResults){if(e.keyCode===We.ESC)return this.zone.run((function(){t.hideResults()})),!1;if(e.keyCode===We.UP)return this.zone.run((function(){t.quickNoteResults.instance.prevActiveMatch()})),!1;if(e.keyCode===We.DOWN)return this.zone.run((function(){t.quickNoteResults.instance.nextActiveMatch()})),!1;if(e.keyCode===We.ENTER)return this.zone.run((function(){t.quickNoteResults.instance.selectActiveMatch()})),!1}else{var n=this.config.triggers||{};Object.keys(n).forEach((function(o){var a=n[o]||{};e.key===a&&(t.isTagging=!0,t.taggingMode=o)}))}return!0},n.prototype.onValueChange=function(){var e=this.ckeInstance.getData(),t=new RegExp(String.fromCharCode(8203),"g");e=e.replace(t,""),this.validateReferences(),this.showResults();var n=null;e&&(n={note:e,references:this.model.references}),this.onModelChange(n),this.change.emit(n),this.onTouched()},n.prototype.showResults=function(){if(this.isTagging){var e=this.getSearchTerm();e.length?this.quickNoteResults?this.quickNoteResults.instance.term={searchTerm:e,taggingMode:this.taggingMode}:(this.quickNoteResults=this.componentUtils.append(this.resultsComponent,this.results),this.quickNoteResults.instance.parent=this,this.quickNoteResults.instance.config=this.config,this.quickNoteResults.instance.term={searchTerm:e,taggingMode:this.taggingMode},this.positionResultsDropdown()):this.quickNoteResults&&(this.quickNoteResults.destroy(),this.quickNoteResults=null),this.toggleActive(null,!0)}},n.prototype.hideResults=function(){this.isTagging=!1,this.quickNoteResults&&(this.quickNoteResults.destroy(),this.quickNoteResults=null)},n.prototype.onSelected=function(e,t){this.isTagging=!1;var n=this.config.triggers[e],o=this.getRenderer(e)(n,t);this.replaceWordAtCursor(o),this.model.references=this.model.references||{},this.model.references[e]=this.model.references[e]||[],0===this.model.references[e].filter((function(e){return JSON.stringify(e)===JSON.stringify(t)})).length&&this.model.references[e].push(t),this.onValueChange()},n.prototype.getSearchTerm=function(){var e=this.getWordAtCursor().trim();if(this.isTagging){var t=this.config.triggers[this.taggingMode];if(!e.includes(t))return this.hideResults(),"";e=e.slice(e.indexOf(t)+t.length)}return e},n.prototype.getWordAtCursor=function(){var e=this.ckeInstance.getSelection().getRanges()[0],t=e.startContainer;if(t.type===CKEDITOR.NODE_TEXT&&e.startOffset){var n=t.getText(),o=this.config.triggers[this.taggingMode],a=n.lastIndexOf(o,e.startOffset-1);if(a>0){var i=n.charAt(a-1);if(""!==i&&/\S/.test(i))return""}else if(t.hasPrevious()&&/\S$/.test(t.getPrevious().getText()))return"";var r=n.indexOf(" ",e.startOffset+1);return-1===a&&(a=0),-1===r&&(r=n.length),n.substring(a,r)}return""},n.prototype.replaceWordAtCursor=function(e){var t=this.getWordAtCursor().trim(),n=this.ckeInstance.getSelection().getRanges()[0],o=n.startContainer,a=o.getParent();if(o.type===CKEDITOR.NODE_TEXT&&a){var i=a.getHtml(),r=i.lastIndexOf(t);if(r>=0){var s=i.substring(0,r)+e+" "+i.substring(r+t.length);a.setHtml(s),n.moveToPosition(a,CKEDITOR.POSITION_BEFORE_END),this.ckeInstance.getSelection().selectRanges([n])}}},n.prototype.validateReferences=function(){var e=this,t=this.ckeInstance.document.getBody().getHtml(),n=new RegExp("&","g");t=t.replace(n,"&"),Object.keys(this.model.references).forEach((function(n){var o=e.model.references[n]||[],a=e.config.triggers[n],i=e.getRenderer(n);e.model.references[n]=o.filter((function(e){var n=i(a,e);return t.includes(n)})),0===e.model.references[n].length&&delete e.model.references[n]}))},n.prototype.getCKEditorConfig=function(){var e=this.wrapper.nativeElement.clientHeight-n.TOOLBAR_HEIGHT;return this.wrapper.nativeElement.style.setProperty("height","100%"),{enterMode:CKEDITOR.ENTER_BR,shiftEnterMode:CKEDITOR.ENTER_P,disableNativeSpellChecker:!1,height:e,startupFocus:this.startupFocus,removePlugins:"liststyle,tabletools,contextmenu",toolbar:[{name:"basicstyles",items:["Styles","FontSize","Bold","Italic","Underline","TextColor","-","NumberedList","BulletedList","Outdent","Indent","Link"]}]}},n.prototype.getCursorPosition=function(){var e=this.ckeInstance.getSelection().getRanges()[0].startContainer.$.parentElement,t=this.ckeInstance.editable().$,n=document.createElement("img");n.setAttribute("src","null"),n.setAttribute("width","0"),n.setAttribute("height","0"),e.appendChild(n);var o={top:n.offsetTop-t.scrollTop,left:n.offsetLeft-t.scrollLeft};return n.remove(),o},n.prototype.positionResultsDropdown=function(){var e=2*n.TOOLBAR_HEIGHT,t=this.getContentHeight()+n.TOOLBAR_HEIGHT,o=this.getCursorPosition().top+n.TOOLBAR_HEIGHT;o=Math.max(o,e),o=Math.min(o,t),this.quickNoteResults.instance.element.nativeElement.style.setProperty("margin-top",o+"px")},n.prototype.getContentHeight=function(){var e=0;if(this.ckeInstance.ui&&this.ckeInstance.ui.contentsElement&&this.ckeInstance.ui.contentsElement.$&&this.ckeInstance.ui.contentsElement.$.style){var t=this.ckeInstance.ui.contentsElement.$.style.cssText;if(-1!==t.indexOf("height: ")){var n=t.split("height: ")[1];n=n.split("px")[0],e=parseInt(n,10)}}return e},n.prototype.showPlaceholder=function(){this.ckeInstance.getData()||this.startupFocus||(this.ckeInstance.editable().getParent().$.appendChild(this.placeholderElement),this.placeholderVisible=!0)},n.prototype.hidePlaceholder=function(){this.placeholderVisible&&(this.ckeInstance.editable().getParent().$.removeChild(this.placeholderElement),this.placeholderVisible=!1)},Object.defineProperty(n.prototype,"placeholderElement",{get:function(){return this._placeholderElement||(this._placeholderElement=document.createElement("div"),this._placeholderElement.className="placeholder",this._placeholderElement.style.cssText="margin: 20px; color: #AAAAAA; font-family: sans-serif; font-size: 13px; line-height: 20px; position: absolute; top: 0",this._placeholderElement.textContent=this.placeholder),this._placeholderElement},enumerable:!1,configurable:!0}),n}($e);Ra.TOOLBAR_HEIGHT=40,Ra.decorators=[{type:t.Component,args:[{selector:"novo-quick-note",providers:[xa],template:'\n <div class="quick-note-wrapper" #wrapper><textarea #host></textarea> <span #results></span></div>\n '}]}],Ra.ctorParameters=function(){return[{type:t.NgZone},{type:t.ElementRef},{type:mt}]},Ra.propDecorators={wrapper:[{type:t.ViewChild,args:["wrapper",{static:!0}]}],host:[{type:t.ViewChild,args:["host",{static:!0}]}],results:[{type:t.ViewChild,args:["results",{read:t.ViewContainerRef,static:!0}]}],config:[{type:t.Input}],startupFocus:[{type:t.Input}],placeholder:[{type:t.Input}],focus:[{type:t.Output}],blur:[{type:t.Output}],change:[{type:t.Output}]};var Ma=function(){};Ma.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,ze,pt],declarations:[Ra,Da],exports:[Ra,Da]}]}];var Fa=function(){};Fa.decorators=[{type:t.Component,args:[{selector:"header-spacer",template:"\n <ng-content></ng-content>\n "}]}];var La=function(){};La.decorators=[{type:t.Component,args:[{selector:"utils",template:"\n <ng-content></ng-content>\n "}]}];var Na=function(){};Na.decorators=[{type:t.Component,args:[{selector:"util-action, novo-action",template:'\n <button theme="icon" [icon]="icon" [attr.inverse]="inverse" [disabled]="disabled">\n <ng-content></ng-content>\n </button>\n '}]}],Na.propDecorators={icon:[{type:t.Input}],inverse:[{type:t.Input}],disabled:[{type:t.Input}]};var Ba=function(){function e(){this.headerClass="novo-header",this.condensed=!1,this.inverse="inverse"}return Object.defineProperty(e.prototype,"theme",{get:function(){return this._theme},set:function(e){this._theme=e,this.inverse="white"===e||"off-white"===e||"light"===e?void 0:"inverse"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"icon",{get:function(){return this._icon},set:function(e){this._icon="bhi-"+e},enumerable:!1,configurable:!0}),e}();Ba.decorators=[{type:t.Component,args:[{selector:"header[theme]",template:'\n <section>\n <div class="header-title">\n <ng-container *ngIf="title">\n <i *ngIf="icon" class="header-icon" [ngClass]="icon"></i>\n <div class="header-titles">\n <h1>{{ title }}</h1>\n <small *ngIf="subTitle">{{ subTitle }}</small>\n </div>\n </ng-container>\n <ng-container *ngIf="!title">\n <ng-content select="novo-icon, [novo-icon]"></ng-content>\n <div class="header-titles">\n <ng-content select="h1, h2, h3, h4, h5, h6, small, [novo-title], [novo-subtitle]"></ng-content>\n </div>\n </ng-container>\n </div>\n <ng-content select="section"></ng-content>\n <span flex></span>\n <ng-content select="utils"></ng-content>\n <ng-content select="novo-action"></ng-content>\n </section>\n <ng-content></ng-content>\n '}]}],Ba.propDecorators={headerClass:[{type:t.HostBinding,args:["class"]}],condensed:[{type:t.HostBinding,args:["class.condensed"]},{type:t.Input}],title:[{type:t.Input}],subTitle:[{type:t.Input}],theme:[{type:t.HostBinding,args:["attr.theme"]},{type:t.Input}],icon:[{type:t.Input}]};var Ha=function(){};Ha.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[Ba,Na,La,Fa],exports:[Ba,Na,La,Fa]}]}];var _a=function(){function e(e,n){this.labels=e,this.sanitizer=n,this.button=!0,this.sanitize=!0,this.confirmed=new t.EventEmitter,this.isActive=!0,this.isActive=!0,this.isLocalStorageEnabled=function(){var e=!1;if("object"==typeof localStorage)try{localStorage.setItem("lsTest","1"),localStorage.removeItem("lsTest"),e=!0}catch(e){console.warn('This web browser does not support storing settings locally. In Safari, the most common cause of this is using "Private Browsing Mode". Some settings may not save or some features may not work properly for you.')}return e}()}return Object.defineProperty(e.prototype,"tipWithStyles",{get:function(){return this._tipWithStyles&&this._lastTipStyled===this.tip||(this._tipWithStyles=this.sanitizer.bypassSecurityTrustHtml(this.tip),this._lastTipStyled=this.tip),this._tipWithStyles},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){if(this.tip=this.tip||"",this.buttonText=this.buttonText||this.labels.okGotIt,this.button="string"==typeof this.button?"true"===this.button:this.button,this.icon=this.icon||null,this.name=this.name||Math.round(100*Math.random()),this.localStorageKey="novo-tw_"+this.name,this.isLocalStorageEnabled){var e=JSON.parse(localStorage.getItem(this.localStorageKey));this.isActive=!1!==e}},e.prototype.hideTip=function(){this.isLocalStorageEnabled&&localStorage.setItem(this.localStorageKey,JSON.stringify(!1)),this.isActive=!1,this.confirmed.emit()},e}();_a.decorators=[{type:t.Component,args:[{selector:"novo-tip-well",template:'\n <div *ngIf="isActive">\n <div>\n <i class="bhi-{{ icon }}" *ngIf="icon" [attr.data-automation-id]="\'novo-tip-well-icon-\' + name"></i>\n <p *ngIf="sanitize" [attr.data-automation-id]="\'novo-tip-well-tip-\' + name">{{ tip }}</p>\n <p *ngIf="!sanitize" [attr.data-automation-id]="\'novo-tip-well-tip-\' + name" [innerHTML]="tipWithStyles"></p>\n </div>\n <button theme="dialogue" (click)="hideTip()" *ngIf="button" [attr.data-automation-id]="\'novo-tip-well-button-\' + name">\n {{ buttonText }}\n </button>\n </div>\n ',host:{"[class.active]":"isActive"}}]}],_a.ctorParameters=function(){return[{type:Ne},{type:f.DomSanitizer}]},_a.propDecorators={name:[{type:t.Input}],tip:[{type:t.Input}],buttonText:[{type:t.Input}],button:[{type:t.Input}],icon:[{type:t.Input}],sanitize:[{type:t.Input}],confirmed:[{type:t.Output}]};var Ga=function(){};Ga.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[_a],exports:[_a]}]}];var Va=function(){};Va.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[ca,da,pa],exports:[da,pa]}]}];var Ua=function(){};Ua.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.ReactiveFormsModule,Aa,Rn,ln,Nt,Gt,Vn,bo,Kt,An,Ma,Co,Ha,U,mn,S.TextMaskModule,Ga,Va,_,B,jt],declarations:[va,ba,Ea,wa,Ia,ka,ma,ha,Ca,Sa],exports:[va,Ea,ba,wa,ka,Ca,Sa],providers:[ya]}]}];var Ka=function(){function e(e,t){this.element=e,this.cdr=t,this.size="medium",this.role="img"}return Object.defineProperty(e.prototype,"alt",{get:function(){return this.ariaLabel},set:function(e){this.ariaLabel=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"name",{get:function(){return this.iconName},set:function(e){this.iconName="bhi-"+e},enumerable:!1,configurable:!0}),e.prototype.ngAfterViewInit=function(){var e=this;this.element.nativeElement.textContent.trim()&&Promise.resolve().then((function(){e.name=e.element.nativeElement.textContent.trim(),e.cdr.markForCheck()}))},e}();Ka.decorators=[{type:t.Component,args:[{selector:"novo-icon",changeDetection:t.ChangeDetectionStrategy.OnPush,template:'\n <i [class]="iconName"><span><ng-content></ng-content></span></i>\n '}]}],Ka.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},Ka.propDecorators={raised:[{type:t.HostBinding,args:["attr.raised"]},{type:t.Input}],size:[{type:t.HostBinding,args:["attr.size"]},{type:t.Input}],theme:[{type:t.HostBinding,args:["attr.theme"]},{type:t.Input}],color:[{type:t.HostBinding,args:["attr.color"]},{type:t.Input}],role:[{type:t.HostBinding,args:["attr.role"]}],ariaLabel:[{type:t.HostBinding,args:["attr.aria-label"]}],alt:[{type:t.Input}],name:[{type:t.Input}]};var za=function(){};za.decorators=[{type:t.NgModule,args:[{exports:[Ka],declarations:[Ka]}]}];var ja={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return $a})),multi:!0},$a=function(){function e(e,n){this.element=e,this.labels=n,this.placeholder="",this.changed=new t.EventEmitter,this.focus=new t.EventEmitter,this.blur=new t.EventEmitter,this.items=[],this._items=new u.ReplaySubject(1),this.selected=null,this.config={},this._value={},this.notShown={},this.onModelChange=function(){},this.onModelTouched=function(){},this.chipsCount=4}return Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){var t=this;e?this.types.forEach((function(n){return t._value[n.value]=e[n.value]})):(this._value={},this.types.forEach((function(e){return t._value[e.value]=[]}))),this.changed.emit(e),this.onModelChange(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.selectAllOption=this.source.selectAllOption||!1,this.chipsCount=this.source.chipsCount||4,this.strictRelationship=this.source.strictRelationship||!1,this.setupOptions()},e.prototype.clearValue=function(){var e=this;this.types.forEach((function(t){return e.modifyAllOfType(t.value,"unselect")})),this.items=[],this._items.next(this.items),this.setInitialValue(null),this.onModelChange(this.value)},e.prototype.removeFromDisplay=function(e,t){this.remove(!0,t),this.modifyAffectedParentsOrChildren(!1,t)},e.prototype.setupOptions=function(){var e=this;this.options=this.source.options||[],this._options=[],this.options&&this.options.forEach((function(t){var n=e.setupOptionsByType(t);e._options.push(n)})),this.source.options=this._options},e.prototype.setupOptionsByType=function(e){var t=this,n={type:e.type,label:e.label||e.type};if(n.data=e.data.map((function(n){return t.formatOption(e,n)})),this.selectAllOption){var o=this.createSelectAllOption(e);n.data.splice(0,0,o)}return n.originalData=n.data.slice(),n},e.prototype.formatOption=function(e,t){var n={value:e.field?t[e.field]:t.value||t,label:e.format?R.interpolate(e.format,t):t.label||String(t.value||t),type:e.type,checked:void 0,isParentOf:e.isParentOf,isChildOf:e.isChildOf};return n.isChildOf&&(n[e.isChildOf]=t[e.isChildOf]),n},e.prototype.createSelectAllOption=function(e){var t={value:"ALL",label:"All "+e.type,type:e.type,checked:this.model&&this.model.length&&-1!==this.model.indexOf("ALL"),isParentOf:e.isParentOf,isChildOf:e.isChildOf};if(e.isChildOf){var n=e.data.reduce((function(t,n){return t.concat(n[e.isChildOf])}),[]);t[e.isChildOf]=n}return t},e.prototype.deselectAll=function(){this.selected=null},e.prototype.select=function(e,t){this.blur.emit(e),this.deselectAll(),this.selected=t},e.prototype.onFocus=function(e){this.element.nativeElement.classList.add("selected"),this.focus.emit(e)},e.prototype.clickOption=function(e){if(e&&!(e instanceof Event)){!1===e.checked?this.remove(null,e):this.add(e),this.modifyAffectedParentsOrChildren(e.checked,e);var t=this.element.nativeElement.querySelector("novo-picker > input");t&&t.focus()}},e.prototype.add=function(e){"ALL"===e.value?this.modifyAllOfType(e.type,"select"):(this.updateDisplayItems(e,"add"),this.value[e.type].push(e.value),this.updateAllItemState(e.type),this.triggerValueUpdate()),this.updateParentOrChildren(e,"select"),this.select(null,e)},e.prototype.updateAllItemState=function(e){var t=this.getAllOfType(e),n=this.allItemsSelected(t,e);return n&&this.selectAll(t,e),{allOfType:t,allOfTypeSelected:n}},e.prototype.setIndeterminateState=function(e,t){this.selectAllOption&&(e[0].indeterminate=t)},e.prototype.updateDisplayItems=function(e,t){"add"===t?this.items.push(e):this.items.indexOf(e)>-1&&this.items.splice(this.items.indexOf(e),1),this.updateDisplayText(this.items),this._items.next(this.items)},e.prototype.updateDisplayText=function(e){var t=this;this.notShown=[];var n=e.slice(this.chipsCount);n.length>0&&this.types.forEach((function(e){var o,a=n.filter((function(t){return t.type===e.value})),i=1===(o=1===a.length&&"ALL"===a[0].value?t.getAllOfType(e.value).length-1:a.length)?e.singular:e.plural||e.value;o>0&&t.notShown.push({type:i,count:o})}))},e.prototype.remove=function(e,t){var n;e&&(n=!0);var o=t;"ALL"===o.value?(n=!1,this.modifyAllOfType(o.type,"unselect")):this.allOfTypeSelected(o.type)&&this.handleRemoveItemIfAllSelected(o),this.removeItem(t,n)},e.prototype.removeItem=function(e,t){e.checked=!1,this.deselectAll(),this.removeValue(e),"ALL"!==e.value&&this.updateParentOrChildren(e,"unselect"),t&&this.modifyAffectedParentsOrChildren(!1,e)},e.prototype.removeValue=function(e){var t=this.value[e.type].filter((function(t){return t!==e.value}));this.value[e.type]=t,this.triggerValueUpdate(),this.updateDisplayItems(e,"remove")},e.prototype.onKeyDown=function(e){e.keyCode===We.BACKSPACE&&e.target&&0===e.target.value.length&&this.items.length&&(e&&(e.stopPropagation(),e.preventDefault()),this.selected?this.remove(null,this.selected):this.select(e,this.items[this.items.length-1]))},e.prototype.allOfTypeSelected=function(e){return this.items.filter((function(t){return t.type===e&&"ALL"===t.value})).length>0},e.prototype.modifyAllOfType=function(e,t){var n="select"===t,o=this.getAllOfType(e);o.forEach((function(e){e.checked=n,e.indeterminate=!1})),n?this.selectAll(o,e):(this.items=ae(this.items.filter((function(t){return t.type!==e}))),this._items.next(this.items),this.value[e]=[]),this.selectAllOption&&this.updateAllParentsOrChildren(o[0],t),this.triggerValueUpdate()},e.prototype.triggerValueUpdate=function(){var e=this,t={};this.types.forEach((function(n){return t[n.value]=e.value[n.value]})),this.value=t},e.prototype.selectAll=function(e,t){if(this.selectAllOption){e[0].checked=!0;var n=e.map((function(e){return e.value}));n.splice(0,1),this.value[t]=n;var o=this.items.filter((function(e){return e.type!==t}));this.items=o,this.updateDisplayItems(e[0],"add")}},e.prototype.handleRemoveItemIfAllSelected=function(e){if(this.selectAllOption){var t=e.type,n=this.getAllOfType(t),o=n[0];this.removeItem(o),o.indeterminate=!0;var a=n.filter((function(e){return!0===e.checked}));this.items=ae(this.items,a);var i=a.map((function(e){return e.value}));this.value[t]=ae(i)}},e.prototype.handleOutsideClick=function(e){this.element.nativeElement.contains(e.target)||(this.blur.emit(e),this.deselectAll())},e.prototype.getAllOfType=function(e){return this._options.filter((function(t){return t.type===e}))[0].originalData},e.prototype.updateParentOrChildren=function(e,t){this.strictRelationship&&e.isParentOf?this.updateChildrenValue(e,t):e.isChildOf&&this.selectAllOption&&this.updateParentValue(e,t)},e.prototype.modifyAffectedParentsOrChildren=function(e,t){var n=this;if(t.isChildOf||t.isParentOf){var o=this.types.filter((function(e){return!!e.isParentOf}))[0].value,a=this.getAllOfType(o),i=a[0].isParentOf,r=this.getAllOfType(i),s=r.filter((function(e){return!!e.checked}));a.forEach((function(a){if("ALL"!==a.value){var i=s.filter((function(e){return e[o].filter((function(e){return e===a.value})).length>0}));if(e){if(a.checked)return;a.indeterminate=i.length>0}else{var l=r.filter((function(e){return"ALL"!==e.value&&e[o].filter((function(e){return e===a.value})).length>0}));if(i.length>0)a.checked?n.strictRelationship&&l.length!==i.length&&(a.indeterminate=!0,a.checked=!1,n.removeValue(a),n.addIndividualChildren(i)):a.indeterminate=!0,n.strictRelationship&&t.type!==o&&a.checked&&(a.checked=!1,n.removeValue(a),n.addIndividualChildren(i));else{if(a.indeterminate=!1,0===l.length)return;n.strictRelationship&&t.type!==o&&n.remove(null,a)}}}})),this.selectAllOption&&this.updateIndeterminateStates(a,r,s)}},e.prototype.updateAllParentsOrChildren=function(e,t){e.isParentOf?this.updateAllChildrenValue(e,t):e.isChildOf&&this.updateAllParentValue(e,t)},e.prototype.updateAllChildrenValue=function(e,t){var n=this,o="select"===t,a=e.isParentOf,i=this.getAllOfType(a);this.selectAllOption&&this.allOfTypeSelected(a)&&!o?this.remove(null,i[0]):i.forEach((function(e){"ALL"!==e.value||e.checked?(e.checked&&!o&&n.remove(null,e),e.checked=o):(o&&(e.checked=!0),e.indeterminate=o)}))},e.prototype.updateAllParentValue=function(e,t){var n="select"===t,o=e.isChildOf;this.getAllOfType(o).forEach((function(e){e.checked||(e.indeterminate=n)}))},e.prototype.updateIndeterminateStates=function(e,t,n){var o=e.filter((function(e){return!(!e.checked&&!e.indeterminate||"ALL"===e.value)})),a=!e[0].checked&&o.length>0,i=!t[0].checked&&n.length>0;this.setIndeterminateState(e,a),this.setIndeterminateState(t,i)},e.prototype.updateChildrenValue=function(e,t){var n=this,o="select"===t,a=e.isParentOf;this.getAllOfType(a).forEach((function(t){"ALL"!==t.value&&t[e.type].filter((function(t){return t===e.value})).length>0&&(t.checked&&!o&&(t.checked=!1,n.allOfTypeSelected(a)?n.handleRemoveItemIfAllSelected(t):n.removeValue(t)),t.checked=o)}))},e.prototype.updateParentValue=function(e,t){var n=this.getAllOfType(e.isChildOf);n[0].checked&&"select"!==t&&this.handleRemoveItemIfAllSelected(n[0])},e.prototype.addIndividualChildren=function(e){var t=this,n=!1;e.forEach((function(e){e.isChildOf&&e[e.isChildOf].forEach((function(o){t.value[e.isChildOf].filter((function(e){return e===o})).length>0&&(n=!0)})),0!==t.value[e.type].filter((function(t){return t===e.value})).length||n||t.add(e)}))},e.prototype.setInitialValue=function(e){var t=this;this.items=[],this.value=e||{},this.types&&this.types.forEach((function(e){var n=e.value;if(t.value[n]){var o=!1,a=t.updateAllItemState(n),i=a.allOfType,r=a.allOfTypeSelected;t.value[n].forEach((function(e){r||o||(o=!0,t.setIndeterminateState(i,!0));var n=i.filter((function(t){return t.value===e}))[0];n.checked=!0,r||t.updateDisplayItems(n,"add"),t.strictRelationship&&n.isParentOf&&t.updateChildrenValue(n,"select")})),e.isChildOf&&t.modifyAffectedParentsOrChildren(!0,{value:n,isChildOf:!0})}else t.value[n]=[]}))},e.prototype.allItemsSelected=function(e,t){return this.value[t].length===e.length-1},e.prototype.onTouched=function(e){this.element.nativeElement.classList.remove("selected"),this.onModelTouched(),this.blur.emit(e)},e.prototype.writeValue=function(e){this.model=e,this.setInitialValue(e)},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e}();$a.decorators=[{type:t.Component,args:[{selector:"multi-picker",providers:[ja],template:'\n <chip\n *ngFor="let item of (_items | async | slice: 0:chipsCount)"\n [type]="item.type"\n [class.selected]="item == selected"\n (remove)="removeFromDisplay($event, item)"\n (select)="select($event, item)"\n >\n {{ item.label }}\n </chip>\n <div *ngIf="items.length > chipsCount">\n <ul class="summary">\n <li *ngFor="let type of notShown">+ {{ type.count }} {{ labels.more }} {{ type.type }}</li>\n </ul>\n </div>\n <div class="chip-input-container">\n <novo-picker\n clearValueOnSelect="true"\n [config]="source"\n [placeholder]="placeholder"\n (select)="clickOption($event)"\n (keydown)="onKeyDown($event)"\n (focus)="onFocus($event)"\n (blur)="onTouched($event)"\n [overrideElement]="element"\n >\n </novo-picker>\n </div>\n <i class="bhi-search" [class.has-value]="items.length"></i>\n <label class="clear-all" *ngIf="items.length" (click)="clearValue()">{{ labels.clearAll }} <i class="bhi-times"></i></label>\n ',host:{"[class.with-value]":"items.length > 0"}}]}],$a.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne}]},$a.propDecorators={source:[{type:t.Input}],placeholder:[{type:t.Input}],types:[{type:t.Input}],changed:[{type:t.Output}],focus:[{type:t.Output}],blur:[{type:t.Output}],value:[{type:t.Input}]};var Wa=function(){};Wa.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,Nt,Gt],declarations:[$a],exports:[$a]}]}];var Za=function(){},Ya=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),Object.defineProperty(t.prototype,"nativeGlobal",{get:function(){return window},enumerable:!1,configurable:!0}),t}(Za);Ya.decorators=[{type:t.Injectable}];!function(e){function t(){return null!==e&&e.apply(this,arguments)||this}te(t,e),Object.defineProperty(t.prototype,"nativeGlobal",{get:function(){throw new Error("global doesn't compile for some reason")},enumerable:!1,configurable:!0})}(Za);var qa=function(){function e(){}return e.prototype.setItem=function(e,t){localStorage.setItem(e,t)},e.prototype.getItem=function(e){return localStorage.getItem(e)},e.prototype.removeItem=function(e){localStorage.removeItem(e)},e}();qa.decorators=[{type:t.Injectable}];var Ja=function(){function e(e,t,n,o){this._http=e,this.platformId=t,this._global=n,this._localStorageService=o}return e.prototype.getPredictions=function(e,t){var n=this;return new Promise((function(o){n._http.get(e+"?query="+t).subscribe((function(e){o(e||!1)}))}))},e.prototype.getLatLngDetail=function(e,t,n){var o=this;return new Promise((function(a){o._http.get(e+"?lat="+t+"&lng="+n).subscribe((function(e){a(e||!1)}))}))},e.prototype.getPlaceDetails=function(e,t){var n=this;return new Promise((function(o){n._http.get(e+"?query="+t).subscribe((function(e){o(e||!1)}))}))},e.prototype.getGeoCurrentLocation=function(){var e=this;return new Promise((function(t){if(s.isPlatformBrowser(e.platformId)){var n=e._global.nativeGlobal;n.navigator.geolocation?n.navigator.geolocation.getCurrentPosition((function(e){var n={lat:parseFloat(e.coords.latitude+""),lng:parseFloat(e.coords.longitude+"")};t(n)})):t(!1)}else t(!1)}))},e.prototype.getGeoLatLngDetail=function(e){var t=this;return new Promise((function(n){s.isPlatformBrowser(t.platformId)?(new t._global.nativeGlobal.google.maps.Geocoder).geocode({location:e},(function(e,o){"OK"===o?t.getGeoPlaceDetail(e[0].place_id).then((function(e){n(e||!1)})):n(!1)})):n(!1)}))},e.prototype.getGeoPrediction=function(e){var t=this;return new Promise((function(n){if(s.isPlatformBrowser(t.platformId)){var o=t._global.nativeGlobal,a=new o.google.maps.places.AutocompleteService,i={},r=[];if(i=e.countryRestriction.length?{input:e.query,componentRestrictions:{country:e.countryRestriction}}:{input:e.query},e.geoLocation&&(i.location=new o.google.maps.LatLng(parseFloat(e.geoLocation[0]),parseFloat(e.geoLocation[1])),i.radius=e.radius),e.geoTypes.length)for(var l=0;l<e.geoTypes.length;l++){var c=i;c.types=new Array(e.geoTypes[l]),r.push(t.geoPredictionCall(a,c))}else r.push(t.geoPredictionCall(a,i));Promise.all(r).then((function(e){var o=e;if(o.length>1){for(var a=[],i=0;i<o.length;i++)o[i]&&o[i].length&&(a=a.concat(o[i]));a=t.getUniqueResults(a),n(a)}else n(e[0])}))}else n(!1)}))},e.prototype.getGeoPlaceDetail=function(e){var t=this;return new Promise((function(n){s.isPlatformBrowser(t.platformId)?new t._global.nativeGlobal.google.maps.places.PlacesService(document.createElement("div")).getDetails({placeId:e},(function(e,o){null===e||0===e.length?t.getGeoPaceDetailByReferance(e.referance).then((function(e){n(e||!1)})):n(e)})):n(!1)}))},e.prototype.getGeoPaceDetailByReferance=function(e){var t=this;return new Promise((function(n){if(s.isPlatformBrowser(t.platformId)){var o=t._global.nativeGlobal;(new o.google.maps.places.PlacesService).getDetails({reference:e},(function(e,t){t===o.google.maps.places.PlacesServiceStatus.OK?n(e):n(!1)}))}else n(!1)}))},e.prototype.addRecentList=function(e,t,n){var o=this;this.getRecentList(e).then((function(a){if(a){for(var i=0;i<a.length;i++)if(a[i].description===t.description){a.splice(i,1);break}a.unshift(t),a.length>n&&a.pop(),o._localStorageService.setItem(e,JSON.stringify(a))}}))},e.prototype.getRecentList=function(e){var t=this;return new Promise((function(n){var o=t._localStorageService.getItem(e);n(o=o?JSON.parse(o):[])}))},e.prototype.getUniqueResults=function(e){return Array.from(e.reduce((function(e,t){return e.set(t.place_id,t)}),new Map).values())},e.prototype.geoPredictionCall=function(e,t){var n=this._global.nativeGlobal;return new Promise((function(o){e.getPlacePredictions(t,(function(e,t){t===n.google.maps.places.PlacesServiceStatus.OK?o(e):o(!1)}))}))},e}();Ja.decorators=[{type:t.Injectable}],Ja.ctorParameters=function(){return[{type:w.HttpClient},{type:Object,decorators:[{type:t.Inject,args:[t.PLATFORM_ID]}]},{type:Za},{type:qa}]};var Xa=function(){function e(e,n,o,a){this.platformId=e,this._elmRef=n,this._global=o,this._googlePlacesService=a,this.term="",this.termChange=new t.EventEmitter,this.select=new t.EventEmitter,this.locationInput="",this.gettingCurrentLocationFlag=!1,this.dropdownOpen=!1,this.recentDropdownOpen=!1,this.queryItems=[],this.isSettingsError=!1,this.settingsErrorMsg="",this.settings={},this.moduleinit=!1,this.selectedDataIndex=-1,this.recentSearchData=[],this.userSelectedOption="",this.defaultSettings={geoPredictionServerUrl:"",geoLatLangServiceUrl:"",geoLocDetailServerUrl:"",geoCountryRestriction:[],geoTypes:[],geoLocation:[],geoRadius:0,serverResponseListHierarchy:[],serverResponseatLangHierarchy:[],serverResponseDetailHierarchy:[],resOnSearchButtonClickOnly:!1,useGoogleGeoApi:!0,inputPlaceholderText:"Enter Area Name",inputString:"",showSearchButton:!0,showRecentSearch:!0,showCurrentLocation:!0,recentStorageName:"recentSearches",noOfRecentSearchSave:5,currentLocIconUrl:"",searchIconUrl:"",locationIconUrl:""}}return e.prototype.ngOnInit=function(){this.moduleinit||this.moduleInit()},e.prototype.ngOnChanges=function(){this.moduleinit=!0,this.moduleInit(),this.searchinputCallback(null)},e.prototype.searchinputClickCallback=function(e){e.target.select(),this.searchinputCallback(e)},e.prototype.searchinputCallback=function(e){var t=this.locationInput;t?this.getListQuery(t):(this.queryItems=[],this.userSelectedOption&&this.userQuerySubmit("false"),this.userSelectedOption="",this.settings.showRecentSearch?this.showRecentSearch():this.dropdownOpen=!1)},e.prototype.activeListNode=function(e){for(var t=0;t<this.queryItems.length;t++)e===t?(this.queryItems[t].active=!0,this.selectedDataIndex=e):this.queryItems[t].active=!1},e.prototype.selectedListNode=function(e,t){this.dropdownOpen=!1,this.recentDropdownOpen?this.setRecentLocation(this.queryItems[t]):this.getPlaceLocationInfo(this.queryItems[t])},e.prototype.closeAutocomplete=function(e){this._elmRef.nativeElement.contains(e.target)||(this.selectedDataIndex=-1,this.dropdownOpen=!1)},e.prototype.userQuerySubmit=function(e){("false"===e?"":this.userSelectedOption)&&this.select.emit(this.userSelectedOption)},e.prototype.currentLocationSelected=function(){var e=this;s.isPlatformBrowser(this.platformId)&&(this.gettingCurrentLocationFlag=!0,this.dropdownOpen=!1,this._googlePlacesService.getGeoCurrentLocation().then((function(t){t?e.getCurrentLocationInfo(t):e.gettingCurrentLocationFlag=!1})))},e.prototype.moduleInit=function(){this.settings=this.setUserSettings(),this.settings.geoRadius&&2!==this.settings.geoLocation.length&&(this.isSettingsError=!0,this.settingsErrorMsg=this.settingsErrorMsg+'Radius should be used with GeoLocation. Please use "geoLocation" key to set lat and lng. '),2!==this.settings.geoLocation.length||this.settings.geoRadius||(this.settings.geoRadius=2e7),this.settings.showRecentSearch&&this.getRecentLocations(),this.settings.useGoogleGeoApi||(this.settings.geoPredictionServerUrl||(this.isSettingsError=!0,this.settingsErrorMsg=this.settingsErrorMsg+'Prediction custom server url is not defined. Please use "geoPredictionServerUrl" key to set. '),this.settings.geoLatLangServiceUrl||(this.isSettingsError=!0,this.settingsErrorMsg=this.settingsErrorMsg+'Latitude and longitude custom server url is not defined. Please use "geoLatLangServiceUrl" key to set. '),this.settings.geoLocDetailServerUrl||(this.isSettingsError=!0,this.settingsErrorMsg=this.settingsErrorMsg+'Location detail custom server url is not defined. Please use "geoLocDetailServerUrl" key to set. ')),this.locationInput=this.term},e.prototype.processSearchQuery=function(){this.queryItems.length&&(this.selectedDataIndex>-1?this.selectedListNode(null,this.selectedDataIndex):this.selectedListNode(null,0))},e.prototype.setUserSettings=function(){var e,t,n={};if(this.userSettings&&"object"==typeof this.userSettings){var o=Object.keys(this.defaultSettings);try{for(var a=ne(o),i=a.next();!i.done;i=a.next()){var r=i.value;n[r]=void 0!==this.userSettings[r]?this.userSettings[r]:this.defaultSettings[r]}}catch(t){e={error:t}}finally{try{i&&!i.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}return n}return this.defaultSettings},e.prototype.getListQuery=function(e){var t=this;if(this.recentDropdownOpen=!1,this.settings.useGoogleGeoApi){var n={query:e,countryRestriction:this.settings.geoCountryRestriction,geoTypes:this.settings.geoTypes};2===this.settings.geoLocation.length&&(n.geoLocation=this.settings.geoLocation,n.radius=this.settings.geoRadius),this._googlePlacesService.getGeoPrediction(n).then((function(e){t.updateListItem(e)}))}else this._googlePlacesService.getPredictions(this.settings.geoPredictionServerUrl,e).then((function(e){e=t.extractServerList(t.settings.serverResponseListHierarchy,e),t.updateListItem(e)}))},e.prototype.extractServerList=function(e,t){var n,o;if(e.length){var a=t;try{for(var i=ne(e),r=i.next();!r.done;r=i.next()){a=a[r.value]}}catch(e){n={error:e}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(n)throw n.error}}return a}return t},e.prototype.updateListItem=function(e){this.queryItems=e||[],this.dropdownOpen=!0},e.prototype.showRecentSearch=function(){var e=this;this.recentDropdownOpen=!0,this.dropdownOpen=!0,this._googlePlacesService.getRecentList(this.settings.recentStorageName).then((function(t){e.queryItems=t||[]}))},e.prototype.getCurrentLocationInfo=function(e){var t=this;this.settings.useGoogleGeoApi?this._googlePlacesService.getGeoLatLngDetail(e).then((function(e){e&&t.setRecentLocation(e),t.gettingCurrentLocationFlag=!1})):this._googlePlacesService.getLatLngDetail(this.settings.geoLatLangServiceUrl,e.lat,e.lng).then((function(e){e&&(e=t.extractServerList(t.settings.serverResponseatLangHierarchy,e),t.setRecentLocation(e)),t.gettingCurrentLocationFlag=!1}))},e.prototype.getPlaceLocationInfo=function(e){var t=this;this.settings.useGoogleGeoApi?this._googlePlacesService.getGeoPlaceDetail(e.place_id).then((function(e){e&&t.setRecentLocation(e)})):this._googlePlacesService.getPlaceDetails(this.settings.geoLocDetailServerUrl,e.place_id).then((function(e){e&&(e=t.extractServerList(t.settings.serverResponseDetailHierarchy,e),t.setRecentLocation(e))}))},e.prototype.setRecentLocation=function(e){(e=JSON.parse(JSON.stringify(e))).description=e.description?e.description:e.formatted_address,e.active=!1,this.selectedDataIndex=-1,this.locationInput=e.description,this.settings.showRecentSearch&&(this._googlePlacesService.addRecentList(this.settings.recentStorageName,e,this.settings.noOfRecentSearchSave),this.getRecentLocations()),this.userSelectedOption=e,this.settings.resOnSearchButtonClickOnly||(this.select.emit(e),this.termChange.emit(e))},e.prototype.getRecentLocations=function(){var e=this;this._googlePlacesService.getRecentList(this.settings.recentStorageName).then((function(t){e.recentSearchData=t&&t.length?t:[]}))},e}();Xa.decorators=[{type:t.Component,args:[{selector:"google-places-list",template:'\n <novo-list direction="vertical">\n <novo-list-item *ngFor="let data of queryItems;let $index = index" (click)="selectedListNode($event, $index)">\n <item-header>\n <item-avatar icon="location"></item-avatar>\n <item-title>{{data.structured_formatting?.main_text ? data.structured_formatting.main_text : data.description}}</item-title>\n </item-header>\n <item-content>{{data.structured_formatting?.secondary_text}}</item-content>\n </novo-list-item>\n </novo-list>\n '}]}],Xa.ctorParameters=function(){return[{type:Object,decorators:[{type:t.Inject,args:[t.PLATFORM_ID]}]},{type:t.ElementRef},{type:Za},{type:Ja}]},Xa.propDecorators={userSettings:[{type:t.Input}],term:[{type:t.Input}],termChange:[{type:t.Output}],select:[{type:t.Output}]};var Qa=function(){};Qa.decorators=[{type:t.NgModule,args:[{declarations:[Xa],imports:[s.CommonModule,w.HttpClientModule,n.FormsModule,pt],exports:[Xa],providers:[Ja]}]}];var ei=function(){function e(e,n){this.element=e,this.cdr=n,this.placement="top",this.animation=!0,this.onCloseFromOutside=new t.EventEmitter,this.top=-1e4,this.left=-1e4,this.displayType="none",this.isHidden=!1}return e.prototype.ngAfterViewInit=function(){this.show(),this.cdr.detectChanges()},e.prototype.toggle=function(){this.isHidden?this.show():this.hide()},e.prototype.show=function(){if(this.popover&&this.popover.getElement()){var e=this.positionElements(this.popover.getElement(),this.popoverDiv.nativeElement,this.placement);this.displayType="block",this.top=e.top,this.left=e.left,this.isHidden=!1}},e.prototype.hide=function(){this.top=-1e4,this.left=-1e4,this.isHidden=!0,this.popover.hide()},e.prototype.hideFromPopover=function(){this.top=-1e4,this.left=-1e4},e.prototype.positionElements=function(e,t,n,o){void 0===o&&(o=!1);var a,i=n.split("-"),r=this.effectivePlacement=this.getEffectivePlacement(i[0]||"right",e,t),s=this.effectiveAlignment=i[1]||"center",l=o?this.offset(e):this.position(e),c=t.offsetWidth,d=t.offsetHeight,p={center:function(){return l.left+(l.width-c)/2},right:function(){return l.left},left:function(){return l.left+(l.width-c)}},u={center:function(){return l.top+(l.height-d)/2},bottom:function(){return l.top},top:function(){return l.top+(l.height-d)}};switch(r){case"right":a={top:u[s](),left:l.left+l.width};break;case"left":a={top:u[s](),left:l.left-c};break;case"bottom":a={top:l.top+l.height,left:p[s]()};break;default:a={top:l.top-d,left:p[s]()}}return a},e.prototype.position=function(e){var t={top:0,left:0},n=this.offset(e),o=this.parentOffsetEl(e);o!==window.document&&((t=this.offset(o)).top+=o.clientTop-o.scrollTop,t.left+=o.clientLeft-o.scrollLeft);var a=e.getBoundingClientRect();return{width:a.width||e.offsetWidth,height:a.height||e.offsetHeight,top:n.top-t.top,left:n.left-t.left}},e.prototype.offset=function(e){var t=e.getBoundingClientRect();return{width:t.width||e.offsetWidth,height:t.height||e.offsetHeight,top:t.top+(window.pageYOffset||window.document.documentElement.scrollTop),left:t.left+(window.pageXOffset||window.document.documentElement.scrollLeft)}},e.prototype.getStyle=function(e,t){return e.currentStyle?e.currentStyle[t]:window.getComputedStyle?window.getComputedStyle(e)[t]:e.style[t]},e.prototype.isStaticPositioned=function(e){return"static"===(this.getStyle(e,"position")||"static")},e.prototype.parentOffsetEl=function(e){for(var t=e.offsetParent||window.document;t&&t!==window.document&&this.isStaticPositioned(t);)t=t.offsetParent;return t||window.document},e.prototype.getEffectivePlacement=function(e,t,n){var o=t.getBoundingClientRect();return"top"===e&&o.top-n.offsetHeight<0?"bottom":"bottom"===e&&o.bottom+n.offsetHeight>window.innerHeight?"top":"left"===e&&o.left-n.offsetWidth<0?"right":"right"===e&&o.right+n.offsetWidth>window.innerWidth?"left":e},e}();ei.decorators=[{type:t.Component,args:[{selector:"popover-content",template:'\n <div #popoverDiv\n class="popover {{ effectivePlacement }}"\n [style.top]="top + \'px\'"\n [style.left]="left + \'px\'"\n [class.fade]="animation"\n style="display: block"\n role="popover">\n <div class="arrow {{effectiveAlignment}}"></div>\n <h4 class="popover-title" [hidden]="!title">{{ title }}</h4>\n <div class="popover-content">\n <ng-content></ng-content>\n <div class="popover-content-text">{{ content }}</div>\n </div>\n </div>\n '}]}],ei.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},ei.propDecorators={content:[{type:t.Input}],placement:[{type:t.Input}],title:[{type:t.Input}],animation:[{type:t.Input}],popoverDiv:[{type:t.ViewChild,args:["popoverDiv"]}]};var ti=function(){function e(e,n){this.viewContainerRef=e,this.resolver=n,this.PopoverComponent=ei,this.popoverOnHover=!1,this.popoverDismissTimeout=0,this.onShown=new t.EventEmitter,this.onHidden=new t.EventEmitter}return e.prototype.showOrHideOnClick=function(){this.popoverOnHover||this.popoverDisabled||this.toggle()},e.prototype.showOnHover=function(){this.popoverOnHover&&!this.popoverDisabled&&this.show()},e.prototype.hideOnHover=function(){this.popoverOnHover&&!this.popoverDisabled&&this.hide()},e.prototype.ngOnChanges=function(e){e.popoverDisabled&&e.popoverDisabled.currentValue&&this.hide(),e.popoverAlways&&e.popoverAlways.currentValue&&this.show()},e.prototype.toggle=function(){this.visible?this.hide():this.show()},e.prototype.show=function(){var e=this;if(!this.visible){if(this.visible=!0,"string"==typeof this.content){var t=this.resolver.resolveComponentFactory(this.PopoverComponent);if(!this.visible)return;this.popover=this.viewContainerRef.createComponent(t),(n=this.popover.instance).popover=this,n.content=this.content,void 0!==this.popoverPlacement&&(n.placement=this.popoverPlacement),void 0!==this.popoverAnimation&&(n.animation=this.popoverAnimation),void 0!==this.popoverTitle&&(n.title=this.popoverTitle),n.onCloseFromOutside.subscribe((function(){return e.hide()})),this.popoverDismissTimeout>0&&setTimeout((function(){return e.hide()}),this.popoverDismissTimeout)}else{var n;(n=this.content).popover=this,void 0!==this.popoverPlacement&&(n.placement=this.popoverPlacement),void 0!==this.popoverAnimation&&(n.animation=this.popoverAnimation),void 0!==this.popoverTitle&&(n.title=this.popoverTitle),n.onCloseFromOutside.subscribe((function(){return e.hide()})),this.popoverDismissTimeout>0&&setTimeout((function(){return e.hide()}),this.popoverDismissTimeout),n.show()}this.onShown.emit(this)}},e.prototype.hide=function(){this.visible&&(this.visible=!1,this.popover&&this.popover.destroy(),this.content instanceof ei&&this.content.hideFromPopover(),this.onHidden.emit(this))},e.prototype.getElement=function(){return this.viewContainerRef.element.nativeElement},e}();ti.decorators=[{type:t.Directive,args:[{selector:"[popover]"}]}],ti.ctorParameters=function(){return[{type:t.ViewContainerRef},{type:t.ComponentFactoryResolver}]},ti.propDecorators={content:[{type:t.Input,args:["popover"]}],popoverDisabled:[{type:t.Input}],popoverAlways:[{type:t.Input}],popoverAnimation:[{type:t.Input}],popoverPlacement:[{type:t.Input}],popoverTitle:[{type:t.Input}],popoverOnHover:[{type:t.Input}],popoverDismissTimeout:[{type:t.Input}],onShown:[{type:t.Output}],onHidden:[{type:t.Output}],showOrHideOnClick:[{type:t.HostListener,args:["click"]}],showOnHover:[{type:t.HostListener,args:["focusin"]},{type:t.HostListener,args:["mouseenter"]}],hideOnHover:[{type:t.HostListener,args:["focusout"]},{type:t.HostListener,args:["mouseleave"]}]};var ni=function(){};ni.decorators=[{type:t.NgModule,args:[{declarations:[ei,ti],exports:[ei,ti]}]}];var oi=function(){function e(){}return e.propertyRenderer=function(e){return function(t){return t[e]}},e.dateRenderer=function(e){return function(t){return t[e]?new Date(t[e]).toLocaleDateString():""}},e}(),ai=function(){function e(){this.id=Math.random(),this.sort=void 0,this.filter=void 0,this.page=0,this.pageSize=void 0,this.globalSearch=void 0,this.selectedRows=new Map,this.updates=new t.EventEmitter,this.onReset=new t.EventEmitter}return Object.defineProperty(e.prototype,"userFiltered",{get:function(){return!!(this.filter||this.sort||this.globalSearch||this.outsideFilter)},enumerable:!1,configurable:!0}),e.prototype.reset=function(e,t){void 0===e&&(e=!0),t||(this.sort=void 0,this.globalSearch=void 0,this.filter=void 0),this.page=0,this.selectedRows.clear(),this.onReset.emit(!0),e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e}();ai.decorators=[{type:t.Injectable}];var ii=function(){function e(e){this.state=e}return e.prototype.filter=function(e,t,n){var o;o=R.isBlank(t)?void 0:{id:e,value:t,transform:n},this.state.filter=o,this.state.reset(!1,!0),this.state.updates.next({filter:o,sort:this.state.sort})},e.prototype.sort=function(e,t,n){var o={id:e,value:t,transform:n};this.state.sort=o,this.state.reset(!1,!0),this.state.updates.next({sort:o,filter:this.state.filter})},e}();ii.decorators=[{type:t.Directive,args:[{selector:"[novoSortFilter]"}]}],ii.ctorParameters=function(){return[{type:ai}]};var ri=function(){function e(e){this.state=e,this.novoSelectAllToggle=new t.EventEmitter,this.allRows=new Map}return e.prototype.register=function(e,t){this.allRows.set(e,t)},e.prototype.deregister=function(e){var t=this;this.allRows.delete(e),this.state.selectedRows.delete(e),clearTimeout(this.throttleTimeout),this.throttleTimeout=setTimeout((function(){0===t.state.selectedRows.size&&t.novoSelectAllToggle.emit(!1)}))},e.prototype.ngOnDestroy=function(){this.allRows.clear(),this.state.selectedRows.clear()},e.prototype.toggle=function(e,t,n){t?this.state.selectedRows.set(e,n):this.state.selectedRows.delete(e)},e.prototype.selectAll=function(e){e?this.state.selectedRows=new Map(this.allRows):this.state.selectedRows.clear(),this.novoSelectAllToggle.emit(e)},e}();ri.decorators=[{type:t.Directive,args:[{selector:"[novoSelection]"}]}],ri.ctorParameters=function(){return[{type:ai}]},ri.propDecorators={novoSelectAllToggle:[{type:t.Output}]};var si=y.CdkCellDef,li=y.CdkHeaderCellDef,ci=y.CdkColumnDef,di=y.CdkHeaderCell,pi=y.CdkCell,ui=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(si);ui.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleCellDef]",providers:[{provide:y.CdkCellDef,useExisting:ui}]}]}];var mi=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(li);mi.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleHeaderCellDef]",providers:[{provide:y.CdkHeaderCellDef,useExisting:mi}]}]}];var hi=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(ci);hi.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleColumnDef]",providers:[{provide:y.CdkColumnDef,useExisting:hi}]}]}],hi.propDecorators={name:[{type:t.Input,args:["novoSimpleColumnDef"]}]};var gi=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.elementRef=n,a.renderer=o,a.role="columnheader",o.setAttribute(n.nativeElement,"data-automation-id","novo-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-header-cell"),a}return te(t,e),t.prototype.ngOnInit=function(){this.column.width&&(this.renderer.setStyle(this.elementRef.nativeElement,"min-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"max-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"width",this.column.width+"px"))},t}(di);gi.decorators=[{type:t.Directive,args:[{selector:"novo-simple-header-cell"}]}],gi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},gi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],column:[{type:t.Input}]};var fi=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.role="columnheader",o.setAttribute(n.nativeElement,"data-automation-id","novo-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-empty-header-cell"),a}return te(t,e),t}(di);fi.decorators=[{type:t.Directive,args:[{selector:"novo-simple-empty-header-cell"}]}],fi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},fi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}]};var yi=function(e){function t(t,n,o,a,i){var r=e.call(this,t,n)||this;return r._selection=i,r.role="columnheader",r.selectAll=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-checkbox-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-checkbox-header-cell"),r.selectAllSubscription=i.novoSelectAllToggle.subscribe((function(e){r.selectAll=e,a.markForCheck()})),r}return te(t,e),t.prototype.ngOnDestroy=function(){this.selectAllSubscription.unsubscribe()},t.prototype.toggle=function(e){this._selection.selectAll(e)},t}(di);yi.decorators=[{type:t.Component,args:[{selector:"novo-simple-checkbox-header-cell",template:'<novo-checkbox [(ngModel)]="selectAll" (ngModelChange)="toggle($event)"></novo-checkbox>'}]}],yi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:t.ChangeDetectorRef},{type:ri,decorators:[{type:t.Optional}]}]},yi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}]};var vi=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.elementRef=n,a.renderer=o,a.role="gridcell",o.setAttribute(n.nativeElement,"data-automation-id","novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-cell"),a}return te(t,e),t.prototype.ngOnInit=function(){this.column.customClass&&this.renderer.addClass(this.elementRef.nativeElement,this.column.customClass(this.row)),this.column.width&&(this.renderer.setStyle(this.elementRef.nativeElement,"min-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"max-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"width",this.column.width+"px"))},t.prototype.onClick=function(e){R.swallowEvent(e),this.column.onClick&&this.column.onClick(this.row)},t}(pi);vi.decorators=[{type:t.Component,args:[{selector:"novo-simple-cell",template:'\n <span [class.clickable]="!!column.onClick" (click)="onClick($event)" #span>{{ column.renderer(row) }}</span>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],vi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},vi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],column:[{type:t.Input}]};var bi=function(e){function t(t,n,o,a){var i=e.call(this,t,n)||this;return i.columnDef=t,i._selection=a,i.role="gridcell",i.selected=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-checkbox-cell"),i.selectAllSubscription=a.novoSelectAllToggle.subscribe((function(e){i.selected=e})),i}return te(t,e),t.prototype.ngOnInit=function(){this._selection.register(this.row.id||this.index,this.row),this.selected=this._selection.state.selectedRows.has(this.row.id||this.index)},t.prototype.ngOnDestroy=function(){this._selection.deregister(this.row.id||this.index),this.selectAllSubscription.unsubscribe()},t.prototype.toggle=function(e){this._selection.toggle(this.row.id||this.index,e,this.row)},t}(pi);bi.decorators=[{type:t.Component,args:[{selector:"novo-simple-checkbox-cell",template:'\n <novo-checkbox [ngModel]="selected" (ngModelChange)="toggle($event)"></novo-checkbox>\n '}]}],bi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:ri,decorators:[{type:t.Optional}]}]},bi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],index:[{type:t.Input}]};var Ci=function(e){function t(t,n,o,a){var i=e.call(this,t,n)||this;return i.elementRef=n,i.renderer=o,i.labels=a,i.role="gridcell",o.setAttribute(n.nativeElement,"data-automation-id","novo-action-column-"+t.cssClassFriendlyName),i}return te(t,e),t.prototype.ngOnInit=function(){this.column.options?this.renderer.addClass(this.elementRef.nativeElement,"novo-simple-dropdown-cell"):this.renderer.addClass(this.elementRef.nativeElement,"novo-simple-button-cell")},t.prototype.isDisabled=function(e,t){return!0===e.disabled||!!e.disabledCheck&&e.disabledCheck(t)},t}(pi);Ci.decorators=[{type:t.Component,args:[{selector:"novo-simple-action-cell",template:'\n <ng-container *ngIf="!column.options">\n <button theme="icon" [icon]="column.icon" (click)="column.onClick(row)" [disabled]="isDisabled(column, row)"></button>\n </ng-container>\n <ng-container *ngIf="column.options">\n <novo-dropdown parentScrollSelector=".novo-simple-table" containerClass="novo-table-dropdown-cell">\n <button type="button" theme="dialogue" icon="collapse" inverse>{{ column.label || labels.actions }}</button>\n <list>\n <item *ngFor="let option of column.options" (action)="option.onClick(row)" [disabled]="isDisabled(option, row)">\n <span [attr.data-automation-id]="option.label">{{ option.label }}</span>\n </item>\n </list>\n </novo-dropdown>\n </ng-container>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Ci.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:Ne}]},Ci.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],column:[{type:t.Input}]};var Si=function(){function e(e){this.element=e}return e.prototype.ngAfterViewInit=function(){this.element.nativeElement.focus()},e}();Si.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleFilterFocus]"}]}],Si.ctorParameters=function(){return[{type:t.ElementRef}]};var ki=function(){function e(e,t,n,o,a){var i=this;this.changeDetectorRef=e,this.labels=t,this.state=n,this._sort=o,this._cdkColumnDef=a,this.icon="sortable",this.filterActive=!1,this.sortActive=!1,this.showCustomRange=!1,this._rerenderSubscription=n.updates.subscribe((function(t){t.sort&&t.sort.id===i.id?(i.icon="sort-"+t.sort.value,i.sortActive=!0):(i.icon="sortable",i.sortActive=!1),t.filter&&t.filter.id===i.id?(i.filterActive=!0,i.filter=t.filter.value):(i.filterActive=!1,i.filter=void 0),e.markForCheck()}))}return Object.defineProperty(e.prototype,"config",{get:function(){return this._config},set:function(e){e?(this._config={sortable:m.coerceBooleanProperty(e.sortable),filterable:m.coerceBooleanProperty(e.filterable),transforms:e.transforms||{},filterConfig:e.filterConfig||{type:"text"}},"date"!==this._config.filterConfig.type||this._config.filterConfig.options||(this._config.filterConfig.options=this.getDefaultDateFilterOptions())):this._config={sortable:!1,filterable:!1,filterConfig:{type:"text"}}},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this._cdkColumnDef&&(this.id=this._cdkColumnDef.name),this.defaultSort&&this.id===this.defaultSort.id&&(this.icon="sort-"+this.defaultSort.value,this.sortActive=!0,this.changeDetectorRef.markForCheck())},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe()},e.prototype.sort=function(){var e=this;this.changeTimeout&&clearTimeout(this.changeTimeout),this.changeTimeout=setTimeout((function(){e.direction=e.getNextSortDirection(e.direction),e._sort.sort(e.id,e.direction,e._config.transforms.sort),e.changeDetectorRef.markForCheck()}),300)},e.prototype.toggleCustomRange=function(e,t){R.swallowEvent(e),this.showCustomRange=t,this.changeDetectorRef.markForCheck(),this.dropdown.openPanel()},e.prototype.filterData=function(e){var t=this,n=e;"date"===this.config.filterConfig.type&&e&&(this.activeDateFilter=e.label||this.labels.customDateRange,n=e.startDate&&e.endDate?{min:p.startOfDay(e.startDate.date),max:p.startOfDay(p.addDays(p.startOfDay(e.endDate.date),1))}:{min:e.min?p.addDays(p.startOfToday(),e.min):p.startOfToday(),max:e.max?p.addDays(p.startOfTomorrow(),e.max):p.startOfTomorrow()}),n&&n.hasOwnProperty("value")&&(n=e.value),this.changeTimeout&&clearTimeout(this.changeTimeout),this.changeTimeout=setTimeout((function(){""===n&&(n=void 0),t._sort.filter(t.id,n,t.config.transforms.filter),t.changeDetectorRef.markForCheck()}),300)},e.prototype.clearFilter=function(){this.filter=void 0,this.activeDateFilter=void 0,this.filterData()},e.prototype.getNextSortDirection=function(e){return e&&"asc"===e?"desc":"asc"},e.prototype.getDefaultDateFilterOptions=function(){return[{label:this.labels.past1Day,min:-1,max:0},{label:this.labels.past7Days,min:-7,max:0},{label:this.labels.past30Days,min:-30,max:0},{label:this.labels.past90Days,min:-90,max:0},{label:this.labels.past1Year,min:-366,max:0},{label:this.labels.next1Day,min:0,max:1},{label:this.labels.next7Days,min:0,max:7},{label:this.labels.next30Days,min:0,max:30},{label:this.labels.next90Days,min:0,max:90},{label:this.labels.next1Year,min:0,max:366}]},e}();ki.decorators=[{type:t.Component,args:[{selector:"[novo-simple-cell-config]",template:'\n <label (click)="sort()" data-automation-id="novo-activity-table-label" [class.sort-disabled]="!config.sortable">\n <ng-content></ng-content>\n </label>\n <div>\n <button\n *ngIf="config.sortable"\n theme="icon"\n [icon]="icon"\n (click)="sort()"\n [class.active]="sortActive"\n data-automation-id="novo-activity-table-sort"\n ></button>\n <novo-dropdown\n *ngIf="config.filterable"\n side="right"\n parentScrollSelector=".novo-simple-table"\n containerClass="simple-table-dropdown"\n data-automation-id="novo-activity-table-filter"\n >\n <button type="button" theme="icon" icon="filter" [class.active]="filterActive"></button>\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button\n theme="dialogue"\n color="negative"\n icon="times"\n (click)="clearFilter()"\n *ngIf="filter"\n data-automation-id="novo-activity-table-filter-clear"\n >\n {{ labels.clear }}\n </button>\n </div>\n <ng-container [ngSwitch]="config.filterConfig.type">\n <list *ngSwitchCase="\'date\'">\n <ng-container *ngIf="!showCustomRange">\n <item\n [class.active]="activeDateFilter === option.label"\n *ngFor="let option of config.filterConfig.options"\n (click)="filterData(option)"\n [attr.data-automation-id]="\'novo-activity-table-filter-\' + option.label"\n >\n {{ option.label }} <i class="bhi-check" *ngIf="activeDateFilter === option.label"></i>\n </item>\n </ng-container>\n <item\n [class.active]="labels.customDateRange === activeDateFilter"\n (click)="toggleCustomRange($event, true)"\n *ngIf="config.filterConfig.allowCustomRange && !showCustomRange"\n [keepOpen]="true"\n >\n {{ labels.customDateRange }} <i class="bhi-check" *ngIf="labels.customDateRange === activeDateFilter"></i>\n </item>\n <div class="calendar-container" *ngIf="showCustomRange">\n <div (click)="toggleCustomRange($event, false)"><i class="bhi-previous"></i>{{ labels.backToPresetFilters }}</div>\n <novo-date-picker (onSelect)="filterData($event)" [(ngModel)]="filter" range="true"></novo-date-picker>\n </div>\n </list>\n <list *ngSwitchCase="\'select\'">\n <item\n [class.active]="filter === option"\n *ngFor="let option of config.filterConfig.options"\n (click)="filterData(option)"\n [attr.data-automation-id]="\'novo-activity-table-filter-\' + (option?.label || option)"\n >\n <span>{{ option?.label || option }}</span>\n <i class="bhi-check" *ngIf="option.hasOwnProperty(\'value\') ? filter === option.value : filter === option"></i>\n </item>\n </list>\n <list *ngSwitchDefault>\n <item class="filter-search" keepOpen="true">\n <input\n type="text"\n [(ngModel)]="filter"\n (ngModelChange)="filterData($event)"\n novoSimpleFilterFocus\n data-automation-id="novo-activity-table-filter-input"\n />\n </item>\n </list>\n </ng-container>\n </novo-dropdown>\n </div>\n ',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],ki.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:Ne},{type:ai},{type:ii,decorators:[{type:t.Optional}]},{type:y.CdkColumnDef,decorators:[{type:t.Optional}]}]},ki.propDecorators={dropdown:[{type:t.ViewChild,args:[Jt]}],defaultSort:[{type:t.Input}],config:[{type:t.Input,args:["novo-simple-cell-config"]}]};var Ii=function(){function e(e,n,o){var a=this;this.changeDetectorRef=e,this.labels=n,this.state=o,this._page=0,this._length=0,this._pageSizeOptions=[],this.pageChange=new t.EventEmitter,o&&o.onReset&&(this.resetSubscription=this.state.onReset.subscribe((function(e){e&&(a.page=0,a.changeDetectorRef.markForCheck())})))}return Object.defineProperty(e.prototype,"page",{get:function(){return this._page},set:function(e){this._page=e,this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.state.page=this._page},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"length",{get:function(){return this._length},set:function(e){this._length=e,this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageSize",{get:function(){return this._pageSize},set:function(e){this._pageSize=e,this.updateDisplayedPageSizeOptions(),this.state.pageSize=this._pageSize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageSizeOptions",{get:function(){return this._pageSizeOptions},set:function(e){this._pageSizeOptions=e,this.updateDisplayedPageSizeOptions()},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this._initialized=!0,this.updateDisplayedPageSizeOptions()},e.prototype.ngOnDestroy=function(){this.resetSubscription.unsubscribe()},e.prototype.nextPage=function(){this.hasNextPage()&&(this.page++,this.emitPageEvent())},e.prototype.previousPage=function(){this.hasPreviousPage()&&(this.page--,this.emitPageEvent())},e.prototype.hasPreviousPage=function(){return this.page>=1&&0!==this.pageSize},e.prototype.hasNextPage=function(){var e=Math.ceil(this.length/this.pageSize)-1;return this.page<e&&0!==this.pageSize},e.prototype.changePageSize=function(e){this.page=0,this.pageSize=e,this.emitPageEvent()},e.prototype.updateDisplayedPageSizeOptions=function(){this._initialized&&(this.pageSize||(this._pageSize=0!==this.pageSizeOptions.length?this.pageSizeOptions[0]:50),this.displayedPageSizeOptions=this.pageSizeOptions.slice(),-1===this.displayedPageSizeOptions.indexOf(this.pageSize)&&this.displayedPageSizeOptions.push(this.pageSize),this.displayedPageSizeOptions.sort((function(e,t){return e-t})),this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0))},e.prototype.emitPageEvent=function(){var e={page:this.page,pageSize:this.pageSize,length:this.length};this.pageChange.next(e),this.state.page=this.page,this.state.pageSize=this.pageSize,this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.state.updates.next(e)},e}();Ii.decorators=[{type:t.Component,args:[{selector:"novo-simple-table-pagination",template:'\n <div class="novo-simple-table-pagination-size">\n <novo-tiles *ngIf="displayedPageSizeOptions.length > 1"\n [(ngModel)]="pageSize"\n [options]="displayedPageSizeOptions"\n (onChange)="changePageSize($event)"\n data-automation-id="novo-simple-table-pagination-tiles">\n </novo-tiles>\n <div *ngIf="displayedPageSizeOptions.length <= 1">{{ pageSize }}</div>\n </div>\n\n <div class="novo-simple-table-range-label-long"data-automation-id="novo-simple-table-pagination-range-label-long">\n {{ longRangeLabel }}\n </div>\n <div class="novo-simple-table-range-label-short"data-automation-id="novo-simple-table-pagination-range-label-short">\n {{ shortRangeLabel }}\n </div>\n\n <button theme="dialogue" type="button"\n class="novo-simple-table-pagination-navigation-previous"\n (click)="previousPage()"\n icon="previous"\n side="left"\n [disabled]="!hasPreviousPage()"\n data-automation-id="novo-simple-table-pagination-previous">\n <span>{{ labels.previous }}</span>\n </button>\n <button theme="dialogue" type="button"\n class="novo-simple-table-pagination-navigation-next"\n (click)="nextPage()"\n icon="next"\n side="right"\n [disabled]="!hasNextPage()"\n data-automation-id="novo-simple-table-pagination-next">\n <span>{{ labels.next }}</span>\n </button>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Ii.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:Ne},{type:ai}]},Ii.propDecorators={page:[{type:t.Input}],length:[{type:t.Input}],pageSize:[{type:t.Input}],pageSizeOptions:[{type:t.Input}],pageChange:[{type:t.Output}]};var Ei=y.CdkHeaderRowDef,wi=y.CdkRowDef,Ti=y.CdkHeaderRow,Oi=y.CdkRow,Pi=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(Ei);Pi.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleHeaderRowDef]",providers:[{provide:y.CdkHeaderRowDef,useExisting:Pi}]}]}],Pi.propDecorators={columns:[{type:t.Input,args:["novoSimpleHeaderRowDef"]}]};var Ai=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(wi);Ai.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleRowDef]",providers:[{provide:y.CdkRowDef,useExisting:Ai}]}]}],Ai.propDecorators={columns:[{type:t.Input,args:["novoSimpleRowDefColumns"]}]};var Di=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t.rowClass="novo-simple-header-row",t.role="row",t}return te(t,e),t}(Ti);Di.decorators=[{type:t.Component,args:[{selector:"novo-simple-header-row",template:y.CDK_ROW_TEMPLATE,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Di.propDecorators={rowClass:[{type:t.HostBinding,args:["class"]}],role:[{type:t.HostBinding,args:["attr.role"]}]};var xi=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t.rowClass="novo-simple-row",t.role="row",t}return te(t,e),t}(Oi);xi.decorators=[{type:t.Component,args:[{selector:"novo-simple-row",template:y.CDK_ROW_TEMPLATE,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],xi.propDecorators={rowClass:[{type:t.HostBinding,args:["class"]}],role:[{type:t.HostBinding,args:["attr.role"]}]};var Ri=function(){},Mi=function(){function e(e){void 0===e&&(e=[]),this.data=e}return e.prototype.getTableResults=function(e,t,n,o,a,i){void 0===n&&(n=0);var r=R.deepClone(this.data);if(0!==r.length){if(a&&(r=r.filter((function(e){return Object.keys(e).some((function(t){return(""+e[t]).toLowerCase().includes(a.toLowerCase())}))}))),t){var s=R.isString(t.value)?t.value.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"):t.value;r=r.filter(R.filterByField(t.id,s))}e&&(r=r.sort(R.sortByField(e.id,"desc"===e.value))),R.isBlank(n)||R.isBlank(o)||(r=r.slice(n*o,(n+1)*o))}return u.of({results:r,total:this.data.length})},e}(),Fi=function(e){function t(t,n,o){var a=e.call(this)||this;return a.tableService=t,a.state=n,a.ref=o,a.total=0,a.current=0,a.loading=!1,a.pristine=!0,a}return te(t,e),Object.defineProperty(t.prototype,"totallyEmpty",{get:function(){return 0===this.total},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"currentlyEmpty",{get:function(){return 0===this.current},enumerable:!1,configurable:!0}),t.prototype.connect=function(){var e=this,t=[this.state.updates];return u.merge.apply(void 0,ae(t)).pipe(g.startWith(null),g.switchMap((function(){return e.pristine=!1,e.loading=!0,e.tableService.getTableResults(e.state.sort,e.state.filter,e.state.page,e.state.pageSize,e.state.globalSearch,e.state.outsideFilter)})),g.map((function(t){return e.loading=!1,e.total=t.total,e.current=t.results.length,setTimeout((function(){e.ref.markForCheck()})),t.results})),g.catchError((function(t){return console.error(t),e.loading=!1,u.of(null)})))},t.prototype.disconnect=function(){},t}(y.DataSource),Li=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(y.CdkTable);Li.decorators=[{type:t.Component,args:[{selector:"novo-simple-table",template:y.CDK_TABLE_TEMPLATE,encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush}]}];var Ni=function(){};Ni.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-actions"}]}];var Bi=function(){};Bi.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-custom-header"}]}];var Hi=function(){};Hi.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-custom-filter"}]}];var _i=function(){};_i.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-empty-message"}]}];var Gi=function(){};Gi.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-no-results-message"}]}];var Vi=function(){function e(e,t,n){this.labels=e,this.ref=t,this.state=n,this.globalSearchHiddenClassToggle=!1,this.loading=!0,wt("[Deprecated]: The simple table is deprecated. Please migrate to novo-data-tables!")}return Object.defineProperty(e.prototype,"customFilter",{get:function(){return this._customFilter},set:function(e){this._customFilter=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"forceShowHeader",{get:function(){return this._forceShowHeader},set:function(e){this._forceShowHeader=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hideGlobalSearch",{get:function(){return this._hideGlobalSearch},set:function(e){this._hideGlobalSearch=m.coerceBooleanProperty(e),this.globalSearchHiddenClassToggle=this._hideGlobalSearch},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"debug",{get:function(){return this._debug},set:function(e){this._debug=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"empty",{get:function(){return this.dataSource&&this.dataSource.totallyEmpty},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"loadingClass",{get:function(){return this.loading||this.dataSource&&this.dataSource.loading},enumerable:!1,configurable:!0}),e.prototype.ngOnChanges=function(e){var t=this;this.loading=e.activityService&&!e.activityService.currentValue,this.ref.detectChanges(),e.activityService&&e.activityService.currentValue&&(this.loading=!1,this.dataSource=new Fi(this.activityService,this.state,this.ref),this.ref.detectChanges()),e.outsideFilter&&e.outsideFilter.currentValue&&(this.outsideFilterSubscription||(this.outsideFilterSubscription=this.outsideFilter.subscribe((function(e){t.state.outsideFilter=e,t.state.updates.next({globalSearch:t.state.globalSearch,filter:t.state.filter,sort:t.state.sort}),t.ref.markForCheck()}))))},e.prototype.ngOnDestroy=function(){this.outsideFilterSubscription&&this.outsideFilterSubscription.unsubscribe()},e.prototype.ngAfterContentInit=function(){this.paginationOptions&&!this.paginationOptions.page&&(this.paginationOptions.page=0),this.paginationOptions&&!this.paginationOptions.pageSize&&(this.paginationOptions.pageSize=50),this.paginationOptions&&!this.paginationOptions.pageSizeOptions&&(this.paginationOptions.pageSizeOptions=[10,25,50,100]),this.state.page=this.paginationOptions?this.paginationOptions.page:void 0,this.state.pageSize=this.paginationOptions?this.paginationOptions.pageSize:void 0,this.ref.markForCheck()},e.prototype.onSearchChange=function(e){this.state.globalSearch=e,this.state.reset(!1,!0),this.state.updates.next({globalSearch:e,filter:this.state.filter,sort:this.state.sort})},e}();Vi.decorators=[{type:t.Component,args:[{selector:"novo-activity-table",template:'\n <div *ngIf="debug">\n <p>Total: {{ dataSource?.total }}</p>\n <p>Current: {{ dataSource?.current }}</p>\n <p>Totally Empty: {{ dataSource?.totallyEmpty }}</p>\n <p>Currently Empty: {{ dataSource?.currentlyEmpty }}</p>\n <p>Loading (DataSource): {{ dataSource?.loading }}</p>\n <p>User Filtered: {{ state.userFiltered }}</p>\n <p>Loading (Table): {{ loading }}</p>\n </div>\n <header *ngIf="(!(dataSource?.totallyEmpty && !state.userFiltered) && !loading) || forceShowHeader">\n <ng-content select="[novo-activity-table-custom-header]"></ng-content>\n <novo-search\n alwaysOpen="true"\n (searchChanged)="onSearchChange($event)"\n [(ngModel)]="state.globalSearch"\n *ngIf="!hideGlobalSearch"\n [placeholder]="searchOptions?.placeholder"\n [hint]="searchOptions?.tooltip">\n </novo-search>\n <novo-simple-table-pagination\n *ngIf="paginationOptions"\n [length]="dataSource?.total"\n [page]="paginationOptions.page"\n [pageSize]="paginationOptions.pageSize"\n [pageSizeOptions]="paginationOptions.pageSizeOptions">\n </novo-simple-table-pagination>\n <div class="novo-activity-table-actions">\n <ng-content select="[novo-activity-table-actions]"></ng-content>\n </div>\n </header>\n <div class="novo-activity-table-loading-mask" *ngIf="dataSource?.loading || loading" data-automation-id="novo-activity-table-loading">\n <novo-loading></novo-loading>\n </div>\n <div class="novo-activity-table-filter-container">\n <div class="novo-activity-table-custom-filter" *ngIf="customFilter">\n <ng-content select="[novo-activity-table-custom-filter]"></ng-content>\n </div>\n <div class="novo-activity-table-container">\n <novo-simple-table *ngIf="(columns?.length > 0)" [dataSource]="dataSource" novoSortFilter novoSelection [class.empty]="dataSource?.currentlyEmpty && state.userFiltered" [hidden]="dataSource?.totallyEmpty && !state.userFiltered">\n <ng-content></ng-content>\n <ng-container novoSimpleColumnDef="selection">\n <novo-simple-checkbox-header-cell *novoSimpleHeaderCellDef></novo-simple-checkbox-header-cell>\n <novo-simple-checkbox-cell *novoSimpleCellDef="let row; let i = index" [row]="row" [index]="i"></novo-simple-checkbox-cell>\n </ng-container>\n <ng-container *ngFor="let column of actionColumns" [novoSimpleColumnDef]="column.id">\n <novo-simple-empty-header-cell [class.button-header-cell]="!column.options" [class.dropdown-header-cell]="column.options" *novoSimpleHeaderCellDef></novo-simple-empty-header-cell>\n <novo-simple-action-cell *novoSimpleCellDef="let row; let i = index" [row]="row" [column]="column"></novo-simple-action-cell>\n </ng-container>\n <ng-container *ngFor="let column of columns" [novoSimpleColumnDef]="column.id">\n <novo-simple-header-cell *novoSimpleHeaderCellDef [column]="column" [novo-simple-cell-config]="column.config" [defaultSort]="defaultSort">{{ column.label }}</novo-simple-header-cell>\n <novo-simple-cell *novoSimpleCellDef="let row" [column]="column" [row]="row"></novo-simple-cell>\n </ng-container>\n <novo-simple-header-row *novoSimpleHeaderRowDef="displayedColumns"></novo-simple-header-row>\n <novo-simple-row *novoSimpleRowDef="let row; columns: displayedColumns;"></novo-simple-row>\n </novo-simple-table>\n <div class="novo-activity-table-no-results-container" *ngIf="dataSource?.currentlyEmpty && state.userFiltered && !dataSource?.loading && !loading && !dataSource.pristine">\n <div #filtered><ng-content select="[novo-activity-table-no-results-message]"></ng-content></div>\n <div class="novo-activity-table-empty-message" *ngIf="filtered.childNodes.length == 0">\n <h4><i class="bhi-search-question"></i> {{ labels.noMatchingRecordsMessage }}</h4>\n </div>\n </div>\n <div class="novo-activity-table-empty-container" *ngIf="dataSource?.totallyEmpty && !dataSource?.loading && !loading && !state.userFiltered && !dataSource.pristine">\n <div #empty><ng-content select="[novo-activity-table-empty-message]"></ng-content></div>\n <div class="novo-activity-table-empty-message" *ngIf="empty.childNodes.length == 0">\n <h4><i class="bhi-search-question"></i> {{ labels.emptyTableMessage }}</h4>\n </div>\n </div>\n </div>\n </div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[ai]}]}],Vi.ctorParameters=function(){return[{type:Ne},{type:t.ChangeDetectorRef},{type:ai}]},Vi.propDecorators={globalSearchHiddenClassToggle:[{type:t.HostBinding,args:["class.global-search-hidden"]}],activityService:[{type:t.Input}],columns:[{type:t.Input}],displayedColumns:[{type:t.Input}],actionColumns:[{type:t.Input}],paginationOptions:[{type:t.Input}],searchOptions:[{type:t.Input}],defaultSort:[{type:t.Input}],outsideFilter:[{type:t.Input}],customFilter:[{type:t.Input}],forceShowHeader:[{type:t.Input}],hideGlobalSearch:[{type:t.Input}],debug:[{type:t.Input}],empty:[{type:t.HostBinding,args:["class.empty"]}],loadingClass:[{type:t.HostBinding,args:["class.loading"]}]};var Ui=function(){};Ui.decorators=[{type:t.NgModule,args:[{imports:[Vn,y.CdkTableModule,s.CommonModule,n.FormsModule,_,an,An,ze,Rn,Ln],exports:[Li,ui,mi,hi,_i,Gi,Pi,Ai,ki,ii,Ci,fi,gi,vi,Di,xi,Si,Ii,Bi,bi,yi,ri,Vi,Ni,Hi],declarations:[Li,ui,mi,hi,_i,Gi,Pi,Ai,ki,ii,Ci,fi,gi,vi,Di,xi,Si,Ii,Bi,bi,yi,ri,Vi,Ni,Hi],providers:[ai]}]}];var Ki=function(){function e(e,t){this.element=e,this.labels=t,this.currentSlide=0,this.start=!0,this.end=!0,this.currSlides=["active"],this.handleKeyDownFunc=this.handleKeyDown.bind(this)}return e.prototype.ngOnInit=function(){for(var e=0;e<this.slides;e++)this.currSlides[e]=e>0?"inactive":"active";this.element.nativeElement.addEventListener("keydown",this.handleKeyDownFunc)},e.prototype.ngOnDestroy=function(){this.element.nativeElement.removeEventListener("keydown",this.handleKeyDownFunc)},e.prototype.handleKeyDown=function(e){9===e.keyCode&&(e.stopImmediatePropagation(),e.preventDefault())},e.prototype.changeSlide=function(e){if("next"===e){if(this.currentSlide===this.slides-1)return;this.currentSlide++}else{if(0===this.currentSlide)return;this.currentSlide--}for(var t=0;t<this.slides;t++)this.currSlides[t]="inactive";this.currSlides[this.currentSlide]="active",this.start=0===this.currentSlide,this.end=this.currentSlide===this.slides-1,this.currentClass="slide-"+this.currentSlide},e}();Ki.decorators=[{type:t.Component,args:[{selector:"novo-slider",template:'\n <section class="slides">\n <ng-content select="div[slide]"></ng-content>\n </section>\n <div class="controls">\n <button *ngIf="!start" theme="icon" icon="previous" (click)="changeSlide(\'back\')"></button>\n <div class="indicators">\n <div class="indicator-circle" *ngFor="let indicator of currSlides; let i = index" [ngClass]="indicator"></div>\n </div>\n <button *ngIf="!end" theme="primary" icon="next" (click)="changeSlide(\'next\')">{{ labels.next }}</button>\n <ng-content select="button" *ngIf="end"></ng-content>\n </div>\n ',host:{"[class]":"currentClass"}}]}],Ki.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne}]},Ki.propDecorators={slides:[{type:t.Input}]};var zi=function(){};zi.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[Ki],exports:[Ki]}]}];var ji=function(e){function t(t){return e.call(this,t)||this}return te(t,e),t}(T.CdkStepLabel);ji.decorators=[{type:t.Directive,args:[{selector:"[novoStepLabel]"}]}],ji.ctorParameters=function(){return[{type:t.TemplateRef}]};var $i=function(e){function t(t,n){var o=e.call(this,n)||this;return o._focusMonitor=t,o._element=n,t.monitor(n.nativeElement,!0),o}return te(t,e),Object.defineProperty(t.prototype,"index",{get:function(){return this._index},set:function(e){this._index=m.coerceNumberProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._active},set:function(e){this._active=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"touched",{get:function(){return this.selected||"edit"===this.state||"done"===this.state},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"optional",{get:function(){return this._optional},set:function(e){this._optional=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),t.prototype.ngOnDestroy=function(){this._focusMonitor.stopMonitoring(this._element.nativeElement)},t.prototype._stringLabel=function(){return this.label instanceof ji?null:this.label},t.prototype._templateLabel=function(){return this.label instanceof ji?this.label:null},t.prototype._getHostElement=function(){return this._element.nativeElement},t}(T.CdkStepHeader);$i.decorators=[{type:t.Component,args:[{selector:"novo-step-header",template:'<div [class.novo-step-icon]="touched"\n [class.novo-step-icon-not-touched]="!touched">\n <ng-container *ngIf="icon">\n <novo-icon size="small" raised="true" [theme]="theme">{{icon}}</novo-icon>\n </ng-container>\n <ng-container *ngIf="!icon">\n <span class="novo-step-number">{{index + 1}}</span>\n </ng-container>\n</div>\n<div class="novo-step-label"\n [class.novo-step-label-active]="active"\n [class.novo-step-label-selected]="selected">\n \x3c!-- If there is a label template, use it. --\x3e\n <ng-container *ngIf="_templateLabel()" [ngTemplateOutlet]="_templateLabel()!.template">\n </ng-container>\n \x3c!-- It there is no label template, fall back to the text label. --\x3e\n <div class="novo-step-text-label" *ngIf="_stringLabel()">{{label}}</div>\n</div>\n<novo-step-status [state]="state"></novo-step-status>\n',host:{class:"novo-step-header",role:"tab"},preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush,styles:["@-webkit-keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@-webkit-keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@-webkit-keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@-webkit-keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}@keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}.novo-step-header{cursor:pointer;outline:none;overflow:visible;position:relative}.novo-step-optional{font-size:12px}.novo-step-icon,.novo-step-icon-not-touched{align-items:center;border-radius:50%;display:flex;height:24px;justify-content:center;width:24px}.novo-step-icon-not-touched .novo-step-number,.novo-step-icon .novo-step-number{align-items:center;border-radius:4px;box-shadow:2px 2px 0 rgba(0,0,0,.2);display:flex;font-size:1em;height:1.6em;justify-content:center;min-width:1.6em}.novo-step-icon .novo-step-number{background:#4a89dc;color:#fff}.novo-step-icon-not-touched .novo-step-number{background:#a9adbb;color:#fff}.novo-step-label{display:inline-block;min-width:50px;padding:4px 0;vertical-align:middle;white-space:nowrap}.novo-step-label,.novo-step-text-label{overflow:hidden;text-align:center;text-overflow:ellipsis}"]}]}],$i.ctorParameters=function(){return[{type:v.FocusMonitor},{type:t.ElementRef}]},$i.propDecorators={theme:[{type:t.Input}],color:[{type:t.Input}],icon:[{type:t.Input}],state:[{type:t.Input}],label:[{type:t.Input}],iconOverrides:[{type:t.Input}],index:[{type:t.Input}],selected:[{type:t.Input}],active:[{type:t.Input}],optional:[{type:t.Input}]};var Wi={horizontalStepTransition:d.trigger("stepTransition",[d.state("previous",d.style({transform:"translate3d(-100%, 0, 0)",visibility:"hidden"})),d.state("current",d.style({transform:"none",visibility:"visible"})),d.state("next",d.style({transform:"translate3d(100%, 0, 0)",visibility:"hidden"})),d.transition("* => *",d.animate("500ms cubic-bezier(0.35, 0, 0.25, 1)"))]),verticalStepTransition:d.trigger("stepTransition",[d.state("previous",d.style({height:"0px",visibility:"hidden"})),d.state("next",d.style({height:"0px",visibility:"hidden"})),d.state("current",d.style({height:"*",visibility:"visible"})),d.transition("* <=> current",d.animate("225ms cubic-bezier(0.4, 0.0, 0.2, 1)"))])},Zi=(T.CdkStep,T.CdkStepper,function(e){function t(t){return e.call(this,t)||this}return te(t,e),t}(T.CdkStep));Zi.decorators=[{type:t.Component,args:[{selector:"novo-step",template:"<ng-template><ng-content></ng-content></ng-template>\n",preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Zi.ctorParameters=function(){return[{type:T.CdkStepper,decorators:[{type:t.Inject,args:[t.forwardRef((function(){return Yi}))]}]}]},Zi.propDecorators={stepLabel:[{type:t.ContentChild,args:[ji]}],theme:[{type:t.Input}],color:[{type:t.Input}],icon:[{type:t.Input}]};var Yi=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t._iconOverrides={},t}return te(t,e),Object.defineProperty(t.prototype,"completed",{get:function(){try{var e=this._steps.toArray(),t=e.length-1;return e[t].completed&&t===this.selectedIndex}catch(e){return!1}},enumerable:!1,configurable:!0}),t.prototype.ngAfterContentInit=function(){var e=this;this._steps.changes.pipe(g.takeUntil(this._destroyed)).subscribe((function(){return e._stateChanged()}))},t.prototype.complete=function(){try{this._steps.toArray()[this.selectedIndex].completed=!0,this.next(),this._stateChanged()}catch(e){}},t.prototype.getIndicatorType=function(e){var t=this._steps.toArray();return e===this.selectedIndex?t[e]&&e===t.length-1&&t[e].completed?"done":"edit":e<this.selectedIndex?"done":"none"},t}(T.CdkStepper);Yi.decorators=[{type:t.Directive,args:[{selector:"[novoStepper]"}]}],Yi.propDecorators={_stepHeader:[{type:t.ViewChildren,args:[$i]}],_steps:[{type:t.ContentChildren,args:[Zi]}],_icons:[{type:t.ContentChildren,args:[Ka]}]};var qi=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(Yi);qi.decorators=[{type:t.Component,args:[{selector:"novo-horizontal-stepper",template:'<div class="novo-horizontal-stepper-header-container">\n <div class="novo-stepper-horizontal-line complete"></div>\n <ng-container *ngFor="let step of _steps; let i = index; let isLast = last">\n <novo-step-header class="novo-horizontal-stepper-header"\n (click)="step.select()"\n (keydown)="_onKeydown($event)"\n [tabIndex]="_getFocusIndex() === i ? 0 : -1"\n [id]="_getStepLabelId(i)"\n [attr.aria-controls]="_getStepContentId(i)"\n [attr.aria-selected]="selectedIndex == i"\n [index]="i"\n [theme]="step.theme"\n [color]="step.color"\n [icon]="step.icon"\n [state]="getIndicatorType(i)"\n [label]="step.stepLabel || step.label"\n [selected]="selectedIndex === i"\n [active]="step.completed || selectedIndex === i || !linear"\n [optional]="step.optional"\n [iconOverrides]="_iconOverrides">\n </novo-step-header>\n </ng-container>\n <div class="novo-stepper-horizontal-line" [class.complete]="completed"></div>\n</div>\n\n<div class="novo-horizontal-content-container">\n <div *ngFor="let step of _steps; let i = index"\n class="novo-horizontal-stepper-content" role="tabpanel"\n [@stepTransition]="_getAnimationDirection(i)"\n [id]="_getStepContentId(i)"\n [attr.aria-labelledby]="_getStepLabelId(i)"\n [attr.aria-expanded]="selectedIndex === i">\n <ng-container [ngTemplateOutlet]="step.content"></ng-container>\n </div>\n</div>\n',host:{class:"novo-stepper-horizontal","aria-orientation":"horizontal",role:"tablist"},animations:[Wi.horizontalStepTransition],providers:[{provide:Yi,useExisting:qi}],preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush,styles:['@-webkit-keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@-webkit-keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@-webkit-keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@-webkit-keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}@keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}.novo-stepper-horizontal,.novo-stepper-vertical{display:block}.novo-horizontal-stepper-header-container{align-items:center;background:#f4f4f4;display:flex;justify-content:center;margin-bottom:1em;white-space:nowrap}.novo-stepper-horizontal-line{border-bottom:1px solid #d9dadc;flex:auto;height:80px;min-width:0}.novo-stepper-horizontal-line.complete{border-bottom:1px solid #4a89dc}.novo-horizontal-stepper-header{align-items:center;display:flex;flex-flow:column;height:80px;justify-content:center;overflow:visible;padding:0 24px}.novo-horizontal-stepper-header .novo-step-status{align-items:center;bottom:0;display:flex;height:1px;justify-content:center;position:absolute;width:100%}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line{position:absolute;width:100%}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line:before{border-bottom:1px solid #d9dadc;content:"";display:block;margin-right:8px;width:calc(50% - 8px)}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line:after{border-top:1px solid #d9dadc;content:"";display:block;margin-left:calc(50% + 8px);margin-top:-1px;width:calc(50% - 8px)}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.done:before,.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.edit:before{border-bottom:1px solid #4a89dc}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.done:after{border-top:1px solid #4a89dc}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon{position:relative}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon:before{background:#fff;border-radius:50%;bottom:1px;content:"";display:block;left:1px;position:absolute;right:1px;top:1px;z-index:0}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon>*{position:relative;z-index:1}.novo-vertical-stepper-header{align-items:center;display:flex;max-height:24px;padding:24px}.novo-vertical-stepper-header .novo-step-icon,.novo-vertical-stepper-header .novo-step-icon-not-touched{margin-right:12px}[dir=rtl] .novo-vertical-stepper-header .novo-step-icon,[dir=rtl] .novo-vertical-stepper-header .novo-step-icon-not-touched{margin-left:12px;margin-right:0}.novo-horizontal-stepper-content{overflow:hidden}.novo-horizontal-stepper-content[aria-expanded=false]{height:0}.novo-horizontal-content-container{overflow:hidden;padding:0 24px 24px}.novo-vertical-content-container{border:0;margin-left:36px;position:relative}[dir=rtl] .novo-vertical-content-container{margin-left:0;margin-right:36px}.novo-stepper-vertical-line:before{border-left:1px solid #d9dadc;bottom:-16px;content:"";left:0;position:absolute;top:-16px;z-index:-1}[dir=rtl] .novo-stepper-vertical-line:before{left:auto;right:0}.novo-stepper-vertical-line.done:after,.novo-stepper-vertical-line.done:before,.novo-stepper-vertical-line.edit:before{border-left-color:1px solid #4a89dc}.novo-stepper-vertical novo-step-status{left:35px;position:absolute;top:25px;transform:scale(.8)}.novo-vertical-stepper-content{overflow:hidden}.novo-vertical-content{padding:0 24px 24px}.novo-step:last-child .novo-vertical-content-container{border:none}']}]}],qi.propDecorators={selectedIndex:[{type:t.Input}]};var Ji=function(e){function t(t,n){var o=e.call(this,t,n)||this;return o._orientation="vertical",o}return te(t,e),t}(Yi);Ji.decorators=[{type:t.Component,args:[{selector:"novo-vertical-stepper",template:'<div class="novo-step" *ngFor="let step of _steps; let i = index; let isLast = last">\n <novo-step-header class="novo-vertical-stepper-header"\n (click)="step.select()"\n (keydown)="_onKeydown($event)"\n [tabIndex]="_getFocusIndex() == i ? 0 : -1"\n [id]="_getStepLabelId(i)"\n [attr.aria-controls]="_getStepContentId(i)"\n [attr.aria-selected]="selectedIndex === i"\n [index]="i"\n [theme]="step.theme"\n [color]="step.color"\n [icon]="step.icon"\n [state]="getIndicatorType(i)"\n [label]="step.stepLabel || step.label"\n [selected]="selectedIndex === i"\n [active]="step.completed || selectedIndex === i || !linear"\n [optional]="step.optional"\n [iconOverrides]="_iconOverrides">\n </novo-step-header>\n\n <div class="novo-vertical-content-container" [class.novo-stepper-vertical-line]="!isLast" [ngClass]="getIndicatorType(i)">\n <div class="novo-vertical-stepper-content" role="tabpanel"\n [@stepTransition]="_getAnimationDirection(i)"\n [id]="_getStepContentId(i)"\n [attr.aria-labelledby]="_getStepLabelId(i)"\n [attr.aria-expanded]="selectedIndex === i">\n <div class="novo-vertical-content">\n <ng-container [ngTemplateOutlet]="step.content"></ng-container>\n </div>\n </div>\n </div>\n </div>\n',host:{class:"novo-stepper-vertical","aria-orientation":"vertical",role:"tablist"},animations:[Wi.verticalStepTransition],providers:[{provide:Yi,useExisting:Ji}],preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush,styles:['@-webkit-keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@-webkit-keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@-webkit-keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@-webkit-keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}@keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}.novo-stepper-horizontal,.novo-stepper-vertical{display:block}.novo-horizontal-stepper-header-container{align-items:center;background:#f4f4f4;display:flex;justify-content:center;margin-bottom:1em;white-space:nowrap}.novo-stepper-horizontal-line{border-bottom:1px solid #d9dadc;flex:auto;height:80px;min-width:0}.novo-stepper-horizontal-line.complete{border-bottom:1px solid #4a89dc}.novo-horizontal-stepper-header{align-items:center;display:flex;flex-flow:column;height:80px;justify-content:center;overflow:visible;padding:0 24px}.novo-horizontal-stepper-header .novo-step-status{align-items:center;bottom:0;display:flex;height:1px;justify-content:center;position:absolute;width:100%}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line{position:absolute;width:100%}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line:before{border-bottom:1px solid #d9dadc;content:"";display:block;margin-right:8px;width:calc(50% - 8px)}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line:after{border-top:1px solid #d9dadc;content:"";display:block;margin-left:calc(50% + 8px);margin-top:-1px;width:calc(50% - 8px)}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.done:before,.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.edit:before{border-bottom:1px solid #4a89dc}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.done:after{border-top:1px solid #4a89dc}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon{position:relative}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon:before{background:#fff;border-radius:50%;bottom:1px;content:"";display:block;left:1px;position:absolute;right:1px;top:1px;z-index:0}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon>*{position:relative;z-index:1}.novo-vertical-stepper-header{align-items:center;display:flex;max-height:24px;padding:24px}.novo-vertical-stepper-header .novo-step-icon,.novo-vertical-stepper-header .novo-step-icon-not-touched{margin-right:12px}[dir=rtl] .novo-vertical-stepper-header .novo-step-icon,[dir=rtl] .novo-vertical-stepper-header .novo-step-icon-not-touched{margin-left:12px;margin-right:0}.novo-horizontal-stepper-content{overflow:hidden}.novo-horizontal-stepper-content[aria-expanded=false]{height:0}.novo-horizontal-content-container{overflow:hidden;padding:0 24px 24px}.novo-vertical-content-container{border:0;margin-left:36px;position:relative}[dir=rtl] .novo-vertical-content-container{margin-left:0;margin-right:36px}.novo-stepper-vertical-line:before{border-left:1px solid #d9dadc;bottom:-16px;content:"";left:0;position:absolute;top:-16px;z-index:-1}[dir=rtl] .novo-stepper-vertical-line:before{left:auto;right:0}.novo-stepper-vertical-line.done:after,.novo-stepper-vertical-line.done:before,.novo-stepper-vertical-line.edit:before{border-left-color:1px solid #4a89dc}.novo-stepper-vertical novo-step-status{left:35px;position:absolute;top:25px;transform:scale(.8)}.novo-vertical-stepper-content{overflow:hidden}.novo-vertical-content{padding:0 24px 24px}.novo-step:last-child .novo-vertical-content-container{border:none}']}]}],Ji.ctorParameters=function(){return[{type:O.Directionality,decorators:[{type:t.Optional}]},{type:t.ChangeDetectorRef}]},Ji.propDecorators={selectedIndex:[{type:t.Input}]};var Xi=function(e,t){};Xi.decorators=[{type:t.Component,args:[{selector:"novo-step-status",template:'<div class="novo-stepper-status-line" [ngClass]="state"></div>\n<div [ngSwitch]="state" class="novo-stepper-status-icon">\n <novo-icon size="small" color="positive" *ngSwitchCase="\'edit\'">check-circle</novo-icon>\n <novo-icon size="small" color="positive" *ngSwitchCase="\'done\'">check-circle-filled</novo-icon>\n <novo-icon size="small" color="positive" *ngSwitchDefault>circle-o</novo-icon>\n</div>\n',preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush,host:{class:"novo-step-status"}}]}],Xi.ctorParameters=function(){return[{type:Yi,decorators:[{type:t.Inject,args:[t.forwardRef((function(){return Yi}))]}]},{type:$i,decorators:[{type:t.Inject,args:[t.forwardRef((function(){return $i}))]}]}]},Xi.propDecorators={state:[{type:t.Input}]};var Qi=function(){};Qi.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,c.PortalModule,_,T.CdkStepperModule,za,v.A11yModule],exports:[qi,Ji,Zi,ji,Yi,$i,Xi],declarations:[qi,Ji,Zi,ji,Yi,$i,Xi]}]}];var er=function(){function e(e,n){var o=this;this.labelService=e,this.ref=n,this.selectionChange=new t.EventEmitter,this.displayTabIndex=0,this.filterText=new u.BehaviorSubject(""),this.loading=!0,this.showClearAll=!1,this.scrollViewportHeight=351,this.virtualScrollItemSize=39,this.getSelectedState=function(e){var t=e.filter((function(e){return e.selected})).length;if(t)return t===e.length?"selected":"indeterminate"},this.filter=function(e){o.displayTabs.forEach((function(t,n){return t.data=o.tabs[n].data.filter((function(n){return n[t.labelField].toLowerCase().includes(e.toLowerCase())}))})),o.ref.markForCheck()}}return Object.defineProperty(e.prototype,"displayTab",{get:function(){return this.displayTabs[this.displayTabIndex]},set:function(e){this.displayTabIndex=this.tabs.map((function(e){return e.typeName})).indexOf(e.typeName)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"minBufferPx",{get:function(){return this.scrollViewportHeight},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxBufferPx",{get:function(){return 2*this.scrollViewportHeight},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.setupDisplayData(),this.createChildrenReferences(),this.initializeDescendantSelection(),this.updateParentsAndQuickSelect(),this.updateClearAll(),this.loading=!1,this.filterTextSubscription=this.filterText.pipe(g.debounceTime(300)).subscribe({next:this.filter})},e.prototype.ngOnDestroy=function(){this.filterTextSubscription&&this.filterTextSubscription.unsubscribe()},e.prototype.changeTab=function(e){this.displayTab=e,this.scrollableInstance&&this.scrollableInstance.scrollTo({behavior:"auto",top:0})},e.prototype.getPixelHeight=function(e){return Number(getComputedStyle(e,"").height.match(/(\d+(\.\d+)?)px$/)[1])},e.prototype.setupDisplayData=function(){this.displayTabs=this.tabs.map((function(e){return Object.assign({},e)})),this.displayTab=this.tabs[0]},e.prototype.createChildrenReferences=function(){var e=this;this.tabs.forEach((function(t){if("childTypeName"in t){var n=e.tabs.find((function(e){return e.typeName===t.childTypeName})),o=e.makeCompareFunction(n.valueField),a=e.makeWarningFunction(t.typeName,n.typeName,n.valueField),i=n.data.slice().sort(o);t.data.filter((function(e){var t=e.children;return t&&t.length})).forEach((function(t){return e.replaceChildrenWithReferences(t,i,o,a)}))}})),this.quickSelectConfig&&(this.quickSelectConfig.items.filter((function(e){return"all"in e})).forEach((function(t){t.children=e.tabs.find((function(e){var n=e.typeName;return t.childTypeName===n})).data})),this.quickSelectConfig.items.filter((function(e){return!("all"in e)})).forEach((function(t){var n=e.tabs.find((function(e){return e.typeName===t.childTypeName})),o=e.makeCompareFunction(n.valueField),a=e.makeWarningFunction(t.label,n.typeName,n.valueField),i=n.data.slice().sort(o);e.replaceChildrenWithReferences(t,i,o,a)})))},e.prototype.makeCompareFunction=function(e){return function(t,n){var o=t&&t[e]||t,a=n&&n[e]||n;return o<a?-1:o>a?1:o===a?0:void 0}},e.prototype.replaceChildrenWithReferences=function(e,t,n,o){e.children=e.children.map((function(e){return a=e,r=n,function e(t,n){if(!(t>n)){var o=t+Math.floor((n-t)/2),s=r(a,i[o]);if(0===s)return i[o];if(-1===s)return e(t,o-1);if(1===s)return e(o+1,n);throw new Error("Input mismatch: "+JSON.stringify(a)+" not comparable to "+JSON.stringify(i[o]))}}(0,(i=t).length-1)||o(e);var a,i,r})).filter(Boolean)},e.prototype.makeWarningFunction=function(e,t,n){return function(o){var a=o[n]||o;console.warn("No "+t+" found with value "+a+" for parent "+e)}},e.prototype.onDropdownToggle=function(e){e&&(this.scrollViewportHeight=this.getPixelHeight(this.scrollableInstance.getElementRef().nativeElement),this.virtualScrollItemSize=this.getPixelHeight(this.scrollableInstance.getElementRef().nativeElement.querySelector("novo-list-item")))},e.prototype.onItemToggled=function(e){Array.isArray(e.children)&&this.updateDescendants(e.selected,e.children),this.updateParentsAndQuickSelect(),this.updateClearAll(e.selected),this.emitSelectedValues(),this.ref.markForCheck()},e.prototype.initializeDescendantSelection=function(){this.tabs.forEach((function(e){"childTypeName"in e&&e.data&&e.data.length&&e.data.forEach((function(e){e.selected&&e.children&&e.children.length&&e.children.forEach((function(e){e.selected=!0}))}))}))},e.prototype.updateDescendants=function(e,t){var n=this;t.forEach((function(t){e?t.selected=!0:delete t.selected,Array.isArray(t.children)&&n.updateDescendants(t.selected,t.children)}))},e.prototype.updateClearAll=function(e){this.showClearAll=!!e||this.tabs.some((function(e){return e.childTypeName?e.data.some((function(e){var t=e.selected,n=e.indeterminate;return t||n})):e.data.some((function(e){return e.selected}))}))},e.prototype.updateParentsAndQuickSelect=function(){var e=this;this.tabs.filter((function(e){return"childTypeName"in e&&!!e.childTypeName})).forEach((function(t){t.data.filter((function(e){var t=e.children;return t&&t.length})).forEach((function(t){["indeterminate","selected"].forEach((function(e){return delete t[e]}));var n=e.getSelectedState(t.children);n&&(t[n]=!0)}))})),this.quickSelectConfig&&this.quickSelectConfig.items.forEach((function(t){delete t.selected;var n=e.getSelectedState(t.children);n&&(t[n]=!0)}))},e.prototype.emitSelectedValues=function(){var e=this.tabs.map((function(e){return Object.assign(Object.assign({},e),{data:e.data.filter((function(e){return e.selected}))})}));this.selectionChange.emit(e)},e.prototype.deselectEverything=function(e){R.swallowEvent(e),this.showClearAll=!1,this.quickSelectConfig&&this.quickSelectConfig.items.forEach((function(e){delete e.selected})),this.tabs.forEach((function(e){e.childTypeName?e.data.forEach((function(e){delete e.selected,delete e.indeterminate,e.children.forEach((function(e){return delete e.selected}))})):e.data.forEach((function(e){return delete e.selected}))})),this.emitSelectedValues(),this.ref.markForCheck()},e.prototype.onClearFilter=function(e){R.swallowEvent(e),this.filterText.next("")},e.prototype.onFilter=function(e){this.filterText.next(e.target.value)},e}();er.decorators=[{type:t.Component,args:[{selector:"novo-tabbed-group-picker",template:'<novo-dropdown (toggled)="onDropdownToggle($event)">\n <button\n class="tabbed-group-picker-button"\n [theme]="buttonConfig.theme"\n [side]="buttonConfig.side"\n [icon]="buttonConfig.icon"\n [loading]="loading"\n >\n <div class="tabbed-group-picker-button-label">{{ buttonConfig.label }}</div>\n </button>\n <div class="tabbed-group-picker-search" data-automation-id="tabbed-group-picker-search">\n <input type="text" [placeholder]="labelService.search" [value]="filterText | async" (input)="onFilter($event)" />\n <i class="bhi-search" *ngIf="!(filterText | async)"></i>\n <i class="bhi-times" *ngIf="(filterText | async)" (click)="onClearFilter($event)"></i>\n </div>\n <div class="tabbed-group-picker-column-container">\n <div class="tabbed-group-picker-column left">\n <novo-nav theme="white" direction="vertical">\n <novo-tab *ngFor="let tab of displayTabs" [attr.data-automation-id]="tab.typeName" (activeChange)="changeTab(tab)">\n <span>{{ tab.typeLabel }} ({{ tab.data.length }})</span><i class="bhi-next"></i>\n </novo-tab>\n </novo-nav>\n <button *ngIf="showClearAll" class="clear-all-button" theme="dialogue" icon="times" side="right" color="grapefruit" (click)="deselectEverything($event)">{{ labelService.clear }}</button>\n </div>\n <div class="tabbed-group-picker-column right">\n <div class="quick-select" *ngIf="quickSelectConfig && !(filterText | async)">\n <div class="quick-select-label">{{ quickSelectConfig.label }}</div>\n <novo-list class="quick-select-list" direction="vertical">\n <novo-list-item\n class="quick-select-item"\n *ngFor="let quickSelect of quickSelectConfig.items"\n [attr.data-automation-id]="quickSelect.label"\n (click)="quickSelect.selected = !quickSelect.selected; onItemToggled(quickSelect)"\n >\n <item-content>\n <novo-checkbox\n [label]="quickSelect.label"\n [name]="\'selected\'"\n [(ngModel)]="quickSelect.selected"\n (ngModelChange)="onItemToggled(quickSelect)"\n ></novo-checkbox>\n </item-content>\n </novo-list-item>\n </novo-list>\n </div>\n <novo-list *ngIf="displayTab.data.length" direction="vertical">\n <cdk-virtual-scroll-viewport\n [itemSize]="virtualScrollItemSize"\n [maxBufferPx]="maxBufferPx"\n [minBufferPx]="minBufferPx"\n #tabbedGroupPickerVirtualScrollViewport\n >\n <novo-list-item\n *cdkVirtualFor="let item of displayTab.data"\n [attr.data-automation-id]="item[displayTab.labelField]"\n (click)="item.selected = !item.selected; onItemToggled(item)"\n >\n <item-content>\n <novo-checkbox\n [label]="item[displayTab.labelField]"\n [name]="\'selected\'"\n [indeterminate]="item.indeterminate"\n [(ngModel)]="item.selected"\n (ngModelChange)="onItemToggled(item)"\n >\n </novo-checkbox>\n </item-content>\n </novo-list-item>\n </cdk-virtual-scroll-viewport>\n </novo-list>\n <div class="tabbed-group-picker-empty-item" *ngIf="!displayTab.data.length && (filterText | async)">\n <i class="{{ displayTab.icon || \'bhi-search\' }}"></i>\n <div class="empty-item-main-message">{{ labelService.tabbedGroupPickerEmpty }}</div>\n <div class="empty-item-sub-message">{{ labelService.tabbedGroupClearSuggestion(displayTab.typeLabel) }}</div>\n </div>\n </div>\n </div>\n</novo-dropdown>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],er.ctorParameters=function(){return[{type:Ne},{type:t.ChangeDetectorRef}]},er.propDecorators={scrollableInstance:[{type:t.ViewChild,args:["tabbedGroupPickerVirtualScrollViewport"]}],buttonConfig:[{type:t.Input}],tabs:[{type:t.Input}],quickSelectConfig:[{type:t.Input}],selectionChange:[{type:t.Output}]};var tr=function(){};tr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,h.ScrollingModule,nt,pt,An,_,an],providers:[Ne],declarations:[er],exports:[er]}]}];var nr=function(){this.data={},this.value="",this.meta={}},or=function(e){function t(t){var n=e.call(this)||this;return n.labels=t,n}return te(t,e),t.prototype.getFormattedDate=function(){return this.labels.formatDate(this.value)},t}(nr);or.decorators=[{type:t.Component,args:[{selector:"date-cell",template:'\n <div class="date-cell">\n <label>{{ getFormattedDate() }}</label>\n </div>\n '}]}],or.ctorParameters=function(){return[{type:Ne}]},or.propDecorators={value:[{type:t.Input}]};var ar=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t.prototype.ngOnInit=function(){if(!this.meta.dropdownCellConfig)throw new Error('Missing "dropdownCellConfig" on the column setup')},t.prototype.onClick=function(e,t,n){(t.callback||e.callback)(this.data,n||t)},t}(nr);ar.decorators=[{type:t.Component,args:[{selector:"novo-dropdown-cell",template:'\n <novo-dropdown parentScrollSelector=".table-container" containerClass="novo-table-dropdown-cell">\n <button type="button" theme="secondary" icon="collapse" inverse>\n <span data-automation-id="novo-dropdown-cell-value">{{ value }}</span>\n </button>\n <list>\n <ng-container *ngFor="let config of meta.dropdownCellConfig; let i = index">\n <dropdown-item-header *ngIf="config.category">{{ config.category }}</dropdown-item-header>\n <item *ngFor="let option of config.options" (action)="onClick(config, option, option.value)"\n [class.active]="(option || option.value) === value">\n <span [attr.data-automation-id]="option.label || option">{{ option.label || option }}</span>\n <i *ngIf="(option || option.value) === value" class="bhi-check"></i>\n </item>\n <hr *ngIf="i < meta.dropdownCellConfig.length - 1"/>\n </ng-container>\n </list>\n </novo-dropdown>\n '}]}],ar.propDecorators={meta:[{type:t.Input}],value:[{type:t.Input}]};var ir=function(){function e(e){this.element=e}return e.prototype.ngAfterViewInit=function(){this.element.nativeElement.focus()},e}();ir.decorators=[{type:t.Directive,args:[{selector:"[keepFilterFocused]"}]}],ir.ctorParameters=function(){return[{type:t.ElementRef}]};var rr=function(){function e(e){this.labels=e,this.itemsPerPage=10,this.pageChange=new t.EventEmitter,this.itemsPerPageChange=new t.EventEmitter,this.onPageChange=new t.EventEmitter,this.maxPagesDisplayed=5}return Object.defineProperty(e.prototype,"disablePageSelection",{get:function(){return this.pageSelectDisabled},set:function(e){this.pageSelectDisabled=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.label=this.label||this.labels.itemsPerPage,this.rowOptions=this.rowOptions||this.getDefaultRowOptions()},e.prototype.ngOnChanges=function(e){this.page=this.page||1,this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages)},e.prototype.getDefaultRowOptions=function(){return[{value:10,label:"10"},{value:25,label:"25"},{value:50,label:"50"},{value:100,label:"100"}]},e.prototype.onPageSizeChanged=function(e){this.page=1,this.itemsPerPage=e.selected,this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.pageChange.emit(this.page),this.itemsPerPageChange.emit(this.itemsPerPage),this.onPageChange.emit({page:this.page,itemsPerPage:this.itemsPerPage})},e.prototype.selectPage=function(e,t){t&&t.preventDefault(),this.page=e,this.pages=this.getPages(this.page,this.totalPages),this.pageChange.emit(this.page),this.onPageChange.emit({page:this.page,itemsPerPage:this.itemsPerPage})},e.prototype.noPrevious=function(){return 1===this.page},e.prototype.noNext=function(){return this.page===this.totalPages},e.prototype.makePage=function(e,t,n){return{num:e,text:t,active:n}},e.prototype.getPages=function(e,t){var n=[],o=1,a=t;this.maxPagesDisplayed<t&&(a=(o=Math.max(e-Math.floor(this.maxPagesDisplayed/2),1))+this.maxPagesDisplayed-1)>t&&(o=(a=t)-this.maxPagesDisplayed+1);for(var i=o;i<=a;i++){var r=this.makePage(i,i.toString(),i===e);n.push(r)}return n},e.prototype.calculateTotalPages=function(){var e=this.itemsPerPage<1?1:Math.ceil(this.totalItems/this.itemsPerPage);return Math.max(e||0,1)},e}();rr.decorators=[{type:t.Component,args:[{selector:"novo-pagination",template:'\n <h5 class="rows">{{label}}</h5>\n <novo-select [options]="rowOptions" [placeholder]="labels.select" [(ngModel)]="itemsPerPage" (onSelect)="onPageSizeChanged($event)" data-automation-id="pager-select"></novo-select>\n <span class="spacer"></span>\n <ul class="pager" data-automation-id="pager">\n <li class="page" (click)="selectPage(page-1)" [ngClass]="{\'disabled\': noPrevious()}"><i class="bhi-previous" data-automation-id="pager-previous"></i></li>\n <li class="page" [ngClass]="{active: p.active}" [class.disabled]="disablePageSelection" *ngFor="let p of pages" (click)="selectPage(p.num, $event)">{{p.text}}</li>\n <li class="page" (click)="selectPage(page+1)" [ngClass]="{\'disabled\': noNext()}"><i class="bhi-next" data-automation-id="pager-next"></i></li>\n </ul>\n '}]}],rr.ctorParameters=function(){return[{type:Ne}]},rr.propDecorators={page:[{type:t.Input}],totalItems:[{type:t.Input}],itemsPerPage:[{type:t.Input}],rowOptions:[{type:t.Input}],label:[{type:t.Input}],disablePageSelection:[{type:t.Input}],pageChange:[{type:t.Output}],itemsPerPageChange:[{type:t.Output}],onPageChange:[{type:t.Output}]};var sr=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(nr);sr.decorators=[{type:t.Component,args:[{selector:"percentage-cell",template:'\n <div class="percentage" *ngIf="value || value === 0">{{ value | percent:\'1.0-2\' }}</div>\n '}]}];var lr=function(){function e(e,t){this.element=e,this.componentUtils=t,this.value=""}return e.prototype.ngOnInit=function(){this.renderer&&(this.renderer.prototype instanceof nr?this.componentUtils.append(this.renderer,this.container).instance.data=this.data:this.value=this.renderer(this.data))},e}();lr.decorators=[{type:t.Component,args:[{selector:"novo-row-details",template:"\n <span #container></span> <span>{{ value }}</span>\n "}]}],lr.ctorParameters=function(){return[{type:t.ElementRef},{type:mt}]},lr.propDecorators={container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef,static:!0}]}],data:[{type:t.Input}],renderer:[{type:t.Input}]};var cr=function(){};cr.decorators=[{type:t.Component,args:[{selector:"novo-table-actions",template:"<ng-content></ng-content>"}]}];var dr=function(){function e(e,t){this.element=e,this.componentUtils=t,this.value="",this.element=e,this.componentUtils=t}return e.prototype.ngOnInit=function(){var e=this;if(this.column._type=this.column.type||"text",this.column.renderer)if(this.column.renderer.prototype instanceof nr){this.column._type="custom";var t=this.componentUtils.append(this.column.renderer,this.container);t.instance.meta=this.column,t.instance.data=this.row,t.instance.value=this.form&&this.hasEditor?this.form.value[this.column.name]:this.row[this.column.name]}else this.value=this.column.renderer(this.row);else this.value=this.form&&this.hasEditor?this.form.value[this.column.name]:this.row[this.column.name];this.form&&this.hasEditor&&(this.valueChangeSubscription=this.form.valueChanges.pipe(g.debounceTime(300),g.distinctUntilChanged()).subscribe((function(t){e.value=t[e.column.name]})))},e.prototype.ngOnDestroy=function(){this.valueChangeSubscription&&this.valueChangeSubscription.unsubscribe()},e.prototype.onClick=function(e){e&&(e.preventDefault(),e.stopPropagation()),this.column.onClick&&this.column.onClick(this.row)},e}();dr.decorators=[{type:t.Component,args:[{selector:"novo-table-cell",template:'\n <div [ngSwitch]="column._type">\n <span #container></span>\n <date-cell *ngSwitchCase="\'date\'" [value]="value"></date-cell>\n <a *ngSwitchCase="\'link\'" (click)="onClick($event)">{{ value }}</a> <span *ngSwitchDefault>{{ value }}</span>\n </div>\n '}]}],dr.ctorParameters=function(){return[{type:t.ElementRef},{type:mt}]},dr.propDecorators={container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef,static:!0}]}],column:[{type:t.Input}],row:[{type:t.Input}],form:[{type:t.Input}],hasEditor:[{type:t.Input}]};var pr=function(){function e(e,n){this.element=e,this.renderer=n,this.onFilterChange=new t.EventEmitter,this.element=e,this.renderer=n}return e.prototype.ngOnInit=function(){this.ngOnChanges()},e.prototype.ngOnChanges=function(e){var t="";this.config.freetextFilter?t=this.config.freetextFilter:this.config.filter&&(t=this.config.filter),this.renderer.setProperty(this.element,"value",t)},e.prototype.onChangeFilter=function(e){var t=this;clearTimeout(this.filterThrottle),We.ENTER===e.keyCode?(this.config.filter=e.target.value,this.onFilterChange.emit({filtering:this.config})):this.filterThrottle=setTimeout((function(){t.config.filter=e.target.value,t.onFilterChange.emit({filtering:t.config})}),300)},e.prototype.onClick=function(e){R.swallowEvent(e)},e}();pr.decorators=[{type:t.Directive,args:[{selector:"[novoTableFilter]"}]}],pr.ctorParameters=function(){return[{type:t.ElementRef},{type:t.Renderer2}]},pr.propDecorators={config:[{type:t.Input,args:["novoTableFilter"]}],onFilterChange:[{type:t.Output}],onChangeFilter:[{type:t.HostListener,args:["keydown",["$event"]]}],onClick:[{type:t.HostListener,args:["click",["$event"]]}]};var ur=function(){};ur.decorators=[{type:t.Component,args:[{selector:"novo-table-footer",template:"<ng-content></ng-content>"}]}];var mr=function(){};mr.decorators=[{type:t.Component,args:[{selector:"novo-table-header",template:"<ng-content></ng-content>"}]}];var hr=function(){function e(e){this.element=e,this.onOrderChange=new t.EventEmitter,this.element=e}return Object.defineProperty(e.prototype,"index",{get:function(){var e=null;this.element.nativeElement&&this.element.nativeElement.parentNode&&(e=Array.prototype.slice.call(this.element.nativeElement.parentNode.children).indexOf(this.element.nativeElement));return e},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.column.ordering&&(this.element.nativeElement.setAttribute("draggable",!0),this.table=this.findTable(this.element.nativeElement))},e.prototype.onDragStart=function(e){this.column.ordering&&(this.element.nativeElement.classList.add("dragging"),e.dataTransfer.effectAllowed="move",e.dataTransfer.setData("text/plain",JSON.stringify(this.column)),this.clone=this.table.cloneNode(!0),this.clone.style.position="absolute",this.clone.style.left="100%",this.clone.style.width="150px",this.deleteColumns(this.clone),document.body.appendChild(this.clone),e.dataTransfer.setDragImage(this.clone,75,30))},e.prototype.deleteColumns=function(e){if(e.rows.length>0)for(var t=e.rows,n=0;n<t.length;n++)if(n>10)e.deleteRow(-1);else for(var o=t[n].cells.length,a=0;a<o;a++)a<this.index?t[n].deleteCell(0):a>this.index&&t[n].deleteCell(-1)},e.prototype.findTable=function(e){for(var t=e;t;)if((t=t.parentNode)&&"table"===t.tagName.toLowerCase())return t},e.prototype.onDrag=function(e){return R.swallowEvent(e),!1},e.prototype.onDragEnd=function(e){return R.swallowEvent(e),this.element.nativeElement.classList.remove("over"),this.element.nativeElement.classList.remove("dragging"),document.body.removeChild(this.clone),!1},e.prototype.onDrop=function(e){R.swallowEvent(e),this.element.nativeElement.classList.remove("over");var t=JSON.parse(e.dataTransfer.getData("text/plain"));return this.onOrderChange.emit({first:t,second:this.column}),!1},e.prototype.onDragOver=function(e){return R.swallowEvent(e),e.dataTransfer.dropEffect="move",!1},e.prototype.onDragEnter=function(e){this.element.nativeElement.classList.add("over"),this.target=e.target},e.prototype.onDragLeave=function(e){this.element.nativeElement.classList.remove("over")},e}();hr.decorators=[{type:t.Directive,args:[{selector:"[novoThOrderable]",host:{"(dragstart)":"onDragStart($event)","(dragover)":"onDragOver($event)","(dragenter)":"onDragEnter($event)","(dragleave)":"onDragLeave($event)","(dragend)":"onDragEnd($event)","(drop)":"onDrop($event)"}}]}],hr.ctorParameters=function(){return[{type:t.ElementRef}]},hr.propDecorators={column:[{type:t.Input,args:["novoThOrderable"]}],onOrderChange:[{type:t.Output}]};var gr=function(){function e(){this.onSortChange=new t.EventEmitter}return e.prototype.onToggleSort=function(e){if(e&&e.preventDefault(),this.config&&this.column&&!1!==this.config.sorting&&!1!==this.column.sorting){switch(this.column.sort){case"asc":this.column.sort="desc";break;default:this.column.sort="asc"}this.onSortChange.emit(this.column)}},e}();gr.decorators=[{type:t.Directive,args:[{selector:"[novoThSortable]",host:{"(click)":"onToggleSort($event)"}}]}],gr.propDecorators={config:[{type:t.Input,args:["novoThSortable"]}],column:[{type:t.Input}],onSortChange:[{type:t.Output}]};var fr=function(){};fr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,ln,an,_],declarations:[mr,ur,cr,ir,rr,lr,dr,pr,hr,gr,or,sr,ar],exports:[mr,ur,cr,ir,rr,lr,dr,pr,hr,gr,or,sr,ar]}]}];var yr=function(e,t){void 0===e&&(e="Collection.REFRESH"),void 0===t&&(t=[]),this.type="",this.data=[],this.type=e,this.data=t};yr.REFRESH="Collection.REFRESH",yr.ADD="Collection.ADD",yr.REMOVE="Collection.REMOVE",yr.REMOVE_ALL="Collection.REMOVE_ALL",yr.REPLACE="Collection.REPLACE",yr.INVALIDATE_ALL="Collection.INVALIDATE_ALL",yr.SORT="Collection.SORT",yr.FILTER="Collection.FILTER",yr.CHANGE="Collection.CHANGE",yr.CURRENTPAGE_CHANGE="Collection.CURRENTPAGE_CHANGE",yr.PAGESIZE_CHANGE="Collection.PAGESIZE_CHANGE",yr.NUMBEROFPAGES_CHANGE="Collection.NUMBEROFPAGES_CHANGE";var vr,br=function(){function e(e){void 0===e&&(e=[]),this.dataChange=new t.EventEmitter,this.source=[],this.editData=[],this.isEditing=!1,this.filterData=[],this._filter={},this._sort=[],this.source=e,this.editData=this.copy(this.source),this.filterData=this.source.slice()}return Object.defineProperty(e.prototype,"length",{get:function(){return this.filterData.length},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"total",{get:function(){return this.filterData.length},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"list",{get:function(){return this.filterData},enumerable:!1,configurable:!0}),e.prototype.isEmpty=function(){return this.length<=0&&!this.isLoading()&&!this.hasErrors()},e.prototype.hasErrors=function(){return!1},e.prototype.isLoading=function(){return!1},e.prototype.isFiltered=function(){return Object.keys(this._filter).length>0},e.prototype.edit=function(){this.isEditing=!0,this.editData=this.copy(this.source)},e.prototype.undo=function(){this.isEditing=!1,this.source=this.copy(this.editData),this.refresh()},e.prototype.commit=function(){this.isEditing=!1,this.source=this.filterData.slice(),this.refresh()},e.prototype.addItem=function(e){this.isEditing?this.editData.push(e):this.source.push(e),this.onDataChange(new yr(yr.ADD,[e])),this.refresh()},e.prototype.addItemAt=function(e,t){this.isEditing?this.editData.splice(t,0,e):this.source.splice(t,0,e),this.onDataChange(new yr(yr.ADD,[e])),this.refresh()},e.prototype.addItems=function(e){var t,n;this.isEditing?(t=this.editData).push.apply(t,ae(e)):(n=this.source).push.apply(n,ae(e)),this.onDataChange(new yr(yr.ADD,e)),this.refresh()},e.prototype.addItemsAt=function(e,t){var n,o;this.isEditing?(n=this.editData).splice.apply(n,ae([t,0],e)):(o=this.source).splice.apply(o,ae([t,0],e))},e.prototype.clone=function(){return new e(this.isEditing?this.copy(this.editData):this.copy(this.source))},e.prototype.copy=function(e){return R.deepClone(e)},e.prototype.concat=function(e){this.addItems(e)},e.prototype.getItemAt=function(e){return this.isEditing?this.editData[e]:this.source[e]},e.prototype.getItemIndex=function(e){return this.isEditing?this.editData.indexOf(e):this.source.indexOf(e)},e.prototype.invalidate=function(){this.onDataChange(new yr(yr.INVALIDATE_ALL))},e.prototype.merge=function(e){var t,n;try{for(var o=ne(e),a=o.next();!a.done;a=o.next()){var i=a.value,r=~this.getItemIndex(i);r?this.replaceItem(i,r):this.addItem(i)}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}},e.prototype.removeAll=function(){this.source=[],this.editData=[],this.filterData=[],this.onDataChange(new yr(yr.REMOVE_ALL,[])),this.refresh()},e.prototype.removeItem=function(e){var t=this.getItemIndex(e);return this.removeItemAt(t)},e.prototype.removeItemAt=function(e){var t=!!this.source.splice(e,1);return this.refresh(),t},e.prototype.replaceItem=function(e,t){var n=this.getItemIndex(t);n>=0&&this.replaceItemAt(e,n)},e.prototype.replaceItemAt=function(e,t){this.filterData.splice(t,1,e)},Object.defineProperty(e.prototype,"sort",{get:function(){return this._sort},set:function(e){this._sort=e,this.refresh()},enumerable:!1,configurable:!0}),e.prototype.sortOn=function(e,t){return void 0===t&&(t=!1),this.filterData=this.filterData.sort(R.sortByField(e,t)),this.onDataChange(new yr(yr.SORT)),this.filterData},Object.defineProperty(e.prototype,"filter",{get:function(){return this._filter},set:function(e){this._filter=e,this.refresh()},enumerable:!1,configurable:!0}),e.prototype.filterOn=function(e,t){return void 0===t&&(t=null),this.filterData=this.filterData.filter(R.filterByField(e,t)),this.filterData},e.prototype.onDataChange=function(e){this.dataChange.emit(e)},e.prototype.refresh=function(){var e,t;this.filterData=this.isEditing?this.editData.slice():this.source.slice();try{for(var n=ne(this._sort.reverse()),o=n.next();!o.done;o=n.next()){var a=o.value;this.sortOn(a.field,a.reverse)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}for(var i in this._filter)i&&this.filterOn(i,this._filter[i]);this.onDataChange(new yr(yr.CHANGE,this.filterData))},e.prototype.toArray=function(){return this.isEditing?this.editData:this.source},e.prototype.toJSON=function(){return this.isEditing?this.editData:this.source},e}(),Cr=function(e){function t(t){void 0===t&&(t=[]);var n=e.call(this,t)||this;return n._page=1,n._numberOfPages=1,n._pageSize=10,n}return te(t,e),Object.defineProperty(t.prototype,"numberOfPages",{get:function(){var e=this.source.length/this.pageSize;return e=Math.ceil(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"page",{get:function(){return this._page},set:function(e){this._page=e,this.refresh()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"pageSize",{get:function(){return this._pageSize},set:function(e){this._pageSize=e,this.refresh()},enumerable:!1,configurable:!0}),t.prototype.next=function(){return this.page===this.numberOfPages||this.page++,this.page},t.prototype.prev=function(){return 1===this._page||this.page--,this.page},t.prototype.first=function(){return 1===this.page||(this.page=1),this.page},t.prototype.last=function(){return this.page===this.numberOfPages||(this.page=this.numberOfPages),this.page},t.prototype.refresh=function(){var e,t;this.filterData=this.isEditing?this.editData.slice():this.source.slice();try{for(var n=ne(this._sort.reverse()),o=n.next();!o.done;o=n.next()){var a=o.value;this.sortOn(a.field,a.reverse)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}for(var i in this._filter)i&&this.filterOn(i,this._filter[i]);if(this.page>=0){var r=(this.page-1)*this.pageSize,s=r+this.pageSize,l=this.filterData.slice(r,s);this.onDataChange(new yr(yr.CHANGE,l))}else this.onDataChange(new yr(yr.CHANGE,this.filterData))},t}(br);(vr=e.NovoTableMode||(e.NovoTableMode={}))[vr.VIEW=1]="VIEW",vr[vr.EDIT=2]="EDIT";var Sr=function(){function o(o,a,i){this.labels=o,this.formUtils=a,this.builder=i,this.config={},this.columns=[],this.skipSortAndFilterClear=!1,this.mode=e.NovoTableMode.VIEW,this.editable=!1,this.rowIdentifier="id",this.name="table",this.onRowClick=new t.EventEmitter,this.onRowSelect=new t.EventEmitter,this.onTableChange=new t.EventEmitter,this._rows=[],this.selected=[],this.activeId=0,this.master=!1,this.expandAll=!1,this.indeterminate=!1,this.lastPage=0,this.selectedPageCount=0,this.showSelectAllMessage=!1,this.pagedData=[],this.toggledDropdownMap={},this.NovoTableMode=e.NovoTableMode,this.tableForm=new n.FormGroup({}),this.footers=[],this.grossFlagToAvoidTheTableFromBeingUglyWhenHidingTheToast=!1,this.loading=!1,wt("[Deprecated]: The table is deprecated. Please migrate to novo-data-tables!")}return Object.defineProperty(o.prototype,"rows",{get:function(){return this._rows},set:function(e){this.dataProvider=e,e&&e.length>0&&this.setupColumnDefaults(),this.skipSortAndFilterClear||this.clearAllSortAndFilters()},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"dataProvider",{get:function(){return this._dataProvider},set:function(t){var n=this;this._dataProvider=Array.isArray(t)?new Cr(t):t,this._dataProvider.dataChange.pipe(g.debounceTime(100)).subscribe((function(t){switch(t.type){case yr.CHANGE:n._rows=t.data,n.tableForm=n.builder.group({rows:n.builder.array([])}),"checkbox"===n.config.rowSelectionStyle&&(n.pagedData=t.data,n.pageSelected=n.pagedData.filter((function(e){return e._selected})),n.rowSelectHandler());var o=[],a={};n.config.footers&&(n.config.footers.forEach((function(e){o.push.apply(o,ae(e.columns))})),o=o.filter((function(e,t,n){return n.indexOf(e)===t})));var i=n.tableForm.controls.rows;n._rows.forEach((function(e,t){var r=[];e.controls={},e._editing={},e._expanded=n.config.expandAll,e.rowId=n._rows.length,n.columns.forEach((function(t){var n=t.editorConfig?ea.create(t.editorType,t.editorConfig):new Wo({key:t.name});e.controls[t.name]=n,r.push(n)})),n.formUtils.setInitialValues(r,e,!1),i.push(n.formUtils.toFormGroup(r)),0!==o.length&&o.forEach((function(t){R.isBlank(a[t])&&(a[t]=0),a[t]+=e[t]}))})),n.mode===e.NovoTableMode.EDIT&&n.setTableEdit(),n.config.footers&&(n.footers=[],n.config.footers.forEach((function(e,t){var o={};o[e.labelColumn]=e.label,e.columns.forEach((function(t){"AVG"===e.method&&0!==n._rows.length?o[t]=a[t]/n._rows.length:o[t]=a[t]})),n.footers.push(o)})))}})),this.config.paging?(this._dataProvider.page=this.config.paging.current,this._dataProvider.pageSize=this.config.paging.itemsPerPage):(this._dataProvider.page=1,this._dataProvider.pageSize=500),t&&t.length>0&&this.setupColumnDefaults(),this._dataProvider.refresh()},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"editing",{get:function(){return this.mode===e.NovoTableMode.EDIT},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"formValue",{get:function(){return this.tableForm.value},enumerable:!1,configurable:!0}),o.prototype.onDropdownToggled=function(e,t){this.toggledDropdownMap[t]=e},o.prototype.focusInput=function(){this.filterInputs&&this.filterInputs.length&&this.filterInputs.forEach((function(e){e.nativeElement&&setTimeout((function(){return e.nativeElement.focus()}),0)}))},o.prototype.onPageChange=function(e){},o.prototype.getOptionDataAutomationId=function(e){return R.isBlank(e.value)?e:e.value},o.prototype.setupColumnDefaults=function(){var e=this;this.columns.forEach((function(t){if(t&&t.type)switch(t.type){case"date":t.options=t.options||e.getDefaultOptions(t)}}))},o.prototype.ngDoCheck=function(){this.config.paging&&this.config.paging.current!==this.lastPage&&(this.rowSelectHandler(),this.showSelectAllMessage=!1),this.lastPage=this.config.paging?this.config.paging.current:1},o.prototype.getPageStart=function(){return this.config.paging?(this.dataProvider.page-1)*this.dataProvider.pageSize:0},o.prototype.getPageEnd=function(){return this.config.paging&&this.dataProvider.pageSize>-1?this.getPageStart()+this.dataProvider.pageSize:this.rows.length},o.prototype.getRowControlForm=function(e){return this.tableForm.controls.rows.controls[e]},o.prototype.onFilterClick=function(e,t){!t.range||e.calendarShow?(Array.isArray(e.filter)&&e.multiple?~e.filter.indexOf(t)?(e.filter.splice(e.filter.indexOf(t),1),t.range&&(e.calenderShow=!1),0===e.filter.length&&(e.filter=null)):e.filter.push(t):e.multiple?(e.filter=new Array,e.filter.push(R.isBlank(t.value)?t:t.value)):e.filter=R.isBlank(t.value)?t:t.value,this.onFilterChange()):e.calenderShow=!0},o.prototype.onFilterClear=function(e){var t=this;setTimeout((function(){e.filter=null,e.freetextFilter=null,t.onFilterChange(),e.originalOptions&&(e.options=e.originalOptions)}))},o.prototype.clearAllSortAndFilters=function(){this.config.filtering&&this.columns.forEach((function(e){e.filter=null,e.sort=null}))},o.prototype.onFilterChange=function(e){var t,n;if(this.config.filtering){var o=this.columns.filter((function(e){return!R.isEmpty(e.filter)}));if(o.length){var a={},i=function(e){if(R.isFunction(e.match))a[e.name]=function(t,n){return e.match(n,e.filter)};else if(e.preFilter&&R.isFunction(e.preFilter))a=Object.assign({},a,e.preFilter(r.escapeCharacters(e.filter)));else if(Array.isArray(e.filter)){var t=e.filter;(t[0].value||t[0].label)&&(t=e.filter.map((function(e){return e.value}))),a[e.name]={any:t}}else e.type&&"date"===e.type?e.filter.startDate&&e.filter.endDate?a[e.name]={min:p.startOfDay(e.filter.startDate),max:p.startOfDay(p.addDays(p.startOfDay(e.filter.endDate),1))}:a[e.name]={min:e.filter.min?p.addDays(p.startOfToday(),e.filter.min):p.startOfToday(),max:e.filter.max?p.addDays(p.startOfTomorrow(),e.filter.max):p.startOfTomorrow()}:a[e.name]=e.filter},r=this;try{for(var s=ne(o),l=s.next();!l.done;l=s.next()){i(l.value)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(n=s.return)&&n.call(s)}finally{if(t)throw t.error}}R.isFunction(this.config.filtering)?this.config.filtering(a):this._dataProvider.filter=a}else this._dataProvider.filter={};this.fireTableChangeEvent(),this.config.paging&&(this.config.paging.current=1),"checkbox"===this.config.rowSelectionStyle&&this.selectAll(!1)}},o.prototype.escapeCharacters=function(e){return"string"==typeof e?e.replace(/'/g,"''"):e},o.prototype.isFilterActive=function(e,t){var n=!1;return!e||R.isBlank(e.filter)||R.isBlank(t)||(n=Array.isArray(e.filter)?"string"!=typeof t?e.filter.some((function(e){return e.label===t.label})):e.filter.includes(t):typeof e.filter==typeof t?e.filter===t:e.filter===t.value),n},o.prototype.onSortChange=function(e){var t,n,o=this;this.currentSortColumn=e;var a=this.columns.filter((function(e){return e.sort&&e!==o.currentSortColumn}));try{for(var i=ne(a),r=i.next();!r.done;r=i.next()){r.value.sort=null}}catch(e){t={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(t)throw t.error}}e&&(R.isFunction(this.config.sorting)?this.config.sorting():R.isFunction(e.preSort)?this._dataProvider.sort=[].concat(e.preSort(e)):this._dataProvider.sort=[{field:e.compare||e.name,reverse:"desc"===e.sort}]),this.config.paging&&(this.config.paging.current=1),"checkbox"===this.config.rowSelectionStyle&&this.selectAll(!1)},o.prototype.fireTableChangeEvent=function(){var e={},t=this.columns.filter((function(e){return e.filter&&e.filter.length}));e.filter=!!t.length&&t,e.sort=!!this.currentSortColumn&&this.currentSortColumn,e.rows=this.rows,this.onTableChange.emit(e)},o.prototype.findColumnIndex=function(e){for(var t=0;t<this.columns.length;t+=1)if(this.columns[t].name===e)return t;return null},o.prototype.onOrderChange=function(e){var t=this.findColumnIndex(e.first.name),n=this.findColumnIndex(e.second.name);this.columns.splice(n,0,this.columns.splice(t,1)[0]),this.onSortChange(this.currentSortColumn)},o.prototype.expandAllOnPage=function(e){var t,n;this.config.expandAll=!e;try{for(var o=ne(this.dataProvider.list),a=o.next();!a.done;a=o.next()){a.value._expanded=this.config.expandAll}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}},o.prototype.selectPage=function(e){var t,n;if(this.master){this.indeterminate=!1;try{for(var o=ne(this.pagedData),a=o.next();!a.done;a=o.next()){a.value._selected=this.master}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}this.selected=this.dataProvider.list.filter((function(e){return e._selected})),this.pageSelected=this.pagedData.filter((function(e){return e._selected})),this.emitSelected(this.selected),this.selectedPageCount++,this.showSelectAllMessage=1===this.selectedPageCount&&this.selected.length!==this.dataProvider.total}else this.selectAll(!1),this.selectedPageCount=this.selectedPageCount>0?this.selectedPageCount-1:0,this.showSelectAllMessage=!1},o.prototype.selectAll=function(e){var t,n;this.master=e,this.indeterminate=!1;try{for(var o=ne(this.dataProvider.list),a=o.next();!a.done;a=o.next()){a.value._selected=e}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}this.selected=e?this.dataProvider.list:[],this.showSelectAllMessage=!1,this.selectedPageCount=this.selectedPageCount>0?this.selectedPageCount-1:0,this.rowSelectHandler()},o.prototype.rowSelectHandler=function(e){this.pageSelected=this.pagedData.filter((function(e){return e._selected})),this.selected=this.dataProvider.list.filter((function(e){return e._selected})),0===this.pageSelected.length?(this.master=!1,this.indeterminate=!1):this.pageSelected.length===this.pagedData.length?(this.master=!0,this.indeterminate=!1):(this.master=!1,this.indeterminate=!0,this.showSelectAllMessage=!1,this.selectedPageCount=this.selectedPageCount>0?this.selectedPageCount-1:0),this.emitSelected(this.selected)},o.prototype.emitSelected=function(e){this.onRowSelect.emit({length:e.length,selected:e})},o.prototype.rowClickHandler=function(e){this.config.rowSelect&&(this.activeId=e.id||0,this.onRowClick.emit(e))},o.prototype.getDefaultOptions=function(e){var t=[{label:this.labels.past1Day,min:-1,max:0},{label:this.labels.past7Days,min:-7,max:0},{label:this.labels.past30Days,min:-30,max:0},{label:this.labels.past90Days,min:-90,max:0},{label:this.labels.past1Year,min:-366,max:0},{label:this.labels.next1Day,min:0,max:1},{label:this.labels.next7Days,min:0,max:7},{label:this.labels.next30Days,min:0,max:30},{label:this.labels.next90Days,min:0,max:90},{label:this.labels.next1Year,min:0,max:366}];return e&&e.range&&t.push({label:this.labels.customDateRange,range:!0}),t},o.prototype.onCalenderSelect=function(e,t){var n=this;setTimeout((function(){t.startDate&&t.endDate&&n.onFilterChange()}),10)},o.prototype.onFilterKeywords=function(e){if(e&&e.filtering&&e.filtering.freetextFilter){var t=e.filtering.freetextFilter.toLowerCase();e.filtering.originalOptions||(e.filtering.originalOptions=e.filtering.options);var n=e.filtering.originalOptions.filter((function(e){var n=e&&e.label?e.label:e;return(n=n.toLowerCase()?n.toLowerCase():n)===t||!(!~n.indexOf(t)&&!~n.indexOf(t))}));e.filtering.options=n,e.filtering.filter=e.filtering.freetextFilter}else e.filtering.options=e.filtering.originalOptions;this.onFilterChange()},o.prototype.setTableEdit=function(t,n){var o=this;this.mode=e.NovoTableMode.EDIT,this._dataProvider.edit(),this._rows.forEach((function(e,a){e._editing=e._editing||{},o.columns.forEach((function(o,i){o.viewOnly?e._editing[o.name]=!1:R.isEmpty(t)&&R.isEmpty(n)||!R.isEmpty(t)&&a===Number(t)&&R.isEmpty(n)?e._editing[o.name]=!0:R.isEmpty(t)||R.isEmpty(n)||a!==Number(t)||i!==Number(n)?e._editing[o.name]=!1:e._editing[o.name]=!0}))}))},o.prototype.leaveEditMode=function(t){var n=this;this.mode=e.NovoTableMode.VIEW,this._rows.forEach((function(e){e._editing=e._editing||{},n.columns.forEach((function(t){e._editing[t.name]=!1}))})),t?this._dataProvider.undo():this._dataProvider.commit(),this.hideToastMessage()},o.prototype.addEditableRow=function(e){void 0===e&&(e={});var t=this.tableForm.controls.rows,n={},o=[];n.controls={},n._editing={},n.rowId=this._rows.length+1,this.columns.forEach((function(e){var t=e.editorConfig?ea.create(e.editorType,e.editorConfig):new Wo({key:e.name});t.value=null,n.controls[e.name]=t,n._editing[e.name]=!e.viewOnly,o.push(t)})),this.formUtils.setInitialValues(o,e,!1),t.push(this.formUtils.toFormGroup(o)),this._rows.push(n)},o.prototype.validateAndGetUpdatedData=function(){var e=this;if(this.tableForm&&this.tableForm.controls&&this.tableForm.controls.rows){var t=[],n=[];return this.tableForm.controls.rows.controls.forEach((function(o,a){var i=null,r=null;Object.keys(o.controls).forEach((function(t){var n=o.controls[t];n&&n.dirty&&!n.errors?(i||(i={},e._rows[a].id&&(i.id=e._rows[a].id)),i[t]=e.tableForm.value.rows[a][t],e._rows[a][t]=i[t]):n&&n.errors&&(r||(r={}),r[t]=n.errors,n.markAsDirty(),n.markAsTouched())})),i&&t.push(i),r&&n.push({errors:r,row:e._rows[a],index:a})})),0===n.length?{changed:t}:{errors:n}}},o.prototype.cancelEditing=function(){this.leaveEditMode(!0)},o.prototype.saveChanges=function(){this.leaveEditMode(!1)},o.prototype.displayToastMessage=function(e,t){var n=this;this.loading=!1,this.toast=e,t&&setTimeout((function(){return n.hideToastMessage()}),t)},o.prototype.hideToastMessage=function(){var e=this;this.toast=null,this.grossFlagToAvoidTheTableFromBeingUglyWhenHidingTheToast=!0,setTimeout((function(){e.grossFlagToAvoidTheTableFromBeingUglyWhenHidingTheToast=!1}))},o.prototype.toggleLoading=function(e){this.loading=e},o.prototype.isColumnHidden=function(e){return this.editing?!!e.hideColumnOnEdit:!!e.hideColumnOnView},o}();Sr.decorators=[{type:t.Component,args:[{selector:"novo-table",host:{"[attr.theme]":"theme","[class.editing]":"mode === NovoTableMode.EDIT","[class.novo-table-loading]":"loading"},template:'\n <header *ngIf="columns.length">\n <ng-content select="novo-table-header"></ng-content>\n <div class="header-actions">\n <novo-pagination *ngIf="config.paging && !(dataProvider.isEmpty() && !dataProvider.isFiltered())"\n [rowOptions]="config.paging.rowOptions"\n [disablePageSelection]="config.paging.disablePageSelection"\n [(page)]="dataProvider.page"\n [(itemsPerPage)]="dataProvider.pageSize"\n [totalItems]="dataProvider.total"\n (onPageChange)="onPageChange($event)">\n </novo-pagination>\n <ng-content select="novo-table-actions"></ng-content>\n </div>\n </header>\n <div class="novo-table-loading-overlay" *ngIf="loading || dataProvider.isLoading()">\n <novo-loading></novo-loading>\n </div>\n <novo-toast *ngIf="toast" [theme]="toast?.theme" [icon]="toast?.icon" [message]="toast?.message"></novo-toast>\n <div class="table-container" *ngIf="!grossFlagToAvoidTheTableFromBeingUglyWhenHidingTheToast">\n <novo-form hideHeader="true" [form]="tableForm">\n <table class="table table-striped dataTable" [class.table-details]="config.hasDetails" role="grid">\n \x3c!-- skipSortAndFilterClear is a hack right now, will be removed once Canvas is refactored --\x3e\n <thead *ngIf="columns.length && (!dataProvider.isEmpty() || dataProvider.isFiltered() || skipSortAndFilterClear || editing)">\n <tr role="row">\n \x3c!-- DETAILS --\x3e\n <th class="row-actions" *ngIf="config.hasDetails">\n <button theme="icon" icon="next" (click)="expandAllOnPage(config.expandAll)" *ngIf="!config.expandAll" data-automation-id="expand-all"></button>\n <button theme="icon" icon="sort-desc" (click)="expandAllOnPage(config.expandAll)" *ngIf="config.expandAll" data-automation-id="collapse-all"></button>\n </th>\n \x3c!-- CHECKBOX --\x3e\n <th class="row-actions checkbox mass-action" *ngIf="config.rowSelectionStyle === \'checkbox\'">\n <novo-checkbox [(ngModel)]="master" [indeterminate]="pageSelected.length > 0 && pageSelected.length < pagedData.length" (ngModelChange)="selectPage($event)" data-automation-id="select-all-checkbox" [tooltip]="master ? labels.deselectAll : labels.selectAllOnPage" tooltipPosition="right"></novo-checkbox>\n </th>\n \x3c!-- TABLE HEADERS --\x3e\n <th *ngFor="let column of columns" [ngClass]="{ \'mass-action\': config?.rowSelectionStyle === \'checkbox\', \'actions\': column?.actions?.items?.length > 0, \'preview\': column?.name === \'preview\' }" [novoThOrderable]="column" (onOrderChange)="onOrderChange($event)" [hidden]="isColumnHidden(column)">\n <div class="th-group" [attr.data-automation-id]="column.id || column.name" *ngIf="!column.hideHeader">\n \x3c!-- LABEL & SORT ARROWS --\x3e\n <div class="th-title" [ngClass]="(config.sorting !== false && column.sorting !== false) ? \'sortable\' : \'\'" [novoThSortable]="config" [column]="column" (onSortChange)="onSortChange($event)">\n <label>{{ column.title || column.label }}</label>\n <div class="table-sort-icons" tooltipPosition="bottom" [tooltip]="labels.sort" [ngClass]="column.sort || \'\'" *ngIf="config.sorting !== false && column.sorting !== false">\n <i class="bhi-arrow-up"></i>\n <i class="bhi-arrow-down"></i>\n </div>\n </div>\n \x3c!-- FILTER DROP-DOWN --\x3e\n <novo-dropdown side="right" *ngIf="config.filtering !== false && column.filtering !== false" class="column-filters" (toggled)="onDropdownToggled($event, column.name)" parentScrollSelector=".table-container" containerClass="table-dropdown">\n <button type="button" theme="icon" icon="filter" tooltipPosition="bottom" [tooltip]="labels.filters" [class.filtered]="column.filter || column.filter===false" (click)="focusInput()"></button>\n \x3c!-- FILTER OPTIONS LIST --\x3e\n <list *ngIf="(column?.options?.length || column?.originalOptions?.length) && column?.type !== \'date\' && toggledDropdownMap[column.name]">\n <item class="filter-search">\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button theme="dialogue" color="negative" icon="times" (click)="onFilterClear(column)" *ngIf="column.filter || column.filter===false">{{ labels.clear }}</button>\n </div>\n <input type="text" *ngIf="!!column.allowCustomTextOption" [attr.id]="column.name + \'-input\'" [novoTableFilter]="column" (onFilterChange)="onFilterKeywords($event)" [(ngModel)]="column.freetextFilter" keepFilterFocused #filterInput/>\n </item>\n <item [ngClass]="{ active: isFilterActive(column, option) }" *ngFor="let option of column.options" (click)="onFilterClick(column, option)" [attr.data-automation-id]="getOptionDataAutomationId(option)">\n <span>{{ option?.label || option }}</span> <i class="bhi-check" *ngIf="isFilterActive(column, option)"></i>\n </item>\n </list>\n \x3c!-- FILTER SEARCH INPUT --\x3e\n <list *ngIf="!(column?.options?.length || column?.originalOptions?.length) && toggledDropdownMap[column.name]">\n <item class="filter-search">\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button theme="dialogue" color="negative" icon="times" (click)="onFilterClear(column)" *ngIf="column.filter">{{ labels.clear }}</button>\n </div>\n <input type="text" [attr.id]="column.name + \'-input\'" [novoTableFilter]="column" (onFilterChange)="onFilterChange($event)" [(ngModel)]="column.filter" keepFilterFocused #filterInput/>\n </item>\n </list>\n \x3c!-- FILTER DATE OPTIONS --\x3e\n <list *ngIf="column?.options?.length && column?.type === \'date\' && toggledDropdownMap[column.name]">\n <item class="filter-search" *ngIf="!column.calenderShow">\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button theme="dialogue" color="negative" icon="times" (click)="onFilterClear(column)" *ngIf="column.filter">{{ labels.clear }}</button>\n </div>\n </item>\n <item [ngClass]="{ active: isFilterActive(column, option) }" *ngFor="let option of column.options" (click)="onFilterClick(column, option)" [keepOpen]="option.range" [hidden]="column.calenderShow" [attr.data-automation-id]="(option?.label || option)">\n {{ option?.label || option }} <i class="bhi-check" *ngIf="isFilterActive(column, option)"></i>\n </item>\n <div class="calendar-container" [hidden]="!column.calenderShow">\n <div (click)="column.calenderShow=false"><i class="bhi-previous"></i>{{ labels.backToPresetFilters }}</div>\n <novo-date-picker #rangePicker (onSelect)="onCalenderSelect(column, $event)" [(ngModel)]="column.filter" range="true"></novo-date-picker>\n </div>\n </list>\n </novo-dropdown>\n </div>\n </th>\n </tr>\n </thead>\n \x3c!-- TABLE DATA --\x3e\n <tbody *ngIf="!dataProvider.isEmpty() || editing">\n <tr class="table-selection-row" *ngIf="config.rowSelectionStyle === \'checkbox\' && showSelectAllMessage && config.selectAllEnabled" data-automation-id="table-selection-row">\n <td colspan="100%">\n {{labels.selectedRecords(selected.length)}} <a (click)="selectAll(true)" data-automation-id="all-matching-records">{{labels.totalRecords(dataProvider.total)}}</a>\n </td>\n </tr>\n <ng-template ngFor let-row="$implicit" let-i="index" [ngForOf]="rows">\n <tr class="table-row" [ngClass]="row.customClass || \'\'" [id]="name + \'-\' + row[rowIdentifier]" [attr.data-automation-id]="row.id" (click)="rowClickHandler(row)" [class.active]="row.id === activeId">\n <td class="row-actions" *ngIf="config.hasDetails">\n <button theme="icon" icon="next" (click)="row._expanded=!row._expanded" *ngIf="!row._expanded"></button>\n <button theme="icon" icon="sort-desc" (click)="row._expanded=!row._expanded" *ngIf="row._expanded"></button>\n </td>\n <td class="row-actions checkbox" *ngIf="config.rowSelectionStyle === \'checkbox\'">\n <novo-checkbox [(ngModel)]="row._selected" (ngModelChange)="rowSelectHandler(row)" data-automation-id="select-row-checkbox"></novo-checkbox>\n </td>\n <td *ngFor="let column of columns" [attr.data-automation-id]="column.id || column.name" [class.novo-form-row]="editable" [hidden]="isColumnHidden(column)">\n <novo-table-cell *ngIf="row._editing && !row._editing[column.name]" [hasEditor]="editable" [column]="column" [row]="row" [form]="getRowControlForm(i)"></novo-table-cell>\n <novo-control *ngIf="row._editing && row._editing[column.name]" condensed="true" [form]="getRowControlForm(i)" [control]="row.controls[column.name]"></novo-control>\n </td>\n </tr>\n <tr class="details-row" *ngIf="config.hasDetails" [hidden]="!row._expanded" [attr.data-automation-id]="\'details-row-\'+row.id">\n <td class="row-actions"></td>\n <td [attr.colspan]="config.rowSelectionStyle === \'checkbox\' ? (columns.length + 1) : columns.length">\n <novo-row-details [data]="row" [renderer]="config.detailsRenderer"></novo-row-details>\n </td>\n </tr>\n </ng-template>\n </tbody>\n \x3c!-- NO TABLE DATA PLACEHOLDER --\x3e\n <tbody class="table-message" *ngIf="dataProvider.isEmpty() && !dataProvider.isFiltered() && !editing" data-automation-id="empty-table">\n <tr>\n <td colspan="100%">\n <div #emptymessage><ng-content select="[table-empty-message]"></ng-content></div>\n <div class="table-empty-message" *ngIf="emptymessage.childNodes.length == 0">\n <h4><i class="bhi-search-question"></i> {{ labels.emptyTableMessage }}</h4>\n </div>\n </td>\n </tr>\n </tbody>\n \x3c!-- NO MATCHING RECORDS --\x3e\n <tbody class="table-message" *ngIf="dataProvider.isEmpty() && dataProvider.isFiltered()" data-automation-id="empty-table">\n <tr>\n <td colspan="100%">\n <div #nomatchmessage><ng-content select="[table-no-matching-records-message]"></ng-content></div>\n <div class="no-matching-records" *ngIf="nomatchmessage.childNodes.length == 0">\n <h4><i class="bhi-search-question"></i> {{ labels.noMatchingRecordsMessage }}</h4>\n </div>\n </td>\n </tr>\n </tbody>\n \x3c!-- TABLE DATA ERROR PLACEHOLDER --\x3e\n <tbody class="table-message" *ngIf="dataProvider.hasErrors()" data-automation-id="table-errors">\n <tr>\n <td colspan="100%">\n <div #errormessage><ng-content select="[table-error-message]"></ng-content></div>\n <div class="table-error-message" *ngIf="errormessage.childNodes.length == 0">\n <h4><i class="bhi-caution"></i> {{ labels.erroredTableMessage }}</h4>\n </div>\n </td>\n </tr>\n </tbody>\n <tfoot *ngIf="!config.footers" [ngClass]="dataProvider.length % 2 == 0 ? \'odd\' : \'even\'">\n <tr>\n <td colspan="100%">\n <ng-content select="novo-table-footer"></ng-content>\n </td>\n </tr>\n </tfoot>\n <tfoot *ngFor="let footer of footers;let i = index;" class="novo-table-total-footer">\n <tr>\n <td *ngFor="let column of columns" [attr.data-automation-id]="(column.id || column.name) + \'-total-\' + i">{{ footer[column.name] }}</td>\n </tr>\n </tfoot>\n </table>\n </novo-form>\n </div>\n '}]}],Sr.ctorParameters=function(){return[{type:Ne},{type:ia},{type:n.FormBuilder}]},Sr.propDecorators={filterInputs:[{type:t.ViewChildren,args:["filterInput",{read:t.ElementRef}]}],config:[{type:t.Input}],columns:[{type:t.Input}],theme:[{type:t.Input}],skipSortAndFilterClear:[{type:t.Input}],mode:[{type:t.Input}],editable:[{type:t.Input}],rowIdentifier:[{type:t.Input}],name:[{type:t.Input}],onRowClick:[{type:t.Output}],onRowSelect:[{type:t.Output}],onTableChange:[{type:t.Output}],rows:[{type:t.Input}],dataProvider:[{type:t.Input}]};var kr=function(){};kr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[Zn],exports:[Zn]}]}];var Ir=function(){};Ir.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,Ua,fr,kr,_,U,an,ze,Vn,An,S.TextMaskModule],declarations:[Sr],exports:[Sr]}]}];var Er=function(){function e(){this.credentials=[],this.change=new t.EventEmitter}return e.prototype.grant=function(e){var t,n,o,a,i=[];if(e instanceof Array)try{for(var r=ne(e),s=r.next();!s.done;s=r.next()){var l=s.value;i.push(l.replace(/\s/gi,""))}}catch(e){t={error:e}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(t)throw t.error}}else if("object"==typeof e)for(var c in e)if(e[c]instanceof Array)try{for(var d=(o=void 0,ne(e[c])),p=d.next();!p.done;p=d.next()){l=p.value;i.push(c+"."+l)}}catch(e){o={error:e}}finally{try{p&&!p.done&&(a=d.return)&&a.call(d)}finally{if(o)throw o.error}}this.credentials=[].concat(this.credentials,i),this.change.emit(this.credentials)},e.prototype.has=function(e){return this.credentials.indexOf(e)>-1},e.prototype.revoke=function(e){var t=this.credentials.indexOf(e);this.credentials.splice(t,1),this.change.emit(this.credentials)},e.prototype.clear=function(){this.credentials=[],this.change.emit(this.credentials)},e.prototype.subscribe=function(e){this.change.subscribe(e)},e.prototype.checkRoutes=function(e,t){var n,o,a=this,i=[];try{for(var r=ne(e),s=r.next();!s.done;s=r.next()){var l=s.value;l.entities&&~l.entities.indexOf(t.entityType)&&(l.permissions instanceof Function?l.permissions(t,this)&&i.push(l):l.permissions&&l.permissions.length?l.permissions.every((function(e){return a.has(e)}))&&i.push(l):i.push(l))}}catch(e){n={error:e}}finally{try{s&&!s.done&&(o=r.return)&&o.call(r)}finally{if(n)throw n.error}}return i},e}();Er.decorators=[{type:t.Injectable}];var wr=function(){function e(e,t,n){this.templateRef=e,this.viewContainer=t,this.security=n,this.permissions="",this.isDisplayed=!1,this.security.subscribe(this.check.bind(this))}return Object.defineProperty(e.prototype,"bhUnless",{set:function(e){this.permissions=e||"",this.check()},enumerable:!1,configurable:!0}),e.prototype.check=function(){var e,t,n=this,o=!1;if(~this.permissions.indexOf("||")){var a=this.permissions.split("||");try{for(var i=ne(a),r=i.next();!r.done;r=i.next()){var s=r.value;this.security.has(s.trim())&&(o=!0)}}catch(t){e={error:t}}finally{try{r&&!r.done&&(t=i.return)&&t.call(i)}finally{if(e)throw e.error}}}else o=this.permissions.split("&&").every((function(e){return n.security.has(e.trim())}));o?this.isDisplayed||(this.isDisplayed=!0,this.viewContainer.createEmbeddedView(this.templateRef)):(this.isDisplayed=!1,this.viewContainer.clear())},e}();wr.decorators=[{type:t.Directive,args:[{selector:"[bhUnless]"}]}],wr.ctorParameters=function(){return[{type:t.TemplateRef},{type:t.ViewContainerRef},{type:Er}]},wr.propDecorators={bhUnless:[{type:t.Input}]};var Tr=function(){};Tr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[wr],exports:[wr]}]}];var Or=function(){function e(){this.baseEntity="",this.ENTITY_SHORT_NAMES={Lead:"lead",ClientContact:"contact",ClientContact1:"contact",ClientContact2:"contact",ClientContact3:"contact",ClientContact4:"contact",ClientContact5:"contact",ClientCorporation:"company",ClientCorporation1:"company",ClientCorporation2:"company",ClientCorporation3:"company",ClientCorporation4:"company",ClientCorporation5:"company",Opportunity:"opportunity",Task:"task",Note:"note",CorporateUser:"user",Candidate:"candidate",JobOrder:"job",JobOrder1:"job",JobOrder2:"job",JobOrder3:"job",JobOrder4:"job",JobOrder5:"job",Placement:"placement",JobSubmission:"submission",CandidateReference:"references",DistributionList:"distributionList",Appointment:"appointment"}}return e.prototype.ngOnInit=function(){var e,t;this.metaDisplay=R.deepClone(this.meta),this.metaDisplay.type="TO_ONE",this.baseEntity=this.meta.associatedEntity.entity;try{for(var n=ne(this.data.data),o=n.next();!o.done;o=n.next()){var a=o.value;a.isLinkable=this.isLinkable(a),a.class=this.getClass(a)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}},e.prototype.getClass=function(e){return this.ENTITY_SHORT_NAMES[e.personSubtype]},e.prototype.openLink=function(e){e.openLink(e)},e.prototype.isLinkable=function(e){return e.openLink},e}();Or.decorators=[{type:t.Component,args:[{selector:"novo-entity-list",changeDetection:t.ChangeDetectionStrategy.OnPush,template:'\n <div *ngFor="let entity of data.data" class="entity">\n <a *ngIf="entity.isLinkable" (click)="openLink(entity)">\n <i class="bhi-circle {{ entity.class }}"></i>{{ entity | render : metaDisplay }}\n </a>\n <span *ngIf="!entity.isLinkable && entity.personSubtype">\n <i class="bhi-circle {{ entity.class }}"></i>{{ entity | render : metaDisplay }}\n </span>\n <span *ngIf="!entity.isLinkable && !entity.personSubtype">\n {{ entity | render : metaDisplay }}\n </span>\n </div>\n '}]}],Or.ctorParameters=function(){return[]},Or.propDecorators={data:[{type:t.Input}],meta:[{type:t.Input}]};var Pr,Ar,Dr=function(){function e(e,t,n){this.changeDetector=e,this.sanitizationService=t,this.labels=n}return e.prototype.equals=function(e,t){if(e===t)return!0;if(null===e||null===t)return!1;if(e!=e&&t!=t)return!0;var n,o,a,i=typeof e;if(i===typeof t&&"object"===i){if(!Array.isArray(e)){if(Array.isArray(t))return!1;for(o in a=Object.create(null),e)if(e[o]){if(!this.equals(e[o],t[o]))return!1;a[o]=!0}for(o in t)if(!(o in a)&&void 0!==t[o])return!1;return!0}if(!Array.isArray(t))return!1;if((n=e.length)===t.length){for(o=0;o<n;o++)if(!this.equals(e[o],t[o]))return!1;return!0}}return!1},e.prototype.getEntityLabel=function(e,t){switch(t){case"CorporateUser":case"ClientContact":case"ClientContact1":case"ClientContact2":case"ClientContact3":case"ClientContact4":case"ClientContact5":case"Lead":case"Candidate":case"Person":return((e.firstName||"")+" "+(e.lastName||"")).trim();case"ClientCorporation":case"ClientCorporation1":case"ClientCorporation2":case"ClientCorporation3":case"ClientCorporation4":case"ClientCorporation5":return(""+(e.name||"")).trim();case"JobOrder":case"JobOrder1":case"JobOrder2":case"JobOrder3":case"JobOrder4":case"JobOrder5":case"Opportunity":return(""+(e.title||"")).trim();case"Placement":var n="";return e.candidate&&(n=(e.candidate.firstName+" "+e.candidate.lastName).trim()),e.jobOrder&&(n=(n+" - "+e.jobOrder.title).trim()),n;default:return""}},e.prototype.render=function(e,t){var n=null,o=e;if(e&&e._subtype&&!t)return this.getEntityLabel(e,e._subtype);if(null==e||!t)return o;if(t.formatter&&"function"==typeof t.formatter)return t.formatter(e,t);n="TO_MANY"===t.type?"ToMany":"TO_ONE"===t.type?t.associatedEntity.entity:"DATETIME"===t.dataSpecialization?"DateTime":"YEAR"===t.dataSpecialization?"Year":"DATE"===t.dataSpecialization&&"Date"===t.dataType?"Date":"Timestamp"===t.dataType?"Timestamp":["mobile","phone","phone1","phone2","phone3","workPhone"].indexOf(t.name)>-1?"Phone":t.name&&"email"===t.name.substring(0,5)?"Email":t.name&&"address.countryID"===t.name||"Country"===t.optionsType?"Country":"SkillText"===t.optionsType?"SkillText":t.options||"SELECT"===t.inputType||"CHECKBOX"===t.inputType?"Options":["MONEY","PERCENTAGE","HTML","SSN"].indexOf(t.dataSpecialization)>-1?this.capitalize(t.dataSpecialization.toLowerCase()):t.dataType||"default";try{switch(n){case"Address":case"Address1":case"AddressWithoutCountry":case"SecondaryAddress":case"BillingAddress":var a=gn(Number(e.countryName));o="",(e.address1||e.address2)&&(o+=(e.address1||"")+" "+(e.address2||"")+"<br />\n"),o+=(e.city||"")+" "+(e.state||"")+" "+(e.zip||"")+(e.city||e.state||e.zip?"<br />\n":""),o+=(a?a.name:e.countryName||"")+(a||e.countryName?"<br />\n":""),o=this.sanitizationService.bypassSecurityTrustHtml(o.trim());break;case"DateTime":case"Timestamp":o=this.labels.formatDateShort(e);break;case"Date":o=this.labels.formatDate(new Date(e));break;case"Year":o=new Date(e).getFullYear();break;case"Phone":case"Email":o=e;break;case"Money":o=this.labels.formatCurrency(e);break;case"Percentage":o=this.labels.formatNumber(parseFloat(e).toString(),{style:"percent",minimumFractionDigits:2});break;case"Double":case"BigDecimal":o=this.labels.formatNumber(e,{minimumFractionDigits:this.getNumberDecimalPlaces(e)});break;case"Integer":o=e;break;case"BusinessSector":case"Category":case"Certification":case"ClientCorporation":case"CorporationDepartment":case"DistributionList":case"Skill":case"Tearsheet":case"Specialty":o=e.label||e.name||"";break;case"SkillText":o=Array.isArray(e)?e.join(", "):e;break;case"Lead":case"Candidate":case"ClientContact":case"CorporateUser":case"Person":o=e.label||(e.firstName||"")+" "+(e.lastName||"");break;case"Opportunity":case"JobOrder":o=e.label||e.title||"";break;case"Placement":e.candidate&&(o=(e.candidate.firstName||"")+" "+(e.candidate.lastName||"")),e.jobOrder&&(o=e.candidate?o+" - "+(e.jobOrder.title||""):""+(e.jobOrder.title||""));break;case"JobSubmission":o=e.label||(e.jobOrder?e.jobOrder.title+" - ":"")+" "+(e.candidate?e.candidate.firstName:"")+" "+(e.candidate?e.candidate.lastName:"");break;case"WorkersCompensationRate":o=(e.compensation?e.compensation.code+" - ":"")+" "+(e.compensation?e.compensation.name:"");break;case"Options":o=this.options(e,t.options,t);break;case"ToMany":["Candidate","CorporateUser","Person"].indexOf(t.associatedEntity.entity)>-1?(o=this.concat(e.data,"firstName","lastName"),e.data.length<e.total&&(o=o+", "+this.labels.getToManyPlusMore({quantity:e.total-e.data.length}))):["Category","BusinessSector","Skill","Specialty","ClientCorporation","CorporationDepartment"].indexOf(t.associatedEntity.entity)>-1?(o=this.concat(e.data,"name"),e.data.length<e.total&&(o=o+", "+this.labels.getToManyPlusMore({quantity:e.total-e.data.length}))):o="MailListPushHistoryDetail"===t.associatedEntity.entity?this.concat(e.data,"externalListName"):""+(e.total||"");break;case"Country":var i=gn(Number(e));o=i?i.name:e;break;case"Html":Array.isArray(e)&&(e=e.join(" ")),"string"==typeof o&&(o=this.sanitizationService.bypassSecurityTrustHtml(e.replace(/\<a/gi,'<a target="_blank"')));break;case"CandidateComment":o=e.comments?this.labels.formatDateShort(e.dateLastModified)+" ("+e.name+") - "+e.comments:"";break;default:o=e.trim?e.trim():e}return o}catch(e){return console.error("WARNING: There was a problem rendering the value of the field: "+t.label+". Please check the configuration"),console.error(e),o}},e.prototype.updateValue=function(e,t){this.value=this.render(e,t),this.changeDetector.markForCheck()},e.prototype.transform=function(e,t){return null==e?"":(this.equals(e,this.lastValue)&&this.equals(t,this.lastArgs)||(this.lastValue=e,this.lastArgs=t,this.updateValue(this.lastValue,this.lastArgs)),this.value)},e.prototype.concat=function(e){for(var t,n,o,a,i=[],r=1;r<arguments.length;r++)i[r-1]=arguments[r];var s=[];try{for(var l=ne(e),c=l.next();!c.done;c=l.next()){var d=c.value,p=[];try{for(var u=(o=void 0,ne(i)),m=u.next();!m.done;m=u.next()){var h=m.value;p.push(""+d[h])}}catch(e){o={error:e}}finally{try{m&&!m.done&&(a=u.return)&&a.call(u)}finally{if(o)throw o.error}}s.push(p.join(" "))}}catch(e){t={error:e}}finally{try{c&&!c.done&&(n=l.return)&&n.call(l)}finally{if(t)throw t.error}}return s.join(", ")},e.prototype.options=function(e,t,n){Array.isArray(e)||(e=[e]);try{return e.map((function(e){var n,o;try{for(var a=ne(t),i=a.next();!i.done;i=a.next()){var r=i.value;if(r.value===e)return r.label}}catch(e){n={error:e}}finally{try{i&&!i.done&&(o=a.return)&&o.call(a)}finally{if(n)throw n.error}}return e}))}catch(t){if(!n.optionsType)throw Error(t);return e}},e.prototype.getNumberDecimalPlaces=function(e){var t;e&&(t=((parseFloat(e).toString()||"").split(".")[1]||"").length);return t||1},e.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},e}();Dr.decorators=[{type:t.Pipe,args:[{name:"render",pure:!1}]},{type:t.Injectable}],Dr.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:f.DomSanitizer},{type:Ne}]},(Pr=e.NOVO_VALUE_TYPE||(e.NOVO_VALUE_TYPE={}))[Pr.DEFAULT=0]="DEFAULT",Pr[Pr.ENTITY_LIST=1]="ENTITY_LIST",Pr[Pr.LINK=2]="LINK",Pr[Pr.INTERNAL_LINK=3]="INTERNAL_LINK",(Ar=e.NOVO_VALUE_THEME||(e.NOVO_VALUE_THEME={}))[Ar.DEFAULT=0]="DEFAULT",Ar[Ar.MOBILE=1]="MOBILE";var xr=function(){function t(){this.meta={type:"SCALAR",label:""},this.theme=e.NOVO_VALUE_THEME.DEFAULT,this.NOVO_VALUE_TYPE=e.NOVO_VALUE_TYPE,this.NOVO_VALUE_THEME=e.NOVO_VALUE_THEME,this.customClass=""}return Object.defineProperty(t.prototype,"label",{get:function(){return this.meta.label},set:function(e){this.meta.label=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"type",{get:function(){return this.meta.type},set:function(e){this.meta.type=e},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){R.isEmpty(this.meta)&&(this.meta={label:""})},Object.defineProperty(t.prototype,"isMobile",{get:function(){return this.theme===e.NOVO_VALUE_THEME.MOBILE},enumerable:!1,configurable:!0}),t.prototype.iconClass=function(e){var t="";return e&&e.iconCls?(t="bhi-"+e.iconCls+" actions",e.onIconClick&&(t+=" clickable"),t):t},Object.defineProperty(t.prototype,"isDefault",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"showLabel",{get:function(){return this._type===e.NOVO_VALUE_TYPE.INTERNAL_LINK||this._type===e.NOVO_VALUE_TYPE.LINK||this._type===e.NOVO_VALUE_TYPE.ENTITY_LIST},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"showIcon",{get:function(){return this.meta&&this.meta.icons&&this.meta.icons.length&&!R.isEmpty(this.data)},enumerable:!1,configurable:!0}),t.prototype.onValueClick=function(e){e.onIconClick&&"function"==typeof e.onIconClick&&e.onIconClick(this.data,this.meta)},t.prototype.openLink=function(){this.meta&&this.meta.openLink&&"function"==typeof this.meta.openLink&&this.meta.openLink(this.data,this.meta)},t.prototype.ngOnChanges=function(t){if(this.meta&&this.isLinkField(this.meta,this.data))this._type=e.NOVO_VALUE_TYPE.LINK,new RegExp("^(http|https)://","i").test(this.data)?this.url=this.data:this.url="http://"+this.data;else if(this.isEntityList(this.meta.type))this._type=e.NOVO_VALUE_TYPE.ENTITY_LIST;else if(this.isHTMLField(this.meta))this.customClass=this.meta.customClass?this.meta.customClass:"",this.meta.stripHTML&&this.data&&this.data.replace&&(this.data=this.data.replace(/<(?!style|\/style).+?>/gi,"").trim());else if(this.meta&&this.meta.associatedEntity)switch(this.meta.associatedEntity.entity){case"ClientCorporation":case"ClientContact":case"Candidate":case"Opportunity":case"JobOrder":case"Placement":case"Lead":this._type=e.NOVO_VALUE_TYPE.INTERNAL_LINK}},t.prototype.isLinkField=function(t,n){var o=new RegExp("^(https?://(?:www.|(?!www))[^s.]+.[^s]{2,}|www.[^s]+.[^s]{2,})$","gi"),a=R.isString(n)&&o.exec(n.trim());return["companyURL","clientCorporationCompanyURL"].indexOf(t.name)>-1||!!a||t.type===e.NOVO_VALUE_TYPE.LINK},t.prototype.isEntityList=function(e){return"TO_MANY"===e},t.prototype.isHTMLField=function(e){return"HTML"===e.dataSpecialization||"TEXTAREA"===e.inputType},t}();xr.decorators=[{type:t.Component,args:[{selector:"novo-value",template:'\n <ng-container [ngSwitch]="_type">\n <div class="value-outer" *ngIf="showLabel">\n <label>{{ meta.label }}</label>\n <span class="value">\n <i *ngIf="meta.showEntityIcon" class="bhi-circle {{meta.entityIconClass}}"></i>\n <a *ngSwitchCase="NOVO_VALUE_TYPE.INTERNAL_LINK" (click)="openLink()" [innerHTML]="data | render : meta"></a>\n <a *ngSwitchCase="NOVO_VALUE_TYPE.LINK" class="value" [href]="url" target="_blank" [innerHTML]="data | render : meta"></a>\n </span>\n <novo-entity-list *ngSwitchCase="NOVO_VALUE_TYPE.ENTITY_LIST" [data]=\'data\' [meta]="meta"></novo-entity-list>\n </div>\n <div *ngSwitchDefault class="value-outer" [ngClass]="customClass">\n <label>{{ meta.label }}</label>\n <div *ngIf="isDefault" class="value" [innerHTML]="data | render : meta"></div>\n </div>\n <div class="actions" *ngIf="showIcon">\n <i *ngFor="let icon of meta.icons" [class]="iconClass(icon)" (click)="onValueClick(icon)"></i>\n </div>\n </ng-container>\n '}]}],xr.propDecorators={data:[{type:t.Input}],meta:[{type:t.Input}],theme:[{type:t.Input}],label:[{type:t.Input}],type:[{type:t.Input}],isMobile:[{type:t.HostBinding,args:["class.mobile"]}]};var Rr=function(){};Rr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[xr,Dr,Or],exports:[xr,Dr,Or]}]}];var Mr=function(){};Mr.decorators=[{type:t.NgModule,args:[{imports:[n.ReactiveFormsModule],exports:[re,_,ze,je,Le,kr,U,Ha,nt,Rn,Va,Ma,Aa,an,ln,pt,St,mn,zi,Nt,Gt,Vn,bo,Co,Kt,Ga,Ui,Ir,fr,Ua,An,ut,Wa,ni,lo,Ln,vt,Qa,Rr,B,za,xo,Tr,jt,Qi,h.ScrollingModule,tr],providers:[{provide:mt,useClass:mt},{provide:Hn,useClass:Hn},{provide:Ne,useClass:Ne},{provide:dn,useClass:dn},{provide:Ja,useClass:Ja},{provide:Za,useClass:Ya},{provide:qa,useClass:qa},{provide:aa,useClass:aa},{provide:ia,useClass:ia}]}]}];var Fr,Lr=[{provide:dn,useClass:dn},{provide:la,useClass:la},{provide:ua,useClass:ua},{provide:Ja,useClass:Ja},{provide:Yn,useClass:Yn},{provide:mt,useClass:mt},{provide:Za,useClass:Ya},{provide:qa,useClass:qa},{provide:aa,useClass:aa},fa,Hn,Er,ya],Nr=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:ae(Lr)}},e.forChild=function(){return{ngModule:e}},e}();Nr.decorators=[{type:t.NgModule,args:[{imports:[]}]}],(Fr=e.AppBridgeHandler||(e.AppBridgeHandler={}))[Fr.HTTP=0]="HTTP",Fr[Fr.OPEN=1]="OPEN",Fr[Fr.OPEN_LIST=2]="OPEN_LIST",Fr[Fr.CLOSE=3]="CLOSE",Fr[Fr.REFRESH=4]="REFRESH",Fr[Fr.PIN=5]="PIN",Fr[Fr.REGISTER=6]="REGISTER",Fr[Fr.UPDATE=7]="UPDATE",Fr[Fr.REQUEST_DATA=8]="REQUEST_DATA",Fr[Fr.CALLBACK=9]="CALLBACK",Fr[Fr.PING=10]="PING";var Br="get",Hr="post",_r="put",Gr="delete",Vr="register",Ur="open",Kr="openList",zr="close",jr="refresh",$r="pin",Wr="ping",Zr="update",Yr="httpGET",qr="httpPOST",Jr="httpPUT",Xr="httpDELETE",Qr="customEvent",es="requestData",ts="callback",ns=function(){function e(){}return e.prototype.create=function(e){return new as(e)},e}(),os=function(){function e(e){this.http=e}return e.prototype.create=function(e){return new is(e,this.http)},e}(),as=function(){function t(e){if(void 0===e&&(e="AppBridge"),this.id=""+Date.now(),this._registeredFrames=[],this._handlers={},this._tracing=!1,this._eventListeners={},this.traceName=e,postRobot){postRobot.CONFIG.LOG_LEVEL="error";try{this._setupHandlers()}catch(e){}}}return Object.defineProperty(t.prototype,"tracing",{set:function(e){this._tracing=e},enumerable:!1,configurable:!0}),t.prototype.handle=function(e,t){this._handlers[e]=t},t.prototype._trace=function(e,t){this._tracing&&console.log("["+(this.traceName||this.id)+'] "'+e+'"',t)},t.prototype._setupHandlers=function(){var e=this;postRobot.on(Vr,(function(t){return e._trace(Vr,t),e._registeredFrames.push(t),e.register(t.data).then((function(e){return{windowName:e}}))})),postRobot.on(Zr,(function(t){return e._trace(Zr,t),e.update(t.data).then((function(e){return{success:e}}))})),postRobot.on(Ur,(function(t){return e._trace(Ur,t),e.open(t.data).then((function(e){return{success:e}}))})),postRobot.on(Kr,(function(t){return e._trace(Kr,t),e.openList(t.data).then((function(e){return{success:e}}))})),postRobot.on(zr,(function(t){e._trace(zr,t);var n=e._registeredFrames.findIndex((function(e){return e.data.id===t.data.id}));return-1!==n&&e._registeredFrames.splice(n,1),e.close(t.data).then((function(e){return{success:e}}))})),postRobot.on(jr,(function(t){return e._trace(jr,t),e.refresh(t.data).then((function(e){return{success:e}}))})),postRobot.on($r,(function(t){return e._trace($r,t),e.pin(t.data).then((function(e){return{success:e}}))})),postRobot.on(Wr,(function(t){return e._trace(Wr,t),e.httpGET("ping").then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(es,(function(t){return e._trace(es,t),e.requestData(t.data).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(ts,(function(t){return e._trace(ts,t),e.callback(t.data).then((function(e){return{success:e}}))})),postRobot.on(Yr,(function(t){return e._trace(Yr,t),e.httpGET(t.data.relativeURL).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(qr,(function(t){return e._trace(qr,t),e.httpPOST(t.data.relativeURL,t.data.data).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(Jr,(function(t){return e._trace(Jr,t),e.httpPUT(t.data.relativeURL,t.data.data).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(Xr,(function(t){return e._trace(Xr,t),e.httpDELETE(t.data.relativeURL).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(Qr,(function(t){e._trace(Qr,t),e._eventListeners[t.data.event]&&e._eventListeners[t.data.event].forEach((function(e){e(t.data.data)})),e._registeredFrames.length>0&&e._registeredFrames.forEach((function(e){postRobot.send(e.source,Qr,t.data)}))}))},t.prototype.open=function(t){var n=this;return new Promise((function(o,a){n._handlers[e.AppBridgeHandler.OPEN]?n._handlers[e.AppBridgeHandler.OPEN](t,(function(e){e?o(!0):a(!1)})):(Object.assign(t,{id:n.id,windowName:n.windowName}),postRobot.sendToParent(Ur,t).then((function(e){n._trace(Ur+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)})))}))},t.prototype.openList=function(t){var n=this;return new Promise((function(o,a){if(n._handlers[e.AppBridgeHandler.OPEN_LIST])n._handlers[e.AppBridgeHandler.OPEN_LIST](t,(function(e){e?o(!0):a(!1)}));else{Object.assign({},{type:"List",entityType:t.type,keywords:t.keywords,criteria:t.criteria}),postRobot.sendToParent(Kr,t).then((function(e){n._trace(Kr+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)}))}}))},t.prototype.update=function(t){var n=this;return new Promise((function(o,a){n._handlers[e.AppBridgeHandler.UPDATE]?n._handlers[e.AppBridgeHandler.UPDATE](t,(function(e){e?o(!0):a(!1)})):(Object.assign(t,{id:n.id,windowName:n.windowName}),postRobot.sendToParent(Zr,t).then((function(e){n._trace(Zr+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)})))}))},t.prototype.close=function(t){var n=this;return new Promise((function(o,a){if(n._handlers[e.AppBridgeHandler.CLOSE])n._handlers[e.AppBridgeHandler.CLOSE](t,(function(e){e?o(!0):a(!1)}));else{t&&console.info("[AppBridge] - close(packet) is deprecated! Please just use close()!");var i={id:n.id,windowName:n.windowName};postRobot.sendToParent(zr,i).then((function(e){n._trace(zr+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)}))}}))},t.prototype.refresh=function(t){var n=this;return new Promise((function(o,a){if(n._handlers[e.AppBridgeHandler.REFRESH])n._handlers[e.AppBridgeHandler.REFRESH](t,(function(e){e?o(!0):a(!1)}));else{t&&console.info("[AppBridge] - refresh(packet) is deprecated! Please just use refresh()!");var i={id:n.id,windowName:n.windowName};postRobot.sendToParent(jr,i).then((function(e){n._trace(jr+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)}))}}))},t.prototype.ping=function(){var t=this;return new Promise((function(n,o){t._handlers[e.AppBridgeHandler.PING]?t._handlers[e.AppBridgeHandler.PING]({},(function(e,t){n({data:e,error:t})})):postRobot.sendToParent(Wr,{}).then((function(e){n({data:e.data.data,error:e.data.error})})).catch((function(e){o(null)}))}))},t.prototype.pin=function(t){var n=this;return new Promise((function(o,a){if(n._handlers[e.AppBridgeHandler.PIN])n._handlers[e.AppBridgeHandler.PIN](t,(function(e){e?o(!0):a(!1)}));else{t&&console.info("[AppBridge] - pin(packet) is deprecated! Please just use pin()!");var i={id:n.id,windowName:n.windowName};postRobot.sendToParent($r,i).then((function(e){n._trace($r+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)}))}}))},t.prototype.requestData=function(t){var n=this;return new Promise((function(o,a){n._handlers[e.AppBridgeHandler.REQUEST_DATA]?n._handlers[e.AppBridgeHandler.REQUEST_DATA](t,(function(e){e?o({data:e}):a(!1)})):(Object.assign(t,{id:n.id,windowName:n.windowName}),postRobot.sendToParent(es,t).then((function(e){n._trace(es+" (callback)",e),e.data?o({data:e.data.data}):a(!1)})).catch((function(e){a(!1)})))}))},t.prototype.callback=function(t){var n=this;return new Promise((function(o,a){n._handlers[e.AppBridgeHandler.CALLBACK]?n._handlers[e.AppBridgeHandler.CALLBACK](t,(function(e){e?o(!0):a(!1)})):(Object.assign(t,{id:n.id,windowName:n.windowName}),postRobot.sendToParent(ts,t).then((function(e){n._trace(ts+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)})))}))},t.prototype.register=function(t){var n=this;return void 0===t&&(t={}),new Promise((function(o,a){n._handlers[e.AppBridgeHandler.REGISTER]?n._handlers[e.AppBridgeHandler.REGISTER](t,(function(e){o(e||null)})):(Object.assign(t,{id:n.id}),postRobot.sendToParent(Vr,t).then((function(e){n._trace(Vr+" (callback)",e),e.data?(n.windowName=e.data.windowName,o(e.data.windowName)):o(null)})).catch((function(e){n._trace(Vr+" - FAILED - (no parent)",e),a(e)})))}))},t.prototype.httpGET=function(t,n){var o=this;return void 0===n&&(n=1e4),new Promise((function(a,i){o._handlers[e.AppBridgeHandler.HTTP]?o._handlers[e.AppBridgeHandler.HTTP]({verb:Br,relativeURL:t},(function(e,t){a({data:e,error:t})})):postRobot.sendToParent(Yr,{relativeURL:t},{timeout:n}).then((function(e){a({data:e.data.data,error:e.data.error})})).catch((function(e){i(null)}))}))},t.prototype.httpPOST=function(t,n,o){var a=this;return void 0===o&&(o=1e4),new Promise((function(i,r){a._handlers[e.AppBridgeHandler.HTTP]?a._handlers[e.AppBridgeHandler.HTTP]({verb:Hr,relativeURL:t,data:n},(function(e,t){i({data:e,error:t})})):postRobot.sendToParent(qr,{relativeURL:t,data:n},{timeout:o}).then((function(e){i({data:e.data.data,error:e.data.error})})).catch((function(e){r(null)}))}))},t.prototype.httpPUT=function(t,n,o){var a=this;return void 0===o&&(o=1e4),new Promise((function(i,r){a._handlers[e.AppBridgeHandler.HTTP]?a._handlers[e.AppBridgeHandler.HTTP]({verb:_r,relativeURL:t,data:n},(function(e,t){i({data:e,error:t})})):postRobot.sendToParent(Jr,{relativeURL:t,data:n},{timeout:o}).then((function(e){i({data:e.data.data,error:e.data.error})})).catch((function(e){r(null)}))}))},t.prototype.httpDELETE=function(t,n){var o=this;return void 0===n&&(n=1e4),new Promise((function(a,i){o._handlers[e.AppBridgeHandler.HTTP]?o._handlers[e.AppBridgeHandler.HTTP]({verb:Gr,relativeURL:t},(function(e,t){a({data:e,error:t})})):postRobot.sendToParent(Xr,{relativeURL:t},{timeout:n}).then((function(e){a({data:e.data.data,error:e.data.error})})).catch((function(e){i(null)}))}))},t.prototype.fireEvent=function(e,t){return new Promise((function(n,o){postRobot.sendToParent(Qr,{event:e,data:t}).then((function(e){n(e)})).catch((function(e){o(null)}))}))},t.prototype.fireEventToChildren=function(e,t){this._registeredFrames.length>0&&this._registeredFrames.forEach((function(n){postRobot.send(n.source,Qr,{event:e,eventType:e,data:t})}))},t.prototype.fireEventToChild=function(e,t,n){e instanceof HTMLIFrameElement&&(e=e.contentWindow),postRobot.send(e,Qr,{event:t,data:n})},t.prototype.addEventListener=function(e,t){this._eventListeners[e]||(this._eventListeners[e]=[]),this._eventListeners[e].push(t)},t}(),is=function(e){function t(t,n){void 0===t&&(t="DevAppBridge");var o=e.call(this,t)||this;o.http=n;var a=o.getCookie("UlEncodedIdentity");if(a&&a.length){var i=JSON.parse(decodeURIComponent(a)).sessions.reduce((function(e,t){return e[t.name]=t.value.endpoint,e}),{});o.baseURL=i.rest}return o}return te(t,e),t.prototype._setupHandlers=function(){},t.prototype.httpGET=function(e){return this.http.get(this.baseURL+"/"+e,{withCredentials:!0}).toPromise()},t.prototype.httpPOST=function(e,t){return this.http.post(this.baseURL+"/"+e,t,{withCredentials:!0}).toPromise()},t.prototype.httpPUT=function(e,t){return this.http.put(this.baseURL+"/"+e,t,{withCredentials:!0}).toPromise()},t.prototype.httpDELETE=function(e){return this.http.delete(this.baseURL+"/"+e,{withCredentials:!0}).toPromise()},t.prototype.getCookie=function(e){if(document)for(var t=e+"=",n=document.cookie.split(";"),o=0;o<n.length;o++){for(var a=n[o];" "===a.charAt(0);)a=a.substring(1);if(0===a.indexOf(t))return a.substring(t.length,a.length)}return!1},t}(as);e.AceEditorControl=Go,e.ActivityTableDataSource=Fi,e.ActivityTableRenderers=oi,e.AddressControl=Fo,e.AppBridge=as,e.AppBridgeService=ns,e.ArrayCollection=br,e.BaseControl=Ro,e.BasePickerResults=kt,e.BaseRenderer=nr,e.BrowserGlobalRef=Ya,e.COUNTRIES=hn,e.CardActionsElement=Be,e.CardElement=He,e.CheckListControl=Lo,e.CheckboxControl=No,e.ChecklistPickerResults=Dt,e.CollectionEvent=yr,e.ComponentUtils=mt,e.ControlFactory=ea,e.CustomControl=ta,e.DataTableBigDecimalRendererPipe=io,e.DataTableInterpolatePipe=eo,e.DateCell=or,e.DateControl=Bo,e.DateTableCurrencyRendererPipe=ro,e.DateTableDateRendererPipe=to,e.DateTableDateTimeRendererPipe=no,e.DateTableNumberRendererPipe=ao,e.DateTableTimeRendererPipe=oo,e.DateTimeControl=Ho,e.DayOfMonthPipe=Me,e.DecodeURIPipe=Q,e.Deferred=ra,e.DevAppBridge=is,e.DevAppBridgeService=os,e.DistributionListPickerResults=Ft,e.EditorControl=_o,e.EndOfWeekDisplayPipe=Fe,e.EntityList=Or,e.EntityPickerResult=Pt,e.EntityPickerResults=At,e.FieldInteractionApi=fa,e.FileControl=Vo,e.FormUtils=ia,e.FormValidators=Mo,e.GlobalRef=Za,e.GooglePlacesModule=Qa,e.GooglePlacesService=Ja,e.GroupByPipe=ie,e.GroupedControl=Qo,e.GroupedMultiPickerResults=xt,e.Helpers=R,e.HoursPipe=Re,e.KeyCodes=We,e.LocalStorageService=qa,e.MixedMultiPickerResults=Rt,e.MonthDayPipe=De,e.MonthPipe=Ae,e.NativeSelectControl=Uo,e.NovoAccordion=So,e.NovoAceEditor=N,e.NovoAceEditorModule=B,e.NovoActivityTable=Vi,e.NovoActivityTableActions=Ni,e.NovoActivityTableCustomFilter=Hi,e.NovoActivityTableCustomHeader=Bi,e.NovoActivityTableEmptyMessage=_i,e.NovoActivityTableNoResultsMessage=Gi,e.NovoActivityTableState=ai,e.NovoAddressElement=bn,e.NovoAutoSize=va,e.NovoButtonElement=H,e.NovoButtonModule=_,e.NovoCKEditorElement=Ut,e.NovoCalendarAllDayEventElement=Oe,e.NovoCalendarDateChangeElement=le,e.NovoCalendarDayEventElement=we,e.NovoCalendarDayViewElement=Ee,e.NovoCalendarHourSegmentElement=Te,e.NovoCalendarModule=Le,e.NovoCalendarMonthDayElement=Ce,e.NovoCalendarMonthHeaderElement=be,e.NovoCalendarMonthViewElement=ve,e.NovoCalendarWeekEventElement=Ie,e.NovoCalendarWeekHeaderElement=ke,e.NovoCalendarWeekViewElement=Se,e.NovoCardModule=je,e.NovoCategoryDropdownElement=Ze,e.NovoCategoryDropdownModule=ut,e.NovoCheckListElement=En,e.NovoCheckboxElement=kn,e.NovoChipElement=gt,e.NovoChipsElement=ft,e.NovoChipsModule=Gt,e.NovoCommonModule=jt,e.NovoControlElement=ba,e.NovoControlGroup=Ca,e.NovoControlTemplates=Sa,e.NovoDataTable=on,e.NovoDataTableClearButton=Zt,e.NovoDataTableFilterUtils=$t,e.NovoDataTableModule=lo,e.NovoDatePickerElement=Bn,e.NovoDatePickerInputElement=Gn,e.NovoDatePickerModule=Vn,e.NovoDateTimePickerElement=uo,e.NovoDateTimePickerInputElement=ho,e.NovoDateTimePickerModule=Co,e.NovoDragulaElement=un,e.NovoDragulaModule=mn,e.NovoDragulaService=dn,e.NovoDropDownItemHeaderElement=en,e.NovoDropdownCell=ar,e.NovoDropdownElement=Jt,e.NovoDropdownListElement=Qt,e.NovoDropdownModule=an,e.NovoDynamicFormElement=Ea,e.NovoElementProviders=Nr,e.NovoElementsModule=Mr,e.NovoEventTypeLegendElement=se,e.NovoExpansionModule=xo,e.NovoExpansionPanel=To,e.NovoExpansionPanelActionRow=Oo,e.NovoExpansionPanelContent=Eo,e.NovoExpansionPanelDescription=Ao,e.NovoExpansionPanelHeader=Po,e.NovoExpansionPanelTitle=Do,e.NovoFieldsetHeaderElement=ka,e.NovoFile=wn,e.NovoFileInputElement=Pn,e.NovoFormControl=na,e.NovoFormElement=wa,e.NovoFormExtrasModule=An,e.NovoFormGroup=oa,e.NovoFormModule=Ua,e.NovoHeaderComponent=Ba,e.NovoHeaderModule=Ha,e.NovoHeaderSpacer=Fa,e.NovoHorizontalStepper=qi,e.NovoIconComponent=Ka,e.NovoIconModule=za,e.NovoIsLoadingDirective=Ke,e.NovoItemAvatarElement=it,e.NovoItemContentElement=ct,e.NovoItemDateElement=lt,e.NovoItemElement=Xt,e.NovoItemEndElement=dt,e.NovoItemHeaderElement=st,e.NovoItemTitleElement=rt,e.NovoLabelService=Ne,e.NovoListElement=ot,e.NovoListItemElement=at,e.NovoListModule=pt,e.NovoLoadedDirective=Ue,e.NovoLoadingElement=_e,e.NovoLoadingModule=ze,e.NovoModalElement=da,e.NovoModalModule=Va,e.NovoModalNotificationElement=pa,e.NovoModalParams=sa,e.NovoModalRef=la,e.NovoModalService=ua,e.NovoMultiPickerElement=$a,e.NovoMultiPickerModule=Wa,e.NovoNavContentElement=et,e.NovoNavElement=Ye,e.NovoNavHeaderElement=tt,e.NovoNavOutletElement=Qe,e.NovoNovoCKEditorModule=Kt,e.NovoOverlayModule=vt,e.NovoOverlayTemplateComponent=yt,e.NovoPickerElement=Ot,e.NovoPickerModule=Nt,e.NovoPipesModule=re,e.NovoPopOverModule=ni,e.NovoQuickNoteModule=Ma,e.NovoRadioElement=Pa,e.NovoRadioGroup=Oa,e.NovoRadioModule=Aa,e.NovoRowChipElement=Ht,e.NovoRowChipsElement=_t,e.NovoSearchBoxElement=Fn,e.NovoSearchBoxModule=Ln,e.NovoSelectElement=sn,e.NovoSelectModule=ln,e.NovoSelection=ri,e.NovoSimpleActionCell=Ci,e.NovoSimpleCell=vi,e.NovoSimpleCellDef=ui,e.NovoSimpleCellHeader=ki,e.NovoSimpleCheckboxCell=bi,e.NovoSimpleCheckboxHeaderCell=yi,e.NovoSimpleColumnDef=hi,e.NovoSimpleEmptyHeaderCell=fi,e.NovoSimpleFilterFocus=Si,e.NovoSimpleHeaderCell=gi,e.NovoSimpleHeaderCellDef=mi,e.NovoSimpleHeaderRow=Di,e.NovoSimpleHeaderRowDef=Pi,e.NovoSimpleRow=xi,e.NovoSimpleRowDef=Ai,e.NovoSimpleTableModule=Ui,e.NovoSimpleTablePagination=Ii,e.NovoSkeletonDirective=Ve,e.NovoSliderElement=Ki,e.NovoSliderModule=zi,e.NovoSortFilter=ii,e.NovoSpinnerElement=Ge,e.NovoStep=Zi,e.NovoStepHeader=$i,e.NovoStepLabel=ji,e.NovoStepStatus=Xi,e.NovoStepper=Yi,e.NovoStepperModule=Qi,e.NovoSwitchElement=Ct,e.NovoSwitchModule=St,e.NovoTabButtonElement=Je,e.NovoTabElement=qe,e.NovoTabLinkElement=Xe,e.NovoTabModule=nt,e.NovoTabbedGroupPickerElement=er,e.NovoTabbedGroupPickerModule=tr,e.NovoTable=Li,e.NovoTableActionsElement=cr,e.NovoTableElement=Sr,e.NovoTableExtrasModule=fr,e.NovoTableFooterElement=ur,e.NovoTableHeaderElement=mr,e.NovoTableKeepFilterFocus=ir,e.NovoTableModule=Ir,e.NovoTemplate=zt,e.NovoTemplateService=ya,e.NovoTilesElement=xn,e.NovoTilesModule=Rn,e.NovoTimePickerElement=fo,e.NovoTimePickerInputElement=vo,e.NovoTimePickerModule=bo,e.NovoTipWellElement=_a,e.NovoTipWellModule=Ga,e.NovoToastElement=Zn,e.NovoToastModule=kr,e.NovoToastService=Yn,e.NovoTooltipModule=U,e.NovoUtilActionComponent=Na,e.NovoUtilsComponent=La,e.NovoValueElement=xr,e.NovoValueModule=Rr,e.NovoVerticalStepper=Ji,e.OptionsService=aa,e.OutsideClick=$e,e.PagedArrayCollection=Cr,e.Pagination=rr,e.PercentageCell=sr,e.PickerControl=Ko,e.PickerResults=It,e.PlacesListComponent=Xa,e.PluralPipe=X,e.PopOverContent=ei,e.PopOverDirective=ti,e.QuickNoteControl=jo,e.QuickNoteElement=Ra,e.QuickNoteResults=Da,e.RadioControl=$o,e.ReadOnlyControl=Wo,e.RemoteActivityTableService=Ri,e.RemoteDataTableService=co,e.RenderPipe=Dr,e.RowDetails=lr,e.Security=Er,e.SelectControl=Zo,e.SkillsSpecialtyPickerResults=Mt,e.StaticActivityTableService=Mi,e.StaticDataTableService=qt,e.TableCell=dr,e.TableFilter=pr,e.TablePickerControl=zo,e.TextAreaControl=Yo,e.TextBoxControl=qo,e.ThOrderable=hr,e.ThSortable=gr,e.TilesControl=Jo,e.TimeControl=Xo,e.TooltipDirective=V,e.Unless=wr,e.UnlessModule=Tr,e.WeekdayPipe=Pe,e.WorkersCompCodesPickerResults=Lt,e.YearPipe=xe,e.findByCountryCode=function(e){return hn.find((function(t){return t.code===e.trim()}))},e.findByCountryId=gn,e.findByCountryName=function(e){return hn.find((function(t){return t.name===e.trim()}))},e.getCountries=function(){return hn.map((function(e){return e.name}))},e.getStateObjects=fn,e.getStates=yn,e.notify=wt,e.ɵa=Ia,e.ɵb=ca,e.ɵc=G,e.ɵd=Wt,e.ɵe=nn,e.ɵf=tn,e.ɵg=Hn,e.ɵh=Jn,e.ɵi=Un,e.ɵj=jn,e.ɵk=$n,e.ɵl=Xn,e.ɵm=Kn,e.ɵn=qn,e.ɵo=zn,e.ɵp=Wn,e.ɵq=so,e.ɵr=Io,e.ɵs=ma,e.ɵt=ha,e.ɵu=Wi,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
16
|
+
var ee=function(e,t){return(ee=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function te(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}ee(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}Object.create;function ne(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],o=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function oe(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var o,a,i=n.call(e),r=[];try{for(;(void 0===t||t-- >0)&&!(o=i.next()).done;)r.push(o.value)}catch(e){a={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(a)throw a.error}}return r}function ae(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(oe(arguments[t]));return e}Object.create;var ie=function(){function e(){}return e.prototype.transform=function(e,t){var n,o;if(!Array.isArray(e))return e;var a={};try{for(var i=ne(e),r=i.next();!r.done;r=i.next()){var s=r.value,l=F(s).have(t);R.isBlank(a[l])&&(a[l]=[]),a[l].push(s)}}catch(e){n={error:e}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(n)throw n.error}}return Object.keys(a).map((function(e){return{key:e,value:a[e]}}))},e}();ie.decorators=[{type:t.Pipe,args:[{name:"groupBy"}]}];var re=function(){};re.decorators=[{type:t.NgModule,args:[{declarations:[X,Q,ie],exports:[X,Q,ie]}]}];var se=function(){this.eventTypeClicked=new t.EventEmitter};se.decorators=[{type:t.Component,args:[{selector:"novo-event-type-legend",template:'\n <ng-template #defaultTemplate>\n <div class="cal-event-legend">\n <div class="cal-event-type"\n *ngFor="let type of events | groupBy : \'type\'"\n (click)="$event.stopPropagation(); eventTypeClicked.emit({event:type?.key})">\n <div class="cal-event-type-swatch"></div><div>{{type?.key}}</div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{events: events, eventTypeClicked: eventTypeClicked}">\n </ng-template>\n '}]}],se.propDecorators={events:[{type:t.Input}],customTemplate:[{type:t.Input}],eventTypeClicked:[{type:t.Output}]};var le=function(){function e(e){this.viewDateChange=new t.EventEmitter,this.locale=e}return e.prototype.subtractDate=function(){this.changeDate(-1)},e.prototype.addDate=function(){this.changeDate(1)},e.prototype.changeDate=function(e){var t={day:p.addDays,week:p.addWeeks,month:p.addMonths}[this.view];this.viewDateChange.emit(t(this.viewDate,e))},Object.defineProperty(e.prototype,"startOfWeek",{get:function(){return p.startOfWeek(this.viewDate)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"endOfWeek",{get:function(){return p.endOfWeek(this.viewDate)},enumerable:!1,configurable:!0}),e}();le.decorators=[{type:t.Component,args:[{selector:"novo-calendar-date-change",template:"\n <div class=\"cal-date-change\">\n <i class=\"bhi-arrow-left\" (click)=\"subtractDate()\" ></i>\n <span [ngSwitch]=\"view\">\n <span *ngSwitchCase=\"'month'\">{{ ( viewDate | month:locale ) + ' ' + ( viewDate | year:locale ) }}</span>\n <span *ngSwitchCase=\"'week'\">{{ ( startOfWeek | monthday:locale:'long' ) + ' - ' + ( endOfWeek | endofweekdisplay:startOfWeek:locale:'long' ) }}</span>\n <span *ngSwitchCase=\"'day'\">{{ ( viewDate | weekday:locale:'long' ) + ', ' + ( viewDate | month:locale ) + ' ' + ( viewDate | dayofmonth:locale ) }}</span>\n </span>\n <i class=\"bhi-arrow-right\" (click)=\"addDate()\"></i>\n </div>\n "}]}],le.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},le.propDecorators={view:[{type:t.Input}],viewDate:[{type:t.Input}],locale:[{type:t.Input}],viewDateChange:[{type:t.Output}]};var ce,de=[0,6];function pe(e){var t=e.startDate,n=e.days,o=e.excluded;if(o.length<1)return 0;for(var a=t.getDay(),i=0,r=0;r<n;r++)7===a&&(a=0),o.some((function(e){return e===a}))&&i++,a++;return i}function ue(e){var t=e.events,n=e.periodStart,o=e.periodEnd;return t.filter((function(e){return function(e){var t=e.event,n=e.periodStart,o=e.periodEnd,a=t.start,i=t.end||t.start;return a>n&&a<o||i>n&&i<o||a<n&&i>o||!(!p.isSameSecond(a,n)&&!p.isSameSecond(a,o))||!(!p.isSameSecond(i,n)&&!p.isSameSecond(i,o))}({event:e,periodStart:n,periodEnd:o})}))}function me(e,t,n){return e.filter((function(e){var o=e.start,a=e.end||o,i=p.setMinutes(p.setHours(p.startOfDay(o),t.hour),t.minute),r=p.setMinutes(p.setHours(p.startOfMinute(o),n.hour),n.minute);return p.isAfter(a,i)&&p.isBefore(o,r)}))}function he(e){var t=e.date,n=p.startOfDay(new Date);return{date:t,isPast:t<n,isToday:p.isSameDay(t,n),isFuture:t>n,isWeekend:de.indexOf(p.getDay(t))>-1}}function ge(e){for(var t=e.viewDate,n=e.weekStartsOn,o=e.excluded,a=void 0===o?[]:o,i=p.startOfWeek(t,{weekStartsOn:n}),r=[],s=function(e){var t=p.addDays(i,e);a.some((function(e){return t.getDay()===e}))||r.push(he({date:t}))},l=0;l<7;l++)s(l);return r}function fe(e){var t=e.events,n=void 0===t?[]:t,o=e.viewDate,a=e.weekStartsOn,i=e.excluded,r=void 0===i?[]:i,s=e.hourSegments,l=e.segmentHeight,c=e.dayStart,d=e.dayEnd;n||(n=[]);var u=p.startOfWeek(o,{weekStartsOn:a}),m=p.endOfWeek(o,{weekStartsOn:a}),h=7-r.length,g=me(ue({events:n,periodStart:u,periodEnd:m}),c,d).map((function(e){return{event:e,offset:function(e){var t=e.event,n=e.startOfWeek,o=e.excluded,a=void 0===o?[]:o;if(t.start<n)return 0;var i=p.differenceInDays(t.start,n);return i-pe({startDate:n,days:i,excluded:a})}({event:e,startOfWeek:u,excluded:r}),span:1}})).filter((function(e){return e.offset<h})).filter((function(e){return e.span>0})).map((function(e){return{event:e.event,offset:e.offset,span:e.span,startsBeforeWeek:e.event.start<u,endsAfterWeek:(e.event.end||e.event.start)>m,top:0}})).sort((function(e,t){var n=p.differenceInSeconds(e.event.start,t.event.start);return 0===n?p.differenceInSeconds(t.event.end||t.event.start,e.event.end||e.event.start):n})).map((function(e){var t=p.setMinutes(p.setHours(p.startOfDay(e.event.start),c.hour),c.minute),n=p.setMinutes(p.setHours(p.startOfMinute(p.endOfDay(e.event.start)),d.hour),d.minute),o=e.event.start,a=e.event.end||o,i=s*l/60;o>t&&(e.top+=p.differenceInMinutes(o,t)),e.top*=i;var r=o<t?t:o,u=a>n?n:a,m=p.differenceInMinutes(u,r);return e.event.end?m*=i:m=l,e.height=m,e})),f=[],y=[];return g.forEach((function(e,t){if(-1===y.indexOf(e)){y.push(e);var n=g.slice(t+1).filter((function(t){return t.top===e.top&&t.offset===e.offset}));if(n.length>0){var o=n.length+1;e.span=1/o;var a=e.span+e.offset;n.forEach((function(t){t.offset=a,t.span=e.span,a=t.span+t.offset})),y.push.apply(y,ae(n))}f.push({row:ae([e],n)})}})),f}function ye(e){for(var t=e.viewDate,n=e.hourSegments,o=e.dayStart,a=e.dayEnd,i=[],r=p.setMinutes(p.setHours(p.startOfDay(t),o.hour),o.minute),s=p.setMinutes(p.setHours(p.startOfMinute(p.endOfDay(t)),a.hour),a.minute),l=60/n,c=p.startOfDay(t),d=0;d<24;d++){for(var u=[],m=0;m<n;m++){var h=p.addMinutes(p.addHours(c,d),m*l);h>=r&&h<s&&u.push({date:h,isStart:0===m})}u.length>0&&i.push({segments:u})}return i}(ce=e.CalendarEventResponse||(e.CalendarEventResponse={}))[ce.Maybe=0]="Maybe",ce[ce.Accepted=1]="Accepted",ce[ce.Rejected=2]="Rejected";var ve=function(){function e(e,n){this.cdr=e,this.events=[],this.excludeDays=[],this.locale="en-US",this.tooltipPosition="top",this.dayClicked=new t.EventEmitter,this.eventClicked=new t.EventEmitter,this.eventTimesChanged=new t.EventEmitter,this.viewDateChange=new t.EventEmitter,this.locale=n}return e.prototype.ngOnInit=function(){var e=this;this.refresh&&(this.refreshSubscription=this.refresh.subscribe((function(){e.refreshAll(),e.cdr.markForCheck()})))},e.prototype.ngOnChanges=function(e){(e.viewDate||e.excludeDays)&&this.refreshHeader(),(e.viewDate||e.events||e.excludeDays)&&this.refreshBody()},e.prototype.ngOnDestroy=function(){this.refreshSubscription&&this.refreshSubscription.unsubscribe()},e.prototype.eventDropped=function(e,t){var n,o=p.getYear(e.date),a=p.getMonth(e.date),i=p.getDate(e.date),r=p.setYear(p.setMonth(p.setDate(t.start,i),a),o);if(t.end){var s=p.differenceInSeconds(r,t.start);n=p.addSeconds(t.end,s)}this.eventTimesChanged.emit({event:t,newStart:r,newEnd:n})},e.prototype.refreshHeader=function(){this.columnHeaders=ge({viewDate:this.viewDate,weekStartsOn:this.weekStartsOn,excluded:this.excludeDays})},e.prototype.refreshBody=function(){var e=this;this.view=function(e){var t=e.events,n=void 0===t?[]:t,o=e.viewDate,a=e.weekStartsOn,i=e.excluded,r=void 0===i?[]:i;n||(n=[]);for(var s=p.startOfWeek(p.startOfMonth(o),{weekStartsOn:a}),l=p.endOfWeek(p.endOfMonth(o),{weekStartsOn:a}),c=ue({events:n,periodStart:s,periodEnd:l}),d=[],u=function(e){var t=p.addDays(s,e);if(!r.some((function(e){return t.getDay()===e}))){var n=he({date:t}),a=ue({events:c,periodStart:p.startOfDay(t),periodEnd:p.endOfDay(t)});n.inMonth=p.isSameMonth(t,o),n.events=a,n.badgeTotal=a.length,d.push(n)}},m=0;m<p.differenceInDays(l,s)+1;m++)u(m);var h=7-r.length,g=Math.floor(d.length/h),f=[];for(m=0;m<g;m++)f.push(m*h);return{rowOffsets:f,totalDaysVisibleInWeek:h,days:d}}({events:this.events,viewDate:this.viewDate,weekStartsOn:this.weekStartsOn,excluded:this.excludeDays}),this.dayModifier&&this.view.days.forEach((function(t){return e.dayModifier(t)}))},e.prototype.refreshAll=function(){this.refreshHeader(),this.refreshBody(),this.viewDateChange.emit(this.viewDate)},e}();ve.decorators=[{type:t.Component,args:[{selector:"novo-calendar-month",template:'\n <div class="calendar-month-view">\n <novo-calendar-month-header\n [(viewDate)]="viewDate"\n [days]="columnHeaders"\n [locale]="locale"\n [customTemplate]="headerTemplate"\n (viewDateChange)="refreshAll()">\n </novo-calendar-month-header>\n <div class="calendar-days">\n <div *ngFor="let rowIndex of view.rowOffsets">\n <div class="calendar-cell-row">\n <novo-calendar-month-day\n *ngFor="let day of view.days | slice : rowIndex : rowIndex + (view.totalDaysVisibleInWeek)"\n [day]="day"\n [locale]="locale"\n [customTemplate]="cellTemplate"\n (click)="dayClicked.emit({day: day})"\n (eventClicked)="eventClicked.emit({ day: day, event: $event.event})">\n </novo-calendar-month-day>\n </div>\n </div>\n </div>\n </div>\n '}]}],ve.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},ve.propDecorators={viewDate:[{type:t.Input}],events:[{type:t.Input}],excludeDays:[{type:t.Input}],dayModifier:[{type:t.Input}],refresh:[{type:t.Input}],locale:[{type:t.Input}],tooltipPosition:[{type:t.Input}],weekStartsOn:[{type:t.Input}],headerTemplate:[{type:t.Input}],cellTemplate:[{type:t.Input}],dayClicked:[{type:t.Output}],eventClicked:[{type:t.Output}],eventTimesChanged:[{type:t.Output}],viewDateChange:[{type:t.Output}]};var be=function(){function e(){this.viewDateChange=new t.EventEmitter}return e.prototype.prevMonth=function(e){this.viewDateChange.emit(p.subMonths(this.viewDate,1))},e.prototype.nextMonth=function(e){this.viewDateChange.emit(p.addMonths(this.viewDate,1))},e}();be.decorators=[{type:t.Component,args:[{selector:"novo-calendar-month-header",template:'\n <ng-template #defaultTemplate>\n <div class="calendar-header">\n <div class="calendar-header-top">\n <button theme="icon" icon="previous" (click)="prevMonth($event)"></button>\n <div class="calendar-month">{{ viewDate | month:locale }}</div>\n <button theme="icon" icon="next" (click)="nextMonth($event)"></button>\n </div>\n <div class="calendar-weekdays">\n <div\n class="calendar-weekday"\n *ngFor="let day of days"\n [class.calendar-past]="day.isPast"\n [class.calendar-today]="day.isToday"\n [class.calendar-future]="day.isFuture"\n [class.calendar-weekend]="day.isWeekend">\n {{ day.date | weekday:locale }}\n </div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{days: days, locale: locale, viewDate: viewDate}">\n </ng-template>\n '}]}],be.propDecorators={viewDate:[{type:t.Input}],days:[{type:t.Input}],locale:[{type:t.Input}],customTemplate:[{type:t.Input}],viewDateChange:[{type:t.Output}]};var Ce=function(){function n(){this.eventClicked=new t.EventEmitter}return Object.defineProperty(n.prototype,"accepted",{get:function(){return this.day?this.day.events.filter((function(t){return t.response===e.CalendarEventResponse.Accepted})):[]},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"rejected",{get:function(){return this.day?this.day.events.filter((function(t){return t.response===e.CalendarEventResponse.Rejected})):[]},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"maybes",{get:function(){return this.day?this.day.events.filter((function(t){return t.response===e.CalendarEventResponse.Maybe})):[]},enumerable:!1,configurable:!0}),n}();Ce.decorators=[{type:t.Component,args:[{selector:"novo-calendar-month-day",template:'\n <ng-template #defaultTemplate>\n <div class="calendar-day-top">\n <span class="calendar-day-badge" *ngIf="day.badgeTotal > 0">{{ day.badgeTotal }}</span>\n <span class="calendar-day-number">{{ day.date | dayofmonth:locale }}</span>\n </div>\n <div class="calendar-events">\n <div\n class="calendar-event"\n *ngFor="let type of day.events | groupBy : \'type\'"\n [style.backgroundColor]="type?.value[0]?.color.primary"\n [ngClass]="type?.value[0]?.cssClass"\n (click)="$event.stopPropagation(); eventClicked.emit({event:type?.value[0]})">\n {{type?.value.length}}\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{\n day: day,\n locale: locale,\n tooltipPosition: tooltipPosition,\n eventClicked: eventClicked,\n accepted: accepted,\n rejected: rejected,\n maybes: maybes\n }">\n </ng-template>\n ',host:{"[class]":'"calendar-cell calendar-day-cell " + day?.cssClass',"[class.calendar-day-accepted]":"accepted.length","[class.calendar-day-rejected]":"rejected.length","[class.calendar-past]":"day.isPast","[class.calendar-today]":"day.isToday","[class.calendar-future]":"day.isFuture","[class.calendar-weekend]":"day.isWeekend","[class.calendar-in-month]":"day.inMonth","[class.calendar-out-month]":"!day.inMonth","[class.calendar-has-events]":"day.events.length > 0","[style.backgroundColor]":"day.backgroundColor"}}]}],Ce.propDecorators={day:[{type:t.Input}],locale:[{type:t.Input}],tooltipPosition:[{type:t.Input}],customTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}]};var Se=function(){function e(e,n){this.cdr=e,this.events=[],this.excludeDays=[],this.tooltipPosition="bottom",this.precision="days",this.hourSegments=2,this.dayStartHour=0,this.dayStartMinute=0,this.dayEndHour=23,this.dayEndMinute=59,this.hourSegmentClicked=new t.EventEmitter,this.dayClicked=new t.EventEmitter,this.eventClicked=new t.EventEmitter,this.eventTimesChanged=new t.EventEmitter,this.hours=[],this.eventRows=[],this.locale=n}return e.prototype.ngOnInit=function(){var e=this;this.refresh&&(this.refreshSubscription=this.refresh.subscribe((function(){e.refreshAll(),e.cdr.detectChanges()})))},e.prototype.ngOnChanges=function(e){(e.viewDate||e.excludeDays)&&this.refreshHeader(),(e.events||e.viewDate||e.excludeDays)&&this.refreshBody(),(e.viewDate||e.dayStartHour||e.dayStartMinute||e.dayEndHour||e.dayEndMinute)&&this.refreshHourGrid()},e.prototype.ngOnDestroy=function(){this.refreshSubscription&&this.refreshSubscription.unsubscribe()},e.prototype.getDayColumnWidth=function(e){return Math.floor(e.offsetWidth/this.days.length)},e.prototype.refreshHeader=function(){this.days=ge({viewDate:this.viewDate,weekStartsOn:this.weekStartsOn,excluded:this.excludeDays})},e.prototype.refreshBody=function(){this.eventRows=fe({events:this.events,viewDate:this.viewDate,weekStartsOn:this.weekStartsOn,excluded:this.excludeDays,hourSegments:this.hourSegments,segmentHeight:30,dayStart:{hour:this.dayStartHour,minute:this.dayStartMinute},dayEnd:{hour:this.dayEndHour,minute:this.dayEndMinute}})},e.prototype.refreshHourGrid=function(){this.hours=ye({viewDate:this.viewDate,hourSegments:this.hourSegments,dayStart:{hour:this.dayStartHour,minute:this.dayStartMinute},dayEnd:{hour:this.dayEndHour,minute:this.dayEndMinute}})},e.prototype.refreshAll=function(){this.refreshHeader(),this.refreshHourGrid(),this.refreshBody()},e}();Se.decorators=[{type:t.Component,args:[{selector:"novo-calendar-week",template:'\n <div class="cal-week-view" #weekViewContainer>\n <novo-calendar-week-header\n [days]="days"\n [locale]="locale"\n [customTemplate]="headerTemplate"\n (dayClicked)="dayClicked.emit($event)">\n </novo-calendar-week-header>\n <div *ngFor="let eventRow of eventRows" #eventRowContainer>\n <div\n class="cal-event-container"\n #event\n *ngFor="let weekEvent of eventRow.row"\n [style.width]="((100 / days.length) * weekEvent.span) + \'%\'"\n [style.marginTop.px]="weekEvent.top"\n [style.height.px]="weekEvent.height"\n [style.marginLeft]="((100 / days.length) * weekEvent.offset) + \'%\'">\n <novo-calendar-week-event\n [weekEvent]="weekEvent"\n [tooltipPosition]="tooltipPosition"\n [customTemplate]="eventTemplate"\n (eventClicked)="eventClicked.emit($event)">\n </novo-calendar-week-event>\n </div>\n </div>\n <div class="cal-hour" *ngFor="let hour of hours" [style.minWidth.px]="70">\n <novo-calendar-day-hour-segment\n *ngFor="let segment of hour.segments"\n [segment]="segment"\n [locale]="locale"\n [customTemplate]="hourSegmentTemplate"\n (click)="hourSegmentClicked.emit({date: segment.date})">\n </novo-calendar-day-hour-segment>\n </div>\n </div>\n '}]}],Se.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},Se.propDecorators={viewDate:[{type:t.Input}],events:[{type:t.Input}],excludeDays:[{type:t.Input}],refresh:[{type:t.Input}],locale:[{type:t.Input}],tooltipPosition:[{type:t.Input}],weekStartsOn:[{type:t.Input}],headerTemplate:[{type:t.Input}],eventTemplate:[{type:t.Input}],precision:[{type:t.Input}],hourSegments:[{type:t.Input}],dayStartHour:[{type:t.Input}],dayStartMinute:[{type:t.Input}],dayEndHour:[{type:t.Input}],dayEndMinute:[{type:t.Input}],hourSegmentTemplate:[{type:t.Input}],hourSegmentClicked:[{type:t.Output}],dayClicked:[{type:t.Output}],eventClicked:[{type:t.Output}],eventTimesChanged:[{type:t.Output}]};var ke=function(){this.dayClicked=new t.EventEmitter,this.eventDropped=new t.EventEmitter};ke.decorators=[{type:t.Component,args:[{selector:"novo-calendar-week-header",template:'\n <ng-template #defaultTemplate>\n <div class="cal-day-headers">\n <div\n class="cal-header"\n *ngFor="let day of days"\n [class.cal-past]="day.isPast"\n [class.cal-today]="day.isToday"\n [class.cal-future]="day.isFuture"\n [class.cal-weekend]="day.isWeekend"\n [class.cal-drag-over]="day.dragOver"\n (click)="dayClicked.emit({date: day.date})"\n mwlDroppable\n (dragEnter)="day.dragOver = true"\n (dragLeave)="day.dragOver = false"\n (drop)="day.dragOver = false; eventDropped.emit({event: $event.dropData.event, newStart: day.date})">\n <b>{{ day.date | weekday:locale:\'long\'}}</b><br>\n <span>{{ day.date | monthday:locale }}</span>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{days: days, locale: locale, dayClicked: dayClicked, eventDropped: eventDropped}">\n </ng-template>\n '}]}],ke.propDecorators={days:[{type:t.Input}],locale:[{type:t.Input}],customTemplate:[{type:t.Input}],dayClicked:[{type:t.Output}],eventDropped:[{type:t.Output}]};var Ie=function(){this.eventClicked=new t.EventEmitter};Ie.decorators=[{type:t.Component,args:[{selector:"novo-calendar-week-event",template:'\n <ng-template #defaultTemplate>\n <div\n class="cal-event"\n [class.cal-starts-within-week]="!weekEvent.startsBeforeWeek"\n [class.cal-ends-within-week]="!weekEvent.endsAfterWeek"\n [ngClass]="weekEvent.event?.cssClass"\n [tooltip]="weekEvent.event.description"\n [tooltipPosition]="tooltipPosition"\n (click)="eventClicked.emit({event: weekEvent.event})">\n <div class="cal-event-ribbon" [style.backgroundColor]="weekEvent.event.color.primary"></div>\n <div class="cal-event-title">{{weekEvent.event?.title}}</div>\n <div class="cal-event-description">{{weekEvent.event?.description}}</div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{weekEvent: weekEvent, tooltipPosition: tooltipPosition, eventClicked: eventClicked}">\n </ng-template>\n '}]}],Ie.propDecorators={weekEvent:[{type:t.Input}],tooltipPosition:[{type:t.Input}],customTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}]};var Ee=function(){function e(e,n){this.cdr=e,this.events=[],this.hourSegments=2,this.dayStartHour=0,this.dayStartMinute=0,this.dayEndHour=23,this.dayEndMinute=59,this.eventWidth=150,this.eventSnapSize=30,this.tooltipPosition="top",this.eventClicked=new t.EventEmitter,this.hourSegmentClicked=new t.EventEmitter,this.eventTimesChanged=new t.EventEmitter,this.hours=[],this.width=0,this.locale=n}return e.prototype.ngOnInit=function(){var e=this;this.refresh&&(this.refreshSubscription=this.refresh.subscribe((function(){e.refreshAll(),e.cdr.detectChanges()})))},e.prototype.ngOnDestroy=function(){this.refreshSubscription&&this.refreshSubscription.unsubscribe()},e.prototype.ngOnChanges=function(e){(e.viewDate||e.dayStartHour||e.dayStartMinute||e.dayEndHour||e.dayEndMinute)&&this.refreshHourGrid(),(e.viewDate||e.events||e.dayStartHour||e.dayStartMinute||e.dayEndHour||e.dayEndMinute||e.eventWidth)&&this.refreshView()},e.prototype.refreshHourGrid=function(){var e=this;this.hours=ye({viewDate:this.viewDate,hourSegments:this.hourSegments,dayStart:{hour:this.dayStartHour,minute:this.dayStartMinute},dayEnd:{hour:this.dayEndHour,minute:this.dayEndMinute}}),this.hourSegmentModifier&&this.hours.forEach((function(t){t.segments.forEach((function(t){return e.hourSegmentModifier(t)}))}))},e.prototype.refreshView=function(){this.view=function(e){var t=e.events,n=void 0===t?[]:t,o=e.viewDate,a=e.hourSegments,i=e.dayStart,r=e.dayEnd,s=e.eventWidth,l=e.segmentHeight;n||(n=[]);var c=p.setMinutes(p.setHours(p.startOfDay(o),i.hour),i.minute),d=p.setMinutes(p.setHours(p.startOfMinute(p.endOfDay(o)),r.hour),r.minute),u=[],m=me(ue({events:n.filter((function(e){return!e.allDay})),periodStart:c,periodEnd:d}),i,r).sort((function(e,t){return e.start.valueOf()-t.start.valueOf()})).map((function(e){var t=e.start,n=e.end||t,o=t<c,i=n>d,r=a*l/60,m=0;t>c&&(m+=p.differenceInMinutes(t,c)),m*=r;var h=o?c:t,g=i?d:n,f=p.differenceInMinutes(g,h);e.end?f*=r:f=l;for(var y=m+f,v=u.filter((function(e){var t=e.top,n=e.top+e.height;return m<n&&n<y||t<=m&&y<=n})),b=0;v.some((function(e){return e.left===b}));)b+=s;var C={event:e,height:f,width:s,top:m,left:b,startsBeforeDay:o,endsAfterDay:i};return f>0&&u.push(C),C})).filter((function(e){return e.height>0})),h=Math.max.apply(Math,ae(m.map((function(e){return e.left+e.width}))));return{events:m,width:h,allDayEvents:ue({events:n.filter((function(e){return e.allDay})),periodStart:p.startOfDay(c),periodEnd:p.endOfDay(d)})}}({events:this.events,viewDate:this.viewDate,hourSegments:this.hourSegments,dayStart:{hour:this.dayStartHour,minute:this.dayStartMinute},dayEnd:{hour:this.dayEndHour,minute:this.dayEndMinute},eventWidth:this.eventWidth,segmentHeight:30})},e.prototype.refreshAll=function(){this.refreshHourGrid(),this.refreshView()},e}();Ee.decorators=[{type:t.Component,args:[{selector:"novo-calendar-day",template:'\n <div class="cal-day-view" #dayViewContainer>\n <novo-calendar-all-day-event\n *ngFor="let event of view.allDayEvents"\n [event]="event"\n [customTemplate]="allDayEventTemplate"\n (eventClicked)="eventClicked.emit({event: event})">\n </novo-calendar-all-day-event>\n <div class="cal-hour-rows">\n <div class="cal-events">\n <div\n #event\n *ngFor="let dayEvent of view?.events"\n class="cal-event-container"\n [style.marginTop.px]="dayEvent.top"\n [style.height.px]="dayEvent.height"\n [style.marginLeft.px]="dayEvent.left + 70"\n [style.width.px]="dayEvent.width - 1">\n <novo-calendar-day-event\n [dayEvent]="dayEvent"\n [tooltipPosition]="tooltipPosition"\n [customTemplate]="eventTemplate"\n (eventClicked)="eventClicked.emit($event)">\n </novo-calendar-day-event>\n </div>\n </div>\n <div class="cal-hour" *ngFor="let hour of hours" [style.minWidth.px]="view?.width + 70">\n <novo-calendar-day-hour-segment\n *ngFor="let segment of hour.segments"\n [segment]="segment"\n [locale]="locale"\n [customTemplate]="hourSegmentTemplate"\n (click)="hourSegmentClicked.emit({date: segment.date})">\n </novo-calendar-day-hour-segment>\n </div>\n </div>\n </div>\n '}]}],Ee.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},Ee.propDecorators={viewDate:[{type:t.Input}],events:[{type:t.Input}],hourSegments:[{type:t.Input}],dayStartHour:[{type:t.Input}],dayStartMinute:[{type:t.Input}],dayEndHour:[{type:t.Input}],dayEndMinute:[{type:t.Input}],eventWidth:[{type:t.Input}],refresh:[{type:t.Input}],locale:[{type:t.Input}],hourSegmentModifier:[{type:t.Input}],eventSnapSize:[{type:t.Input}],tooltipPosition:[{type:t.Input}],hourSegmentTemplate:[{type:t.Input}],allDayEventTemplate:[{type:t.Input}],eventTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}],hourSegmentClicked:[{type:t.Output}],eventTimesChanged:[{type:t.Output}]};var we=function(){this.eventClicked=new t.EventEmitter};we.decorators=[{type:t.Component,args:[{selector:"novo-calendar-day-event",template:'\n <ng-template #defaultTemplate>\n <div\n class="cal-event"\n [style.borderColor]="dayEvent.event.color.secondary"\n [class.cal-starts-within-day]="!dayEvent.startsBeforeDay"\n [class.cal-ends-within-day]="!dayEvent.endsAfterDay"\n [ngClass]="dayEvent.event.cssClass"\n [tooltip]="dayEvent.event.description"\n [tooltipPosition]="tooltipPosition"\n (click)="eventClicked.emit({event: dayEvent.event})">\n <div class="cal-event-ribbon" [style.backgroundColor]="dayEvent.event.color.primary"></div>\n <div class="cal-event-group">\n <div class="cal-event-title">{{dayEvent.event.title}}</div>\n <div class="cal-event-description">{{dayEvent.event?.description}}</div>\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{dayEvent: dayEvent, tooltipPosition: tooltipPosition, eventClicked: eventClicked}">\n </ng-template>\n '}]}],we.propDecorators={dayEvent:[{type:t.Input}],tooltipPosition:[{type:t.Input}],customTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}]};var Te=function(){};Te.decorators=[{type:t.Component,args:[{selector:"novo-calendar-day-hour-segment",template:'\n <ng-template #defaultTemplate>\n <div\n class="cal-hour-segment"\n [class.cal-hour-start]="segment.isStart"\n [class.cal-after-hour-start]="!segment.isStart"\n [ngClass]="segment.cssClass">\n <div class="cal-time">\n {{ segment.date | hours:locale }}\n </div>\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{\n segment: segment,\n locale: locale\n }">\n </ng-template>\n '}]}],Te.propDecorators={segment:[{type:t.Input}],locale:[{type:t.Input}],customTemplate:[{type:t.Input}]};var Oe=function(){this.eventClicked=new t.EventEmitter};Oe.decorators=[{type:t.Component,args:[{selector:"novo-calendar-all-day-event",template:'\n <ng-template #defaultTemplate>\n <div\n class="cal-all-day-event"\n [style.backgroundColor]="event.color.secondary"\n [style.borderColor]="event.color.primary">\n {{event.title}}\n \x3c!--<novo-calendar-event-title\n [event]="event"\n view="day"\n (click)="eventClicked.emit()">\n </novo-calendar-event-title>\n <novo-calendar-event-actions [event]="event"></novo-calendar-event-actions>--\x3e\n </div>\n </ng-template>\n <ng-template\n [ngTemplateOutlet]="customTemplate || defaultTemplate"\n [ngTemplateOutletContext]="{\n event: event,\n eventClicked: eventClicked\n }">\n </ng-template>\n '}]}],Oe.propDecorators={event:[{type:t.Input}],customTemplate:[{type:t.Input}],eventClicked:[{type:t.Output}]};var Pe=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="short"),new Intl.DateTimeFormat(t,{weekday:n}).format(e)},e}();Pe.decorators=[{type:t.Pipe,args:[{name:"weekday"}]}],Pe.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Ae=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="long"),new Intl.DateTimeFormat(t,{month:n}).format(e)},e}();Ae.decorators=[{type:t.Pipe,args:[{name:"month"}]}],Ae.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var De=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="short"),new Intl.DateTimeFormat(t,{month:n,day:"numeric"}).format(e)},e}();De.decorators=[{type:t.Pipe,args:[{name:"monthday"}]}],De.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var xe=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="numeric"),new Intl.DateTimeFormat(t,{year:n}).format(e)},e}();xe.decorators=[{type:t.Pipe,args:[{name:"year"}]}],xe.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Re=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="numeric"),new Intl.DateTimeFormat(t,{hour:n}).format(e)},e}();Re.decorators=[{type:t.Pipe,args:[{name:"hours"}]}],Re.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Me=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n){return void 0===t&&(t=this.locale),void 0===n&&(n="numeric"),new Intl.DateTimeFormat(t,{day:n}).format(e)},e}();Me.decorators=[{type:t.Pipe,args:[{name:"dayofmonth"}]}],Me.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Fe=function(){function e(e){void 0===e&&(e="en-US"),this.locale=e}return e.prototype.transform=function(e,t,n,o){return void 0===n&&(n=this.locale),void 0===o&&(o="short"),e.getMonth()===t.getMonth()?new Intl.DateTimeFormat(n,{day:"numeric"}).format(e):new Intl.DateTimeFormat(n,{month:o,day:"numeric"}).format(e)},e}();Fe.decorators=[{type:t.Pipe,args:[{name:"endofweekdisplay"}]}],Fe.ctorParameters=function(){return[{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Le=function(){};Le.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_,U,re],declarations:[se,ve,be,Ce,Se,ke,Ie,Ee,we,Te,Oe,le,Pe,Me,Ae,De,xe,Re,Fe],exports:[se,ve,be,Ce,Se,ke,Ie,Ee,we,Te,Oe,le,Pe,Me,Ae,De,xe,Re,Fe]}]}];var Ne=function(){function e(e){void 0===e&&(e="en-US"),this.userLocale=e,this.filters="Filter",this.clear="Clear",this.sort="Sort",this.distributionListOwner="Owner",this.dateAdded="Date Added",this.emptyTableMessage="No Records to display...",this.noMatchingRecordsMessage="No Matching Records",this.erroredTableMessage="Oops! An error occurred.",this.pickerError="Oops! An error occurred.",this.pickerTextFieldEmpty="Begin typing to see results.",this.pickerEmpty="No results to display...",this.tabbedGroupPickerEmpty="No results found",this.quickNoteError="Oops! An error occurred.",this.quickNoteEmpty="No results to display...",this.required="Required",this.numberTooLarge="Number is too large",this.save="Save",this.cancel="Cancel",this.next="Next",this.itemsPerPage="Items per page:",this.select="Select...",this.selected="Selected",this.selectAllOnPage="Select all on page",this.deselectAll="Deselect all",this.refresh="Refresh",this.close="Close",this.move="Move",this.startDate="Start Date",this.endDate="End Date",this.rate="Rate",this.more="more",this.clearAll="CLEAR ALL",this.clearAllNormalCase="Clear All",this.clearSort="Clear Sort",this.clearFilter="Clear Filter",this.clearSelected="Clear Selected",this.today="Today",this.now="Now",this.isRequired="is required",this.notValidYear="is not a valid year",this.isTooLarge="is too large",this.invalidAddress="requires at least one field filled out",this.invalidEmail="requires a valid email (ex. abc@123.com)",this.minLength="is required to be a minimum length of",this.past1Day="Past 1 Day",this.past7Days="Past 7 Days",this.past30Days="Past 30 Days",this.past90Days="Past 90 Days",this.past1Year="Past 1 Year",this.next1Day="Next 1 Day",this.next7Days="Next 7 Days",this.next30Days="Next 30 Days",this.next90Days="Next 90 Days",this.next1Year="Next 1 Year",this.customDateRange="Custom Date Range",this.backToPresetFilters="Back to Preset Filters",this.okGotIt="Ok, Got it",this.address="Address",this.address1="Address",this.apt="Apt",this.address2="Apt",this.city="City / Locality",this.state="State / Region",this.zip="Postal Code",this.zipCode="Postal Code",this.country="Country",this.or="or",this.clickToBrowse="click to browse",this.chooseAFile="Choose a file",this.no="No",this.yes="Yes",this.search="SEARCH",this.noItems="There are no items",this.dateFormat="MM/dd/yyyy",this.dateFormatPlaceholder="MM/DD/YYYY",this.timeFormatPlaceholderAM="hh:mm AM",this.timeFormatPlaceholder24Hour="HH:mm",this.timeFormatAM="AM",this.timeFormatPM="PM",this.confirmChangesModalMessage="Are you sure you want to change this field?",this.promptModalMessage="Do you want to perform the following changes?",this.asyncFailure="Async validation was not called within the 10s threshold, you might want to reload the page to try again",this.previous="Previous",this.actions="Actions",this.all="All",this.groupedMultiPickerEmpty="No items to display",this.groupedMultiPickerSelectCategory="Select a category from the left to get started",this.add="Add",this.encryptedFieldTooltip="This data has been stored at the highest level of security",this.noStatesForCountry="No states available for the selected country",this.selectCountryFirst="Please select a country before selecting a state",this.invalidIntegerInput="Special characters are not allowed for",this.maxRecordsReached="Sorry, you have reached the maximum number of records allowed for this field",this.selectFilterOptions="Please select one or more filter options below."}return e.prototype.maxlengthMetWithField=function(e,t){return"Sorry, you have reached the maximum character count of "+t+" for "+e+"."},e.prototype.maxlengthMet=function(e){return"Sorry, you have reached the maximum character count of "+e+" for this field."},e.prototype.invalidMaxlengthWithField=function(e,t){return"Sorry, you have exceeded the maximum character count of "+t+" for "+e+"."},e.prototype.invalidMaxlength=function(e){return"Sorry, you have exceeded the maximum character count of "+e+" for this field."},e.prototype.getToManyPlusMore=function(e){return"+"+e.quantity+" more"},e.prototype.selectedRecords=function(e){return e+" records are selected."},e.prototype.showingXofXResults=function(e,t){return"Showing "+e+" of "+t+" Results."},e.prototype.totalRecords=function(e,t){return void 0===t&&(t=!1),t?"Select all "+e+" records.":"De-select remaining "+e+" records."},e.prototype.dateFormatString=function(){return this.dateFormat},e.prototype.tabbedGroupClearSuggestion=function(e){return"Clear your search to see all "+e+"."},e.prototype.formatDateWithFormat=function(e,t){var n=e instanceof Date?e:new Date(e);return n.getTime()!=n.getTime()?e:new Intl.DateTimeFormat(this.userLocale,t).format(n)},e.prototype.formatToTimeOnly=function(e){},e.prototype.formatToDateOnly=function(e){},e.prototype.formatTimeWithFormat=function(e,t){var n=e instanceof Date?e:new Date(e);if(n.getTime()!=n.getTime())return e;var o=Intl.DateTimeFormat(this.userLocale,t).formatToParts(n).reduce((function(e,t){return e[t.type]=t.value,e}),{}),a=o.dayperiod?o.dayperiod:"";return o.hour+":"+o.minute+a},e.prototype.getWeekdays=function(){var e=this;function t(e){var t=new Date;return t.setDate(t.getDate()-t.getDay()+e)}return[t(0),t(1),t(2),t(3),t(4),t(5),t(6)].reduce((function(t,n){return t.push(new Intl.DateTimeFormat(e.userLocale,{weekday:"long"}).format(n)),t}),[])},e.prototype.getMonths=function(){var e=this;function t(e){return(new Date).setMonth(e,1)}return[t(0),t(1),t(2),t(3),t(4),t(5),t(6),t(7),t(8),t(9),t(10),t(11)].reduce((function(t,n){return t.push(new Intl.DateTimeFormat(e.userLocale,{month:"long"}).format(n)),t}),[])},e.prototype.getProperty=function(e){return this[e]},e.prototype.getRangeText=function(e,t,n,o){if(0===n||0===t)return"Displaying 0 of "+n;var a=e*t,i=a<(n=Math.max(n,0))?Math.min(a+t,n):a+t;return o?a+1+" - "+i+"/"+n:"Displaying "+(a+1)+" - "+i+" of "+n},e.prototype.formatCurrency=function(e){return new Intl.NumberFormat(this.userLocale,{style:"currency",currency:"USD"}).format(e)},e.prototype.formatBigDecimal=function(e,t){var n=Object.assign({style:"decimal",minimumFractionDigits:2,maximumFractionDigits:2,useAccountingFormat:!0},t),o=this.truncateToPrecision(e,n.maximumFractionDigits),a=new Intl.NumberFormat(this.userLocale,n).format(o);return e<0&&(a=n.useAccountingFormat?"("+a.slice(1)+")":"-"+a.slice(1)),a},e.prototype.truncateToPrecision=function(e,t){var n=e?e.toString():"0",o=n.indexOf(".");return o>-1&&o+t+1<n.length&&(n=n.substring(0,n.indexOf(".")+t+1)),Number(n)},e.prototype.formatNumber=function(e,t){return new Intl.NumberFormat(this.userLocale,t).format(e)},e.prototype.formatDateShort=function(e){var t=null==e||""===e?new Date:new Date(e);return new Intl.DateTimeFormat(this.userLocale,{month:"2-digit",day:"2-digit",year:"numeric",hour:"numeric",minute:"2-digit"}).format(t)},e.prototype.formatTime=function(e){var t=null==e||""===e?new Date:new Date(e);return new Intl.DateTimeFormat(this.userLocale,{hour:"numeric",minute:"2-digit"}).format(t)},e.prototype.formatDate=function(e){var t=null==e||""===e?new Date:new Date(e);return new Intl.DateTimeFormat(this.userLocale,{month:"2-digit",day:"2-digit",year:"numeric"}).format(t)},e}();Ne.decorators=[{type:t.Injectable}],Ne.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[t.LOCALE_ID]}]}]};var Be=function(){};Be.decorators=[{type:t.Component,args:[{selector:"novo-card-actions",template:"<ng-content></ng-content>"}]}];var He=function(){function e(e){this.padding=!0,this.config={},this.onClose=new t.EventEmitter,this.onRefresh=new t.EventEmitter,this.labels=e}return e.prototype.ngOnInit=function(){this.config=this.config||{}},e.prototype.ngOnChanges=function(e){this.config=this.config||{},this.cardAutomationId=(this.title||this.config.title||"no-title").toLowerCase().replace(/\s/g,"-")+"-card";var t=this.icon||this.config.icon,n=this.messageIcon||this.config.messageIcon;this.iconClass=t?"bhi-"+t:null,this.messageIconClass=n?"bhi-"+n:null},e.prototype.toggleClose=function(){this.config.onClose?this.config.onClose():this.onClose.next()},e.prototype.toggleRefresh=function(){this.config.onRefresh?this.config.onRefresh():this.onRefresh.next()},e}();He.decorators=[{type:t.Component,args:[{selector:"novo-card",template:'\n <div class="novo-card" [attr.data-automation-id]="cardAutomationId" [ngClass]="{\'no-padding\': !padding}" [class.loading]="loading || config.loading">\n \x3c!--Loading--\x3e\n <div class="card-loading-container" *ngIf="loading || config.loading">\n <novo-loading theme="line" [attr.data-automation-id]="cardAutomationId + \'-loading\'"></novo-loading>\n </div>\n \x3c!--Card Header--\x3e\n <header>\n <div class="title">\n \x3c!--Grabber Icon--\x3e\n <span tooltip="{{ labels.move }}" tooltipPosition="bottom-right"><i *ngIf="move || config.move" class="bhi-move" [attr.data-automation-id]="cardAutomationId + \'-move\'"></i></span>\n \x3c!--Card Title--\x3e\n <h3 [attr.data-automation-id]="cardAutomationId + \'-title\'"><span [tooltip]="iconTooltip" tooltipPosition="right"><i *ngIf="icon" [ngClass]="iconClass"></i></span> {{title || config.title}}</h3>\n </div>\n \x3c!--Card Actions--\x3e\n <div class="actions" [attr.data-automation-id]="cardAutomationId + \'-actions\'">\n <ng-content select="novo-card-actions"></ng-content>\n <button theme="icon" icon="refresh" (click)="toggleRefresh()" *ngIf="refresh || config.refresh" [attr.data-automation-id]="cardAutomationId + \'-refresh\'" tooltip="{{ labels.refresh }}" tooltipPosition="bottom-left"></button>\n <button theme="icon" icon="close-o" (click)="toggleClose()" *ngIf="close || config.close" [attr.data-automation-id]="cardAutomationId + \'-close\'" tooltip="{{ labels.close }}" tooltipPosition="bottom-left"></button>\n </div>\n </header>\n \x3c!--Card Main--\x3e\n <main>\n \x3c!--Content (transcluded)--\x3e\n <ng-content *ngIf="!(loading || config.loading) && !(message || config.message)"></ng-content>\n \x3c!--Error/Empty Message--\x3e\n <p class="card-message" *ngIf="!(loading || config.loading) && (message || config.message)" [attr.data-automation-id]="cardAutomationId + \'-message\'"><i *ngIf="messageIconClass" [ngClass]="messageIconClass"></i> <span [innerHtml]="message || config.message"></span></p>\n </main>\n \x3c!--Card Footer--\x3e\n <ng-content *ngIf="!(loading || config.loading) && !(message || config.message)" select="footer"></ng-content>\n </div>\n '}]}],He.ctorParameters=function(){return[{type:Ne}]},He.propDecorators={padding:[{type:t.Input}],config:[{type:t.Input}],title:[{type:t.Input}],message:[{type:t.Input}],messageIcon:[{type:t.Input}],icon:[{type:t.Input}],iconTooltip:[{type:t.Input}],refresh:[{type:t.Input}],close:[{type:t.Input}],move:[{type:t.Input}],loading:[{type:t.Input}],onClose:[{type:t.Output}],onRefresh:[{type:t.Output}]};var _e=function(){};_e.decorators=[{type:t.Component,args:[{selector:"novo-loading",host:{"[class]":'theme || ""'},template:'\n <span class="dot"></span>\n <span class="dot"></span>\n <span class="dot"></span>\n <span class="dot"></span>\n <span class="dot"></span>\n '}]}],_e.propDecorators={theme:[{type:t.Input}]};var Ge=function(){};Ge.decorators=[{type:t.Component,args:[{selector:"novo-spinner",template:'\n <svg class="bullhornSpinner" [ngClass]="theme" height="100" width="100" viewBox="0 0 100 100" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" [attr.inverse]="inverse">\n <title>Bullhorn Spinner Animation</title>\n <desc>Spinner animation indicating loading</desc>\n <defs>\n <style>\n .bullhornSpinner g.circleGroup {\n -webkit-filter: url("{{baseHref || \'\'}}#gooEffect");\n filter: url("{{baseHref || \'\'}}#gooEffect");\n }\n _:-webkit-full-screen:not(:root:root), .bullhornSpinner g.circleGroup {\n -webkit-filter: none;\n filter: none;\n }\n @supports (-webkit-text-size-adjust:none) and (not (-ms-accelerator:true)) and (not (-moz-appearance:none)) {\n .bullhornSpinner g.circleGroup {\n -webkit-filter: none;\n filter: none;\n }\n }\n @supports (-webkit-text-size-adjust:none) and (not (-ms-accelerator:true)) and (not (-moz-appearance:none)) {\n .bullhornSpinner g.circleGroup {\n -webkit-filter: none;\n filter: none;\n }\n }\n </style>\n <filter id="gooEffect">\n <feGaussianBlur in="SourceGraphic" stdDeviation="5" result="blur" />\n <feColorMatrix in="blur" mode="matrix" values="\n 1.3 0 0 0 0\n 0 1.3 0 0 0\n 0 0 1.3 0 0\n 0 0 0 19 -7" result="gooEffect" />\n <feComposite in="SourceGraphic" in2="gooEffect" operator="atop" />\n </filter>\n </defs>\n <path d="M 43 43 L 54 45 L 80 40 L 43 43" stroke="none" fill="none" id="firstLinePath"/>\n <path d="M 43 43 L 48 41 L 48 18 L 43 43" stroke="none" fill="none" id="secondLinePath"/>\n <path d="M 43 43 L 42 45 L 15 40 L 43 43" stroke="none" fill="none" id="thirdLinePath"/>\n <path d="M 43 43 L 44 52 L 29 78 L 43 43" stroke="none" fill="none" id="fourthLinePath"/>\n <path d="M 43 43 L 52 52 L 68 78 L 43 43" stroke="none" fill="none" id="fifthLinePath"/>\n <g class="circleGroup" transform="translate(7, 7)">\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#firstLinePath"/>\n </animateMotion>\n </circle>\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#secondLinePath"/>\n </animateMotion>\n </circle>\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#thirdLinePath"/>\n </animateMotion>\n </circle>\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#fourthLinePath"/>\n </animateMotion>\n </circle>\n <circle r="6" cx="0" cy="0">\n \x3c!-- Define the motion path animation --\x3e\n <animateMotion dur="3.4" repeatCount="indefinite">\n <mpath xlink:href="#fifthLinePath"/>\n </animateMotion>\n </circle>\n </g>\n </svg>\n '}]}],Ge.propDecorators={theme:[{type:t.Input}],inverse:[{type:t.Input}],baseHref:[{type:t.Input}]};var Ve=function(){this.skeleton=!0};Ve.decorators=[{type:t.Directive,args:[{selector:"[skeleton]"}]}],Ve.propDecorators={skeleton:[{type:t.HostBinding,args:["class.skeleton"]}]};var Ue=function(){};Ue.decorators=[{type:t.Directive,args:[{selector:"[loaded]"}]}];var Ke=function(){function e(e){this.viewContainer=e,this.hasView=!1,this.skeletonViews=[],this.loadedViews=[]}return Object.defineProperty(e.prototype,"isLoading",{set:function(e){e||this.hasView?e&&this.hasView&&(this.destroyViews(this.skeletonViews),this.loadedViews=this.createViews(this.loadedTemplates),this.hasView=!1):(this.destroyViews(this.loadedViews),this.skeletonViews=this.createViews(this.skeletonTemplates),this.hasView=!0)},enumerable:!1,configurable:!0}),e.prototype.createViews=function(e){var t=this;return e&&e.map((function(e){return t.viewContainer.createEmbeddedView(e)}))},e.prototype.destroyViews=function(e){var t,n;if(e)try{for(var o=ne(e),a=o.next();!a.done;a=o.next()){a.value.destroy()}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}},e}();Ke.decorators=[{type:t.Directive,args:[{selector:"[isLoading]"}]}],Ke.ctorParameters=function(){return[{type:t.ViewContainerRef}]},Ke.propDecorators={skeletonTemplates:[{type:t.ContentChildren,args:[Ve,{read:t.TemplateRef}]}],loadedTemplates:[{type:t.ContentChildren,args:[Ue,{read:t.TemplateRef}]}],isLoading:[{type:t.Input}]};var ze=function(){};ze.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[_e,Ge,Ke,Ue,Ve],exports:[_e,Ge,Ke,Ue,Ve]}]}];var je=function(){};je.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_,ze,U],declarations:[He,Be],exports:[He,Be]}]}];var $e=function(){function e(e){this.active=!1,this.onActiveChange=new t.EventEmitter,this.element=e,this.onOutsideClick=this.handleOutsideClick.bind(this)}return e.prototype.ngOnDestroy=function(){window.removeEventListener("click",this.onOutsideClick)},e.prototype.toggleActive=function(e,t){this.active=R.isBlank(t)?!this.active:t,this.active?window.addEventListener("click",this.onOutsideClick):window.removeEventListener("click",this.onOutsideClick),this.onActiveChange.emit(this.active)},e.prototype.handleOutsideClick=function(e){var t=!this.element.nativeElement.contains(e.target);this.otherElement&&t&&(t=!this.otherElement.nativeElement.contains(e.target)),t&&this.toggleActive(e,!1)},e}();$e.decorators=[{type:t.Injectable}],$e.ctorParameters=function(){return[{type:t.ElementRef}]};var We={BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,RETURN:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,HASH_SYMBOL:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,AT_SYMBOL:64,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,DASH:189,PERIOD:190,FORWARD_SLASH:191},Ze=function(e){function n(n,o){var a=e.call(this,n)||this;return a.labels=o,a._query="",a._categoryMap={},a._categories=[],a.persistSelection=!1,a.closeOnSelect=!1,a._select=new t.EventEmitter,a.categorySelected=new t.EventEmitter,a.clickHandler=a.toggleActive.bind(a),a}return te(n,e),Object.defineProperty(n.prototype,"categories",{set:function(e){this._masterCategoryMap=Object.assign({},e),this._categoryMap=Object.assign({},e),this._categories=Object.keys(e)},enumerable:!1,configurable:!0}),n.prototype.ngOnInit=function(){this.element.nativeElement.querySelector("button").addEventListener("click",this.clickHandler)},n.prototype.ngOnDestroy=function(){var e=this.element.nativeElement.querySelector("button");e&&e.removeEventListener("click",this.clickHandler)},n.prototype.onKeyDown=function(e){!this.active||e.keyCode!==We.ESC&&e.keyCode!==We.ENTER||this.toggleActive()},n.prototype.clearSelection=function(){var e=this;this._categories.forEach((function(t){e._categoryMap[t].forEach((function(e){e.selected=!1}))}))},n.prototype.select=function(e,t){R.swallowEvent(e),this.persistSelection&&(this.clearSelection(),t.selected=!0),this._select.emit(t),this.closeOnSelect&&this.toggleActive()},n.prototype.onCategorySelected=function(e){this.categorySelected.emit(e)},n.prototype.clearQuery=function(e){var t=this;R.swallowEvent(e),this._query="",this._categories.forEach((function(e){t._categoryMap[e]=t._masterCategoryMap[e]}))},n.prototype.queryCategories=function(e){var t=this;this._query=e,this._queryTimeout&&clearTimeout(this._queryTimeout),this._queryTimeout=setTimeout((function(){t._categories.forEach((function(n){t.search.compare?t._categoryMap[n]=t._masterCategoryMap[n].filter((function(n){return t.search.compare(e,n)})):t._categoryMap[n]=t._masterCategoryMap[n].filter((function(t){return~t.label.toLowerCase().indexOf(e.toLowerCase())}))}))}),this.search.debounce||300)},n.prototype.executeClickCallback=function(e,t){t.callback(e),this.closeOnSelect&&this.toggleActive()},n}($e);Ze.decorators=[{type:t.Component,args:[{selector:"novo-category-dropdown",template:'\n <ng-content select="button"></ng-content>\n <div class="dropdown-container" *ngIf="active">\n <div class="novo-category-dropdown-search" *ngIf="search" data-automation-id="novo-category-dropdown-search">\n <input type="text" [placeholder]="search.placeholder || labels.search" [value]="_query" (input)="queryCategories($event.target.value)"/>\n <i class="bhi-search" *ngIf="!_query"></i>\n <i class="bhi-times" *ngIf="_query" (click)="clearQuery($event)"></i>\n </div>\n <novo-nav theme="white" [outlet]="novoCategoryDropdownOutlet" direction="vertical">\n <novo-tab *ngFor="let category of _categories" [attr.data-automation-id]="category" (activeChange)="onCategorySelected(category)">\n <span>{{ category }} ({{ _categoryMap[category].length }})</span>\n </novo-tab>\n </novo-nav>\n <novo-nav-outlet #novoCategoryDropdownOutlet>\n <novo-nav-content *ngFor="let category of _categories">\n <novo-list direction="vertical">\n <novo-list-item *ngFor="let item of _categoryMap[category]" (click)="select($event, item)" [attr.data-automation-id]="item.label">\n <item-content>{{ item.label }}</item-content>\n <item-end class="novo-category-dropdown-hover" *ngIf="item.hoverText && !item.selected">{{ item.hoverText }}</item-end>\n <item-end class="novo-category-dropdown-hover" *ngIf="item.hoverIcon && !item.selected"><i class="bhi-{{ item.hoverIcon }}"></i></item-end>\n <item-end *ngIf="item.selected"><i class="bhi-check"></i></item-end>\n </novo-list-item>\n <novo-list-item *ngIf="_categoryMap[category].length === 0 && search" class="novo-category-dropdown-empty-item">\n <item-content>{{ search.emptyMessage || labels.noItems }}</item-content>\n </novo-list-item>\n </novo-list>\n </novo-nav-content>\n </novo-nav-outlet>\n <footer *ngIf="footer" class="novo-category-dropdown-footer-align-{{ footer.align || \'right\' }}">\n <a *ngFor="let link of footer.links" (click)="executeClickCallback($event, link)">{{ link.label }}</a>\n </footer>\n </div>\n ',host:{"(keydown)":"onKeyDown($event)","[class.active]":"active"}}]}],Ze.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne}]},Ze.propDecorators={persistSelection:[{type:t.Input}],closeOnSelect:[{type:t.Input}],search:[{type:t.Input}],footer:[{type:t.Input}],_select:[{type:t.Output,args:["itemSelected"]}],categorySelected:[{type:t.Output}],categories:[{type:t.Input}]};var Ye=function(){function e(){this.theme="",this.direction="",this.condensed=!1,this.items=[]}return e.prototype.select=function(e){this.items.forEach((function(e){e.active,e.active=!1})),e.active=!0,this.outlet&&this.outlet.show(this.items.indexOf(e));var t=document.querySelector("novo-tab-link.active span.indicator");t&&(t.style.opacity=.99,setTimeout((function(){t.style.opacity=1}),10))},e.prototype.add=function(e){0===this.items.length&&(e.active=!0),this.items.push(e)},e}();Ye.decorators=[{type:t.Component,args:[{selector:"novo-nav",template:"<ng-content></ng-content>"}]}],Ye.propDecorators={theme:[{type:t.Input}],direction:[{type:t.Input}],outlet:[{type:t.Input}],router:[{type:t.Input}],condensed:[{type:t.HostBinding,args:["class.condensed"]},{type:t.Input}]};var qe=function(){function e(e){this.active=!1,this.disabled=!1,this.activeChange=new t.EventEmitter,this.nav=e,this.nav.add(this)}return e.prototype.select=function(){this.disabled||(this.activeChange.emit(!0),this.nav.select(this))},e}();qe.decorators=[{type:t.Component,args:[{selector:"novo-tab",host:{"(click)":"select()","[class.active]":"active","[class.disabled]":"disabled"},template:'\n <div class="novo-tab-link">\n <ng-content></ng-content>\n </div>\n <span class="indicator"></span>\n '}]}],qe.ctorParameters=function(){return[{type:Ye}]},qe.propDecorators={active:[{type:t.Input}],disabled:[{type:t.Input}],activeChange:[{type:t.Output}]};var Je=function(){function e(e){this.active=!1,this.disabled=!1,this.nav=e,this.nav.add(this)}return e.prototype.select=function(){this.disabled||this.nav.select(this)},e}();Je.decorators=[{type:t.Component,args:[{selector:"novo-tab-button",host:{"(click)":"select()","[class.active]":"active","[class.disabled]":"disabled"},template:"<ng-content></ng-content>"}]}],Je.ctorParameters=function(){return[{type:Ye}]},Je.propDecorators={active:[{type:t.Input}],disabled:[{type:t.Input}]};var Xe=function(){function e(e){this.active=!1,this.disabled=!1,this.nav=e,this.nav.add(this)}return e.prototype.select=function(){this.disabled||this.nav.select(this)},e}();Xe.decorators=[{type:t.Component,args:[{selector:"novo-tab-link",host:{"(click)":"select()","[class.active]":"active","[class.disabled]":"disabled"},template:'\n <div class="novo-tab-link">\n <ng-content></ng-content>\n </div>\n <span class="indicator"></span>\n '}]}],Xe.ctorParameters=function(){return[{type:Ye}]},Xe.propDecorators={active:[{type:t.Input}],disabled:[{type:t.Input}]};var Qe=function(){function e(){this.items=[]}return e.prototype.show=function(e){var t=this.items[e];this.items.forEach((function(e){e.active,e.active=!1})),t.active=!0},e.prototype.add=function(e){0===this.items.length&&(e.active=!0),this.items.push(e)},e}();Qe.decorators=[{type:t.Component,args:[{selector:"novo-nav-outlet",template:"<ng-content></ng-content>"}]}];var et=function(e){this.active=!1,e.add(this)};et.decorators=[{type:t.Component,args:[{selector:"novo-nav-content",host:{"[class.active]":"active"},template:"<ng-content></ng-content>"}]}],et.ctorParameters=function(){return[{type:Qe}]},et.propDecorators={active:[{type:t.Input}]};var tt=function(){function e(e){this.active=!1,this.active=this.active||!1,this.outlet=e}return e.prototype.show=function(e){try{var t=this.outlet.items.indexOf(this.forElement);t>-1&&this.outlet.show(t)}catch(e){}},e}();tt.decorators=[{type:t.Component,args:[{selector:"novo-nav-header",host:{"[class.active]":"active","(click)":"show($event)"},template:"<ng-content></ng-content>"}]}],tt.ctorParameters=function(){return[{type:Qe}]},tt.propDecorators={active:[{type:t.Input}],forElement:[{type:t.Input,args:["for"]}]};var nt=function(){};nt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[Ye,qe,Je,Xe,Qe,et,tt],exports:[Ye,qe,Je,Xe,Qe,et,tt]}]}];var ot=function(e){this.element=e};ot.decorators=[{type:t.Component,args:[{selector:"novo-list",host:{"[class.vertical-list]":'direction === "vertical"',"[class.horizontal-list]":'direction === "horizontal"',"[attr.theme]":"theme"},template:"\n <ng-content></ng-content>\n "}]}],ot.ctorParameters=function(){return[{type:t.ElementRef}]},ot.propDecorators={theme:[{type:t.Input}],direction:[{type:t.Input}]};var at=function(){function e(e){this.element=e,this.avatar=!1}return e.prototype.ngOnInit=function(){this.avatar=!!this.element.nativeElement.querySelector("item-avatar")},e}();at.decorators=[{type:t.Component,args:[{selector:"novo-list-item",template:'\n <div class="list-item" [ngClass]="{\'avatar\': avatar}">\n <ng-content select="item-header"></ng-content>\n <ng-content select="item-content"></ng-content>\n </div>\n <ng-content></ng-content>\n <ng-content select="item-end"></ng-content>\n '}]}],at.ctorParameters=function(){return[{type:t.ElementRef}]};var it=function(){function e(){}return e.prototype.ngOnChanges=function(e){this.iconClass=this.icon?"bhi-"+this.icon:null,this.classMap=[this.iconClass,this.icon]},e.prototype.ngOnInit=function(){this.ngOnChanges()},e}();it.decorators=[{type:t.Component,args:[{selector:"item-avatar",template:'\n <i *ngIf="iconClass" [ngClass]="classMap" theme="contained"></i>\n '}]}],it.propDecorators={icon:[{type:t.Input}]};var rt=function(){};rt.decorators=[{type:t.Component,args:[{selector:"item-title",template:"\n <h6><ng-content></ng-content></h6>\n "}]}];var st=function(){};st.decorators=[{type:t.Component,args:[{selector:"item-header",template:'\n <ng-content select="item-avatar"></ng-content>\n <ng-content select="item-title"></ng-content>\n <ng-content select="item-header-end"></ng-content>\n '}]}];var lt=function(){};lt.decorators=[{type:t.Component,args:[{selector:"item-header-end",template:"\n <ng-content></ng-content>\n "}]}];var ct=function(){};ct.decorators=[{type:t.Component,args:[{selector:"item-content",host:{"[class.vertical-list]":'direction === "vertical"',"[class.horizontal-list]":'direction === "horizontal"'},template:"\n <ng-content></ng-content>\n "}]}],ct.propDecorators={direction:[{type:t.Input}]};var dt=function(){};dt.decorators=[{type:t.Component,args:[{selector:"item-end",template:"\n <ng-content></ng-content>\n "}]}];var pt=function(){};pt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[ot,at,it,rt,ct,dt,st,lt],exports:[ot,at,it,rt,st,ct,dt,lt]}]}];var ut=function(){};ut.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,nt,pt],declarations:[Ze],exports:[Ze]}]}];var mt=function(){function e(e){this.componentFactoryResolver=e}return e.prototype.append=function(e,n,o,a){var i=this.componentFactoryResolver.resolveComponentFactory(e),r=n.injector,s=a?0:n.length;return n.createComponent(i,s,t.Injector.create({providers:o,parent:r}))},e}();mt.decorators=[{type:t.Injectable}],mt.ctorParameters=function(){return[{type:t.ComponentFactoryResolver}]};var ht={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return ft})),multi:!0},gt=function(){function e(){this.disabled=!1,this.select=new t.EventEmitter,this.remove=new t.EventEmitter,this.deselect=new t.EventEmitter}return Object.defineProperty(e.prototype,"type",{set:function(e){this._type=e?e.toLowerCase():null},enumerable:!1,configurable:!0}),e.prototype.onRemove=function(e){return e&&(e.stopPropagation(),e.preventDefault()),this.remove.emit(e),!1},e.prototype.onSelect=function(e){return e&&(e.stopPropagation(),e.preventDefault()),this.select.emit(e),!1},e.prototype.onDeselect=function(e){return e&&(e.stopPropagation(),e.preventDefault()),this.deselect.emit(e),!1},e}();gt.decorators=[{type:t.Component,args:[{selector:"chip,novo-chip",template:'\n <span (click)="onSelect($event)" (mouseenter)="onSelect($event)" (mouseleave)="onDeselect($event)" [ngClass]="_type">\n <i *ngIf="_type" class="bhi-circle"></i>\n <span><ng-content></ng-content></span>\n </span>\n <i class="bhi-close" *ngIf="!disabled" (click)="onRemove($event)"></i>\n '}]}],gt.propDecorators={type:[{type:t.Input}],disabled:[{type:t.Input}],select:[{type:t.Output}],remove:[{type:t.Output}],deselect:[{type:t.Output}]};var ft=function(){function e(e,n,o){this.element=e,this.componentUtils=n,this.labels=o,this.closeOnSelect=!1,this.placeholder="",this._disablePickerInput=!1,this.changed=new t.EventEmitter,this.focus=new t.EventEmitter,this.blur=new t.EventEmitter,this.typing=new t.EventEmitter,this.items=[],this.selected=null,this.config={},this._value="",this._items=new u.ReplaySubject(1),this.onModelChange=function(){},this.onModelTouched=function(){}}return Object.defineProperty(e.prototype,"disablePickerInput",{get:function(){return this._disablePickerInput},set:function(e){this._disablePickerInput=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.setItems()},Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){this.itemToAdd="",e!==this._value&&(this._value=e,this.changed.emit({value:e,rawValue:this.items}),this.onModelChange(e))},enumerable:!1,configurable:!0}),e.prototype.clearValue=function(){this.items=[],this._items.next(this.items),this.value=null,this.changed.emit({value:this.value,rawValue:this.items}),this.onModelChange(this.value)},e.prototype.setItems=function(){var e,t,n=this;if(this.items=[],this.model&&Array.isArray(this.model)){var o=[];try{for(var a=ne(this.model),i=a.next();!i.done;i=a.next()){var r=i.value,s=void 0;this.source&&this.source.format&&R.validateInterpolationProps(this.source.format,r)&&(s=R.interpolate(this.source.format,r)),this.source&&s&&s!==this.source.format?this.items.push({value:r,label:s}):this.source.getLabels&&"function"==typeof this.source.getLabels?o.push(r):this.source.options&&Array.isArray(this.source.options)?this.items.push(this.getLabelFromOptions(r)):this.source.categoryMap&&this.source.categoryMap.size?this.items.push(r):this.items.push({value:r,label:r})}}catch(t){e={error:t}}finally{try{i&&!i.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}o.length>0&&this.source&&this.source.getLabels&&"function"==typeof this.source.getLabels&&this.source.getLabels(o).then((function(e){var t,o;try{for(var a=ne(e),i=a.next();!i.done;i=a.next()){var r=i.value;r.hasOwnProperty("label")?n.items.push({value:r,label:r.label}):n.source.options&&Array.isArray(n.source.options)?n.items.push(n.getLabelFromOptions(r)):n.items.push(r)}}catch(e){t={error:e}}finally{try{i&&!i.done&&(o=a.return)&&o.call(a)}finally{if(t)throw t.error}}n._items.next(n.items)}))}this.changed.emit({value:this.model,rawValue:this.items}),this._items.next(this.items)},e.prototype.getLabelFromOptions=function(e){var t=e,n=this.source.options.find((function(t){return t.value===e}));return!n&&e.hasOwnProperty("id")&&(n=this.source.options.find((function(t){return t.value===e.id})),t=e.id),{value:t,label:n?n.label:e}},e.prototype.deselectAll=function(e){this.selected=null,this.hidePreview()},e.prototype.select=function(e,t){this.blur.emit(e),this.deselectAll(),this.selected=t,this.showPreview()},e.prototype.deselect=function(e,t){this.blur.emit(e),this.deselectAll()},e.prototype.onTyping=function(e){this.typing.emit(e)},e.prototype.onFocus=function(e){this.deselectAll(),this.element.nativeElement.classList.add("selected"),this.focus.emit(e)},e.prototype.add=function(e){if(e&&!(e instanceof Event)){this.items.push(e),this.value=this.source&&this.source.valueFormatter?this.source.valueFormatter(this.items):this.items.map((function(e){return e.value}));var t=this.element.nativeElement.querySelector("novo-picker > input");t&&t.focus()}this._items.next(this.items)},e.prototype.remove=function(e,t){e&&(e.stopPropagation(),e.preventDefault()),this.items.splice(this.items.indexOf(t),1),this.deselectAll(),this.value=this.source&&this.source.valueFormatter?this.source.valueFormatter(this.items):this.items.map((function(e){return e.value})),this.changed.emit({value:this.value.length?this.value:"",rawValue:this.items}),this.onModelChange(this.value.length?this.value:""),this._items.next(this.items)},e.prototype.onKeyDown=function(e){e.keyCode===We.BACKSPACE&&e.target&&0===e.target.value.length&&this.items.length&&(e&&(e.stopPropagation(),e.preventDefault()),this.selected?this.remove(e,this.selected):this.select(e,this.items[this.items.length-1]))},e.prototype.onTouched=function(e){this.element.nativeElement.classList.remove("selected"),this.onModelTouched(),this.blur.emit(e)},e.prototype.writeValue=function(e){this.model=e,this.setItems()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this._disablePickerInput=e},e.prototype.showPreview=function(){this.source.previewTemplate&&(this.popup||(this.popup=this.componentUtils.append(this.source.previewTemplate,this.preview)),this.popup.instance.match=this.selected)},e.prototype.hidePreview=function(){this.popup&&(this.popup.destroy(),this.popup=null)},e}();ft.decorators=[{type:t.Component,args:[{selector:"chips,novo-chips",providers:[ht],template:'\n <div class="novo-chip-container">\n <novo-chip\n *ngFor="let item of _items | async"\n [type]="type || item?.value?.searchEntity"\n [class.selected]="item == selected"\n [disabled]="disablePickerInput"\n (remove)="remove($event, item)"\n (select)="select($event, item)"\n (deselect)="deselect($event, item)">\n {{ item.label }}\n </novo-chip>\n </div>\n <div class="chip-input-container" *ngIf="!maxlength || (maxlength && items.length < maxlength)">\n <novo-picker\n clearValueOnSelect="true"\n [closeOnSelect]="closeOnSelect"\n [config]="source"\n [disablePickerInput]="disablePickerInput"\n [placeholder]="placeholder"\n [(ngModel)]="itemToAdd"\n (select)="add($event)"\n (keydown)="onKeyDown($event)"\n (focus)="onFocus($event)"\n (typing)="onTyping($event)"\n (blur)="onTouched($event)"\n [selected]="items"\n [overrideElement]="element">\n </novo-picker>\n </div>\n <div class="preview-container">\n <span #preview></span>\n </div>\n <i class="bhi-search" [class.has-value]="items.length" *ngIf="!disablePickerInput"></i>\n <label class="clear-all" *ngIf="items.length && !disablePickerInput" (click)="clearValue()">{{ labels.clearAll }} <i class="bhi-times"></i></label>\n ',host:{"[class.with-value]":"items.length > 0","[class.disabled]":"disablePickerInput"}}]}],ft.ctorParameters=function(){return[{type:t.ElementRef},{type:mt},{type:Ne}]},ft.propDecorators={closeOnSelect:[{type:t.Input}],placeholder:[{type:t.Input}],source:[{type:t.Input}],maxlength:[{type:t.Input}],type:[{type:t.Input}],disablePickerInput:[{type:t.Input}],changed:[{type:t.Output}],focus:[{type:t.Output}],blur:[{type:t.Output}],typing:[{type:t.Output}],preview:[{type:t.ViewChild,args:["preview",{read:t.ViewContainerRef}]}],value:[{type:t.Input}]};var yt=function(){function e(e,n,o,a,i){this.overlay=e,this.viewContainerRef=n,this.zone=o,this.changeDetectorRef=a,this.document=i,this.id="novo-overlay-"+Date.now(),this.position="default",this.scrollStrategy="reposition",this.closeOnSelect=!0,this.select=new t.EventEmitter,this.closing=new t.EventEmitter}return e.prototype.ngOnDestroy=function(){this.destroyOverlay()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlayRef&&this.overlayRef.hasAttached()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parent",{get:function(){return this._parent},set:function(e){this._parent=e,this.checkSizes()},enumerable:!1,configurable:!0}),e.prototype.openPanel=function(){var e=this;this.overlayRef?this.checkSizes():this.createOverlay(this.template),this.overlayRef&&!this.overlayRef.hasAttached()&&(this.overlayRef.attach(this.portal),this.closingActionsSubscription=this.subscribeToClosingActions()),this.changeDetectorRef.markForCheck(),setTimeout((function(){e.overlayRef&&e.overlayRef.updatePosition()}))},e.prototype.closePanel=function(){var e=this;this.zone.run((function(){e.overlayRef&&e.overlayRef.hasAttached()&&(e.overlayRef.detach(),e.closingActionsSubscription.unsubscribe()),e.closing.emit(!0),e.panelOpen&&e.changeDetectorRef.markForCheck()}))},e.prototype.onClosingAction=function(e){this.closePanel()},Object.defineProperty(e.prototype,"panelClosingActions",{get:function(){return u.merge(this.outsideClickStream)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"outsideClickStream",{get:function(){var e=this;return this.document?u.merge(u.fromEvent(this.document,"mousedown"),u.fromEvent(this.document,"touchend")).pipe(g.filter((function(t){var n=t.target,o=e.panelOpen&&n!==e.getConnectedElement().nativeElement&&!e.getConnectedElement().nativeElement.contains(n)&&!!e.overlayRef&&!e.overlayRef.overlayElement.contains(n);return e.panelOpen&&e.overlayRef&&e.overlayRef.overlayElement.contains(n)&&e.closeOnSelect&&e.select.emit(t),o}))):u.of()},enumerable:!1,configurable:!0}),e.prototype.subscribeToClosingActions=function(){var e=this,t=this.zone.onStable.asObservable().pipe(g.first());return u.merge(t).pipe(g.switchMap((function(){return e.panelClosingActions})),g.first()).subscribe((function(t){return e.onClosingAction(t)}))},e.prototype.createOverlay=function(e){var t=this;this.portal=new c.TemplatePortal(e,this.viewContainerRef),this.overlayRef=this.overlay.create(this.getOverlayConfig()),this.overlayRef.backdropClick().subscribe((function(){return t.closePanel()}))},e.prototype.destroyOverlay=function(){this.overlayRef&&(this.closePanel(),this.overlayRef.dispose(),this.overlayRef=void 0)},e.prototype.getOverlayConfig=function(){var e=new l.OverlayConfig;return this.width?e.width=this.width:e.width=this.getHostWidth(),this.height&&(e.height=this.height),e.positionStrategy=this.getPosition(),e.hasBackdrop=!1,e.direction="ltr",e.scrollStrategy=this.getScrollStrategy(),e},e.prototype.getPosition=function(){if("center"===this.position)return this.overlay.position().connectedTo(this.getConnectedElement(),{originX:"start",originY:"center"},{overlayX:"start",overlayY:"center"}).withFallbackPosition({originX:"start",originY:"top"},{overlayX:"start",overlayY:"top"}).withFallbackPosition({originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"bottom"});var e=oe(this.position.includes("right")?["end","start"]:["start","end"],2),t=e[0],n=e[1],o=oe(this.position.includes("top")?["top","bottom"]:["bottom","top"],2),a=o[0],i=o[1],r=this.overlay.position().connectedTo(this.getConnectedElement(),{originX:t,originY:a},{overlayX:t,overlayY:i}).withDirection("ltr");return"bottom"===this.position?r=r.withFallbackPosition({originX:n,originY:"bottom"},{overlayX:n,overlayY:"top"}):("right"===this.position||"default"===this.position||this.position.includes("above-below"))&&(r=r.withFallbackPosition({originX:t,originY:"top"},{overlayX:t,overlayY:"bottom"}).withFallbackPosition({originX:n,originY:"bottom"},{overlayX:n,overlayY:"top"}).withFallbackPosition({originX:n,originY:"top"},{overlayX:n,overlayY:"bottom"}),this.position.includes("above-below")||(r=r.withFallbackPosition({originX:t,originY:"center"},{overlayX:t,overlayY:"center"}).withFallbackPosition({originX:n,originY:"center"},{overlayX:n,overlayY:"center"}))),r},e.prototype.getScrollStrategy=function(){switch(this.scrollStrategy){case"block":return this.overlay.scrollStrategies.block();case"reposition":return this.overlay.scrollStrategies.reposition();default:return this.overlay.scrollStrategies.close()}},e.prototype.checkSizes=function(){this.overlayRef&&(this.width||(this.overlayRef.getConfig().width=this.getHostWidth()),this.height&&(this.overlayRef.getConfig().height=this.height),this.overlayRef.updateSize(this.overlayRef.getConfig()),this.overlayRef.updatePosition(),this.changeDetectorRef.markForCheck())},e.prototype.getConnectedElement=function(){return this.parent},e.prototype.getHostWidth=function(){return this.getConnectedElement().nativeElement.getBoundingClientRect().width},e}();yt.decorators=[{type:t.Component,args:[{selector:"novo-overlay-template",template:'\n <ng-template>\n <div class="novo-overlay-panel" role="listbox" [id]="id" #panel><ng-content></ng-content></div>\n </ng-template>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],yt.ctorParameters=function(){return[{type:l.Overlay},{type:t.ViewContainerRef},{type:t.NgZone},{type:t.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:[s.DOCUMENT]}]}]},yt.propDecorators={template:[{type:t.ViewChild,args:[t.TemplateRef]}],panel:[{type:t.ViewChild,args:["panel"]}],position:[{type:t.Input}],scrollStrategy:[{type:t.Input}],width:[{type:t.Input}],height:[{type:t.Input}],closeOnSelect:[{type:t.Input}],select:[{type:t.Output}],closing:[{type:t.Output}],parent:[{type:t.Input}]};var vt=function(){};vt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,l.OverlayModule,h.ScrollingModule],declarations:[yt],exports:[yt,h.ScrollingModule]}]}];var bt={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Ct})),multi:!0},Ct=function(){function e(e){this.ref=e,this.onChange=new t.EventEmitter,this._disabled=!1,this.onModelChange=function(){},this.onModelTouched=function(){}}return Object.defineProperty(e.prototype,"disabled",{get:function(){return this._disabled},set:function(e){this._disabled=!e},enumerable:!1,configurable:!0}),e.prototype.onKeydown=function(e){e.keyCode===We.SPACE&&(e.preventDefault(),this.toggle(e))},e.prototype.toggle=function(e){e&&(e.stopPropagation(),e.preventDefault()),this.disabled||(this.model=!this.model,this.onChange.next(this.model),this.onModelChange(this.model),this.ref.markForCheck())},e.prototype.writeValue=function(e){this.model=e,this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e}();Ct.decorators=[{type:t.Component,args:[{selector:"novo-switch",providers:[bt],template:'\n <div (click)="toggle($event)">\n <div class="novo-switch-container">\n <div class="novo-switch-bar"></div>\n <div class="novo-switch-thumb-container">\n <div class="novo-switch-thumb"></div>\n </div>\n </div>\n <div class="novo-switch-label"><ng-content></ng-content></div>\n </div>\n ',host:{role:"checkbox","[attr.aria-checked]":"model","[attr.aria-disabled]":"disabled","(keydown)":"onKeydown($event)","[class]":"theme"}}]}],Ct.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},Ct.propDecorators={theme:[{type:t.Input}],onChange:[{type:t.Output}],disabled:[{type:t.Input,args:["disabled"]}]};var St=function(){};St.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule],declarations:[Ct],exports:[Ct]}]}];var kt=function(){function e(e,t){this._term="",this.selected=[],this.matches=[],this.hasError=!1,this.isLoading=!1,this.isStatic=!0,this.page=0,this.lastPage=!1,this.autoSelectFirstOption=!0,this.optionsFunctionHasChanged=!1,this.selectingMatches=!1,this.element=e,this.ref=t,this.scrollHandler=this.onScrollDown.bind(this)}return e.prototype.cleanUp=function(){var e=this.getListElement();e&&e.hasAttribute("scrollListener")&&(e.removeAttribute("scrollListener"),e.removeEventListener("scroll",this.scrollHandler))},e.prototype.onScrollDown=function(e){var t=e.target;t&&(t.offsetHeight+t.scrollTop>=t.scrollHeight-300&&(e.stopPropagation(),this.lastPage||this.isLoading||this.processSearch()))},Object.defineProperty(e.prototype,"term",{get:function(){return this._term},set:function(e){this.shouldSearch(e)?(this._term=e,this.page=0,this.optionsFunctionHasChanged=!1,this.matches=[],this.processSearch(!0)):this.addScrollListener()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"config",{get:function(){return this._config},set:function(e){this.config&&this.config.options!==e.options&&(this.optionsFunctionHasChanged=!0),this._config=e},enumerable:!1,configurable:!0}),e.prototype.shouldSearch=function(e){var t=e!==this._term,n=0===this.page;return t||n||this.optionsFunctionHasChanged},e.prototype.addScrollListener=function(){if(this.config.enableInfiniteScroll){var e=this.getListElement();e&&!e.hasAttribute("scrollListener")&&(e.setAttribute("scrollListener","true"),e.addEventListener("scroll",this.scrollHandler))}},e.prototype.processSearch=function(e){var t=this;this.hasError=!1,this.isLoading=!0,this.ref.markForCheck(),this.search(this.term).subscribe((function(n){e&&(t.matches=[]),t.isStatic?t.matches=t.filterData(n):(t.matches=t.matches.concat(n),t.lastPage=n&&!n.length),t.matches.length>0&&t.autoSelectFirstOption&&!t.selectingMatches&&t.nextActiveMatch(),t.isLoading=!1,t.ref.markForCheck(),setTimeout((function(){t.overlay.updatePosition(),t.addScrollListener()}))}),(function(e){t.hasError=t.term&&0!==t.term.length,t.isLoading=!1,t.lastPage=!0,t.term&&0!==t.term.length&&console.error(e),t.ref.markForCheck()}))},e.prototype.search=function(e,t){var n=this,o=this.config.options;return u.from(new Promise((function(t,a){if(o)if(Array.isArray(o))n.isStatic=!0,t(n.structureArray(o));else if(n.shouldCallOptionsFunction(e))if(o.hasOwnProperty("reject")&&o.hasOwnProperty("resolve")||Object.getPrototypeOf(o).hasOwnProperty("then"))n.isStatic=!1,o.then(n.structureArray.bind(n)).then(t,a);else{if("function"!=typeof o)throw a("The data provided is not an array or a promise"),new Error("The data provided is not an array or a promise");n.isStatic=!1,o(e,++n.page).then(n.structureArray.bind(n)).then(t,a)}else if(n.config.defaultOptions)if(n.isStatic=!1,"function"==typeof n.config.defaultOptions){var i=n.config.defaultOptions(e,++n.page);Object.getPrototypeOf(i).hasOwnProperty("then")?i.then(n.structureArray.bind(n)).then(t,a):t(n.structureArray(i))}else t(n.structureArray(n.config.defaultOptions));else a("No search term");else a("error")})))},e.prototype.shouldCallOptionsFunction=function(e){return this.config&&"minSearchLength"in this.config&&Number.isInteger(this.config.minSearchLength)?"string"==typeof e&&e.length>=this.config.minSearchLength:!(!e||!e.length)},e.prototype.structureArray=function(e){var t=this,n=e.data?e.data:e;return!n||"string"!=typeof n[0]&&"number"!=typeof n[0]?n.map((function(e){var n=t.config.field?e[t.config.field]:e.value||e;return t.config.valueFormat&&(n=R.interpolate(t.config.valueFormat,e)),{value:n,label:t.config.format?R.interpolate(t.config.format,e):e.label||String(n),data:e}})):e.map((function(e){return{value:e,label:e}}))},e.prototype.filterData=function(e){var t=this;return this.term&&e?e.filter((function(e){return~String(e.label).toLowerCase().indexOf(t.term.toLowerCase())})):e},e.prototype.selectActiveMatch=function(){this.selectMatch()},e.prototype.prevActiveMatch=function(){var e=this.matches.indexOf(this.activeMatch);this.activeMatch=this.matches[e-1<0?this.matches.length-1:e-1],this.scrollToActive(),this.ref.markForCheck()},e.prototype.nextActiveMatch=function(){var e=this.matches.indexOf(this.activeMatch);this.activeMatch=this.matches[e+1>this.matches.length-1?0:e+1],this.scrollToActive(),this.ref.markForCheck()},e.prototype.getListElement=function(){return this.element.nativeElement},e.prototype.getChildrenOfListElement=function(){var e=[];return this.getListElement()&&(e=this.getListElement().children),e},e.prototype.scrollToActive=function(){var e=this.getListElement(),t=this.getChildrenOfListElement()[this.matches.indexOf(this.activeMatch)];t&&(e.scrollTop=t.offsetTop)},e.prototype.selectActive=function(e){this.activeMatch=e},e.prototype.isActive=function(e){return this.activeMatch===e},e.prototype.selectMatch=function(e,t){e&&(e.stopPropagation(),e.preventDefault());var n=this.activeMatch;return n&&this.parent&&(this.parent.value=n,this.selectingMatches=!0,this.parent.closeOnSelect&&(this.parent.hideResults(),this.selectingMatches=!1)),this.ref.markForCheck(),!1},e.prototype.escapeRegexp=function(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")},e.prototype.highlight=function(e,t){return t?e.replace(new RegExp(this.escapeRegexp(t.trim()),"gi"),"<strong>$&</strong>"):e},e.prototype.preselected=function(e){if(this.config.preselected){var t=this.config.preselected;return-1!==this.selected.findIndex((function(n){return t(e,n)}))}return-1!==this.selected.findIndex((function(t){var n=!1;return t&&t.value&&e&&e.value&&(n=t.value.id&&e.value.id?t.value.id===e.value.id:t.value instanceof Object&&t.value.hasOwnProperty("value")?t.value.value===e.value:t.value===e.value),n}))},e}();kt.decorators=[{type:t.Directive}],kt.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},kt.propDecorators={matches:[{type:t.Input}]};var It=function(e){function t(t,n,o){var a=e.call(this,t,o)||this;return a.labels=n,a}return te(t,e),Object.defineProperty(t.prototype,"hasNonErrorMessage",{get:function(){return!this.isLoading&&!this.matches.length&&!this.hasError},enumerable:!1,configurable:!0}),t.prototype.getEmptyMessage=function(){return this.shouldShowMessageForZeroLengthSearch()?this.config.emptyPickerMessage:""===this.term?this.labels.pickerTextFieldEmpty:this.labels.pickerEmpty},t.prototype.shouldShowMessageForZeroLengthSearch=function(){return this.config&&0===this.config.minSearchLength&&""===this.term&&this.config.emptyPickerMessage},t.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},t}(kt);It.decorators=[{type:t.Component,args:[{selector:"picker-results",host:{class:"active"},template:'\n <novo-list *ngIf="matches.length > 0" direction="vertical">\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match)"\n >\n <item-content> <span [innerHtml]="highlight(match.label, term)"></span> </item-content>\n </novo-list-item>\n <novo-loading *ngIf="isLoading && matches.length > 0" theme="line"></novo-loading>\n </novo-list>\n <div class="picker-loader" *ngIf="isLoading && matches.length === 0"><novo-loading theme="line"></novo-loading></div>\n <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>\n <p class="picker-null-results" *ngIf="hasNonErrorMessage">{{ getEmptyMessage() }}</p>\n '}]}],It.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]};var Et={};function wt(e){t.isDevMode()&&!(e in Et)&&(Et[e]=!0,console.warn(e))}var Tt={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Ot})),multi:!0},Ot=function(){function e(e,n,o){this.element=e,this.componentUtils=n,this.ref=o,this.closeOnSelect=!0,this.selected=[],this.appendToBody=!1,this.parentScrollAction="close",this.side="left",this.autoSelectFirstOption=!0,this._disablePickerInput=!1,this.changed=new t.EventEmitter,this.select=new t.EventEmitter,this.focus=new t.EventEmitter,this.blur=new t.EventEmitter,this.typing=new t.EventEmitter,this.term="",this.onModelChange=function(){},this.onModelTouched=function(){}}return Object.defineProperty(e.prototype,"disablePickerInput",{get:function(){return this._disablePickerInput},set:function(e){this._disablePickerInput=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.overrideElement&&(this.element=this.overrideElement),this.appendToBody&&wt("'appendToBody' has been deprecated. Please remove this attribute."),this.resultsComponent=this.config.resultsTemplate||It,u.fromEvent(this.input.nativeElement,"paste").pipe(g.debounceTime(250),g.distinctUntilChanged()).subscribe((function(t){return e.onDebouncedKeyup(t)}),(function(t){return e.hideResults(t)})),u.fromEvent(this.input.nativeElement,"keyup").pipe(g.debounceTime(250),g.distinctUntilChanged()).subscribe((function(t){return e.onDebouncedKeyup(t)}),(function(t){return e.hideResults(t)}))},e.prototype.onDebouncedKeyup=function(e){[We.ESC,We.UP,We.DOWN,We.ENTER,We.TAB].includes(e.keyCode)||this.show(e.target.value)},e.prototype.openPanel=function(){this.container.openPanel()},e.prototype.closePanel=function(){this.container.closePanel()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.container&&this.container.panelOpen},enumerable:!1,configurable:!0}),e.prototype.show=function(e){this.openPanel(),this.showResults(e)},e.prototype.onKeyDown=function(e){if(this.disablePickerInput)R.swallowEvent(e);else if(this.panelOpen&&!this.disablePickerInput){if(e.keyCode===We.ESC||e.keyCode===We.TAB)return void this.hideResults();if(e.keyCode===We.UP)return this.popup.instance.prevActiveMatch(),void this.ref.markForCheck();if(e.keyCode===We.DOWN)return this.popup.instance.nextActiveMatch(),void this.ref.markForCheck();if(e.keyCode===We.ENTER){var t=this.popup.instance.activeMatch;return void(this.selected.find((function(e){return t&&t.value&&e.value===t.value}))||(this.popup.instance.selectActiveMatch(),this.ref.markForCheck()))}e.keyCode!==We.BACKSPACE&&e.keyCode!==We.DELETE||R.isBlank(this._value)||(this.clearValue(!1),this.closePanel()),e.keyCode===We.DELETE&&R.isBlank(this._value)&&this.clearValue(!0)}},e.prototype.clearValue=function(e){this._value=null,this.select.emit(this._value),this.changed.emit({value:this._value,rawValue:{label:"",value:this._value}}),this.onModelChange(this._value),e&&(this.term="",this.hideResults()),this.ref.markForCheck()},e.prototype.onFocus=function(e){this.panelOpen||this.show(),this.focus.emit(e)},e.prototype.showResults=function(e){this.popup?(this.popup.instance.config=this.config,this.popup.instance.term=this.term,this.popup.instance.selected=this.selected,this.popup.instance.autoSelectFirstOption=this.autoSelectFirstOption,this.ref.markForCheck()):(this.popup=this.componentUtils.append(this.resultsComponent,this.results),this.popup.instance.parent=this,this.popup.instance.config=this.config,this.popup.instance.term=this.term,this.popup.instance.selected=this.selected,this.popup.instance.autoSelectFirstOption=this.autoSelectFirstOption,this.popup.instance.overlay=this.container.overlayRef,this.ref.markForCheck())},e.prototype.hideResults=function(e){this.closePanel(),this.ref.markForCheck()},e.prototype.onOverlayClosed=function(){this.popup&&this.popup.instance&&this.popup.instance.cleanUp&&this.popup.instance.cleanUp()},Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){e?e.value!==this._value?(this.term=this.clearValueOnSelect?"":e.label,this._value=e.value,this.changed.emit({value:e.value,rawValue:{label:this.term,value:e.value}}),this.select.emit(e),this.onModelChange(e.value),this.popup&&(this.popup.instance.selected=this.selected)):(this.changed.emit({value:e.value,rawValue:{label:this.term,value:this._value}}),this.select.emit(e)):(this.term="",this._value=null,this.onModelChange(this._value)),this.ref.markForCheck()},enumerable:!1,configurable:!0}),e.prototype.checkTerm=function(e){this.typing.emit(e),e&&e.length||(this._value=null,this.onModelChange(this._value)),this.ref.markForCheck()},e.prototype.onTouched=function(e){this.onModelTouched(),this.blur.emit(e)},e.prototype.writeValue=function(e){var t=this;this.clearValueOnSelect?this.term="":"string"!=typeof e||this.config.useGetLabels?e&&e.label?this.term=e.label:e&&e.firstName?this.term=e.firstName+" "+e.lastName:e&&e.name?this.term=e.name:"function"==typeof this.config.getLabels?this.config.getLabels(e).then((function(n){t.term=n?n.length?n[0].label||"":n.label||"":e,t.ref.markForCheck()})):e&&e.title?this.term=e.title:this.term=e||"":this.term=e,this._value=e,this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this._disablePickerInput=e},e}();Ot.decorators=[{type:t.Component,args:[{selector:"novo-picker",providers:[Tt],template:'\n <i class="bhi-more" *ngIf="config?.entityIcon && !_value"></i>\n <i class="bhi-{{ config?.entityIcon }} entity-icon {{ config?.entityIcon }}" *ngIf="config?.entityIcon && _value"></i>\n <input\n type="text"\n class="picker-input"\n [(ngModel)]="term"\n [class.entity-picker]="config?.entityIcon"\n [class.entity-selected]="config?.entityIcon && _value"\n (ngModelChange)="checkTerm($event)"\n [placeholder]="placeholder"\n (keydown)="onKeyDown($event)"\n (focus)="onFocus($event)"\n (click)="onFocus($event)"\n (blur)="onTouched($event)"\n autocomplete="off"\n #input\n [disabled]="disablePickerInput"\n />\n <i class="bhi-search" *ngIf="(!_value || clearValueOnSelect) && !disablePickerInput"></i>\n <i\n class="bhi-times"\n [class.entity-selected]="config?.entityIcon && _value"\n *ngIf="_value && !clearValueOnSelect && !disablePickerInput"\n (click)="clearValue(true)"\n ></i>\n <novo-overlay-template class="picker-results-container" [parent]="element" position="above-below" (closing)="onOverlayClosed()">\n <span #results></span>\n <ng-content></ng-content>\n </novo-overlay-template>\n '}]}],Ot.ctorParameters=function(){return[{type:t.ElementRef},{type:mt},{type:t.ChangeDetectorRef}]},Ot.propDecorators={results:[{type:t.ViewChild,args:["results",{read:t.ViewContainerRef,static:!0}]}],config:[{type:t.Input}],placeholder:[{type:t.Input}],clearValueOnSelect:[{type:t.Input}],closeOnSelect:[{type:t.Input}],selected:[{type:t.Input}],appendToBody:[{type:t.Input}],parentScrollSelector:[{type:t.Input}],parentScrollAction:[{type:t.Input}],containerClass:[{type:t.Input}],side:[{type:t.Input}],autoSelectFirstOption:[{type:t.Input}],overrideElement:[{type:t.Input}],disablePickerInput:[{type:t.Input}],changed:[{type:t.Output}],select:[{type:t.Output}],focus:[{type:t.Output}],blur:[{type:t.Output}],typing:[{type:t.Output}],container:[{type:t.ViewChild,args:[yt,{static:!0}]}],input:[{type:t.ViewChild,args:["input",{static:!0}]}]};var Pt=function(){function e(e){this.labels=e}return e.prototype.escapeRegexp=function(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")},e.prototype.highlight=function(e,t){return t&&e?e.replace(new RegExp(this.escapeRegexp(t.trim()),"gi"),"<strong>$&</strong>"):e},e.prototype.getIconForResult=function(e){if(e)switch(e.searchEntity){case"ClientContact":return"person contact";case"ClientCorporation":return"company";case"Opportunity":return"opportunity";case"Candidate":return"candidate";case"Lead":return"lead";case"JobOrder":return"job";case"Placement":return"star placement";case"CorporateUser":return"user";case"CorporationDepartment":return"department";case"JobShift":return"timetable contract";default:return""}return""},e.prototype.renderTimestamp=function(e){var t="";return e&&(t=this.labels.formatDateWithFormat(e,{year:"numeric",month:"numeric",day:"numeric"})),t},e.prototype.renderTimeNoOffset=function(e){var t="";return e&&(e=e.slice(0,19),t=this.labels.formatTime(e)),t},e.prototype.getNameForResult=function(e){if(e)switch(e.searchEntity){case"Lead":case"CorporateUser":case"ClientContact":case"Candidate":case"Person":return"firstName"in e?(e.firstName+" "+e.lastName).trim():(""+(e.name||"")).trim();case"ClientCorporation":return(""+(e.name||"")).trim();case"Opportunity":case"JobOrder":return(e.id+" | "+(e.title||"")).trim();case"Placement":var t=""+e.id;return(e.candidate||e.jobOrder)&&(t=e.candidate&&e.jobOrder?(t+" | "+e.candidate.firstName+" "+e.candidate.lastName+" - "+e.jobOrder.title).trim():e.jobOrder?(t+" | "+e.jobOrder.title).trim():(t+" | "+e.candidate.firstName+" "+e.candidate.lastName).trim()),t;default:return(""+(e.name||"")).trim()}return""},e}();Pt.decorators=[{type:t.Component,args:[{selector:"entity-picker-result",template:'\n <novo-list-item *ngIf="match.data">\n <item-header>\n <item-avatar [icon]="getIconForResult(match.data)"></item-avatar>\n <item-title> <span [innerHtml]="highlight(getNameForResult(match.data), term)"></span> </item-title>\n </item-header>\n <item-content direction="horizontal">\n \x3c!-- COMPANY 1 --\x3e\n <p class="company" *ngIf="match.data.companyName || match.data?.clientCorporation?.name">\n <i class="bhi-company"></i>\n <span [innerHtml]="highlight(match.data.companyName || match.data?.clientCorporation?.name, term)"></span>\n </p>\n \x3c!-- CLIENT CONTACT --\x3e\n <p class="contact" *ngIf="match.data?.clientContact?.firstName">\n <i class="bhi-person contact person"></i>\n <span [innerHtml]="highlight(match.data.clientContact.firstName + \' \' + match.data.clientContact.lastName, term)"></span>\n </p>\n \x3c!-- CANDIDATE --\x3e\n <p class="candidate" *ngIf="match.data.candidate && match.data.searchEntity === \'Placement\'">\n <i class="bhi-candidate"></i>\n <span [innerHtml]="highlight(match.data.candidate.firstName + \' \' + match.data.candidate.lastName, term)"></span>\n </p>\n \x3c!-- START & END DATE --\x3e\n <p class="start-date" *ngIf="match.data.dateBegin && match.data.searchEntity === \'Placement\'">\n <i class="bhi-calendar"></i>\n <span [innerHtml]="renderTimestamp(match.data.dateBegin) + \' - \' + renderTimestamp(match.data.dateEnd)"></span>\n </p>\n \x3c!-- START Date --\x3e\n <p class="start-date" *ngIf="match.data.startTime && match.data.searchEntity === \'JobShift\'">\n <i class="bhi-calendar"></i>\n <span [innerHtml]="renderTimestamp(match.data.startTime)"></span>\n </p>\n \x3c!-- START & END TIME --\x3e\n <p class="start-time" *ngIf="match.data.startTime && match.data.searchEntity === \'JobShift\'">\n <i class="bhi-clock"></i>\n <span [innerHtml]="renderTimeNoOffset(match.data.startTime) + \' - \' + renderTimeNoOffset(match.data.endTime)"></span>\n </p>\n \x3c!-- JOBORDER --\x3e\n <p class="job" *ngIf="match.data.jobOrder && match.data.searchEntity === \'JobShift\'">\n <i class="bhi-job"></i>\n <span [innerHtml]="highlight(match.data.jobOrder.title, term)"></span>\n </p>\n \x3c!-- OPENINGS --\x3e\n <p class="openings" *ngIf="match.data.openings && match.data.searchEntity === \'JobShift\'">\n <i class="bhi-candidate"></i>\n <span>{{ match.data.numAssigned }} / {{ match.data.openings }}</span>\n </p>\n \x3c!-- EMAIL --\x3e\n <p class="email" *ngIf="match.data.email">\n <i class="bhi-email"></i> <span [innerHtml]="highlight(match.data.email, term)"></span>\n </p>\n \x3c!-- PHONE --\x3e\n <p class="phone" *ngIf="match.data.phone">\n <i class="bhi-phone"></i> <span [innerHtml]="highlight(match.data.phone, term)"></span>\n </p>\n \x3c!-- ADDRESS --\x3e\n <p class="location" *ngIf="match.data.address && (match.data.address.city || match.data.address.state)">\n <i class="bhi-location"></i> <span *ngIf="match.data.address.city" [innerHtml]="highlight(match.data.address.city, term)"></span>\n <span *ngIf="match.data.address.city && match.data.address.state">, </span>\n <span *ngIf="match.data.address.state" [innerHtml]="highlight(match.data.address.state, term)"></span>\n </p>\n \x3c!-- STATUS --\x3e\n <p class="status" *ngIf="match.data.status">\n <i class="bhi-info"></i> <span [innerHtml]="highlight(match.data.status, term)"></span>\n </p>\n \x3c!-- OWNER --\x3e\n <p class="owner" *ngIf="match.data.owner && match.data.owner.name && match.data.searchEntity === \'Candidate\'">\n <i class="bhi-person"></i> <span [innerHtml]="highlight(match.data.owner.name, term)"></span>\n </p>\n \x3c!-- PRIMARY DEPARTMENT --\x3e\n <p\n class="primary-department"\n *ngIf="match.data.primaryDepartment && match.data.primaryDepartment.name && match.data.searchEntity === \'CorporateUser\'"\n >\n <i class="bhi-department"></i> <span [innerHtml]="highlight(match.data.primaryDepartment.name, term)"></span>\n </p>\n \x3c!-- OCCUPATION --\x3e\n <p class="occupation" *ngIf="match.data.occupation && match.data.searchEntity === \'CorporateUser\'">\n <i class="bhi-occupation"></i> <span [innerHtml]="highlight(match.data.occupation, term)"></span>\n </p>\n </item-content>\n </novo-list-item>\n '}]}],Pt.ctorParameters=function(){return[{type:Ne}]},Pt.propDecorators={match:[{type:t.Input}],term:[{type:t.Input}]};var At=function(e){function n(n,o,a){var i=e.call(this,n,a)||this;return i.labels=o,i.select=new t.EventEmitter,i}return te(n,e),Object.defineProperty(n.prototype,"hasNonErrorMessage",{get:function(){return!this.isLoading&&!this.matches.length&&!this.hasError},enumerable:!1,configurable:!0}),n.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},n.prototype.selectMatch=function(t,n){return this.select.next(n),e.prototype.selectMatch.call(this,t,n)},n}(kt);At.decorators=[{type:t.Component,args:[{selector:"entity-picker-results",template:'\n <novo-list *ngIf="matches.length > 0" direction="vertical">\n <entity-picker-result\n *ngFor="let match of matches"\n [match]="match"\n [term]="term"\n (click)="selectMatch($event, match)"\n [ngClass]="{ active: isActive(match) }"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match)"\n >\n </entity-picker-result>\n <novo-loading theme="line" *ngIf="isLoading && matches.length > 0"></novo-loading>\n </novo-list>\n <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>\n <p class="picker-null-results" *ngIf="hasNonErrorMessage && term !== \'\'">{{ labels.pickerEmpty }}</p>\n <p class="picker-null-results" *ngIf="hasNonErrorMessage && term === \'\'">{{ labels.pickerTextFieldEmpty }}</p>\n '}]}],At.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]},At.propDecorators={select:[{type:t.Output}]};var Dt=function(e){function t(t,n,o){var a=e.call(this,t,o)||this;return a.labels=n,a}return te(t,e),t.prototype.search=function(){var e=this,t=this.config.options;return u.from(new Promise((function(n,o){if(t){if(!Array.isArray(t))throw o("The data provided is not an array or a promise"),new Error("The data provided is not an array or a promise");e.isStatic=!0,n(t)}else o("error")})))},t.prototype.filterData=function(e){var t=this;return this.term&&e?(this.filteredMatches=e.map((function(e){var n=e.originalData.filter((function(e){return~String(e.label).toLowerCase().indexOf(t.term.toLowerCase())}));return e.data=n,e}),this),this.filteredMatches):""===this.term?(e.forEach((function(e){e.data=e.originalData})),e):e},t.prototype.selectMatch=function(e,t){R.swallowEvent(e),t.indeterminate?(t.indeterminate=!1,t.checked=!0):t.checked=!t.checked;var n=this.activeMatch;return n&&(this.parent.value=n),this.ref.markForCheck(),!1},t}(kt);Dt.decorators=[{type:t.Component,args:[{selector:"checklist-picker-results",host:{class:"active picker-results"},template:'\n <novo-loading theme="line" *ngIf="isLoading && !matches.length"></novo-loading>\n <ul *ngIf="matches.length > 0">\n <span *ngFor="let section of matches; let i = index">\n <li class="header caption" *ngIf="section.data.length > 0">{{ section.label || section.type }}</li>\n <li\n *ngFor="let match of section.data; let i = index"\n [ngClass]="{ checked: match.checked }"\n (click)="selectMatch($event, match)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n >\n <label>\n <i\n [ngClass]="{\n \'bhi-checkbox-empty\': !match.checked,\n \'bhi-checkbox-filled\': match.checked,\n \'bhi-checkbox-indeterminate\': match.indeterminate\n }"\n ></i>\n {{ match.label }}\n </label>\n </li>\n </span>\n </ul>\n <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>\n <p class="picker-null-results" *ngIf="!isLoading && !matches.length && !hasError && term !== \'\'">{{ labels.pickerEmpty }}</p>\n '}]}],Dt.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]};var xt=function(e){function t(t,n,o,a){var i=e.call(this,t,a)||this;return i.renderer=n,i.labels=o,i.customFilterEnabled=!1,i.placeholder="",i.internalMap=new Map,i}return te(t,e),Object.defineProperty(t.prototype,"term",{set:function(e){var t=this;if(this.config.displayAll&&this.config.getItemsForCategoryAsync)throw new Error("[GroupedMultiPickerResults] - you can only have `displayAll` with a static `categoryMap`. Not available with `getItemsForCategoryAsync`");if(this.config.customFilter){if(this.customFilterEnabled=!0,this.customFilterLabel=this.config.customFilter.label,this.customFilterValue=!!this.config.customFilter.defaultFilterValue,this.ref.markForCheck(),!this.customFilterLabel||!this.config.customFilter.matchFunction)throw new Error("[GroupedMultiPickerResults] - custom filter/matchFunction set no label was provided!")}else this.customFilterEnabled=!1;this.config.displayAll&&!this.selectedCategory&&this.setAllCategory(),this.config.placeholder&&(this.placeholder=this.config.placeholder),setTimeout((function(){t.inputElement.nativeElement.focus()}))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"categories",{get:function(){return this.config.categories||this.config.categoryMap?this.config.categories||Array.from(this.config.categoryMap.values()).filter((function(e){return"all"!==e.value})):[]},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){var e=this;this.keyboardSubscription=u.fromEvent(this.inputElement.nativeElement,"keyup").pipe(g.debounceTime(350),g.distinctUntilChanged()).subscribe((function(t){e.searchTerm=t.target.value,e.matches=e.filterData(),e.ref.markForCheck()}))},t.prototype.ngOnDestroy=function(){this.keyboardSubscription.unsubscribe()},t.prototype.setAllCategory=function(){if(this.config.displayAll){this.selectedCategory={value:"all",label:"all"};var e=[];Array.from(this.config.categoryMap.values()).filter((function(e){return"all"!==e.value})).forEach((function(t){return e.push.apply(e,ae(t.items))})),this.matches=this.filter(e),this.config.categoryMap.set("all",{value:"all",label:"All",items:e}),this.ref.markForCheck()}},t.prototype.selectCategory=function(e){this.renderer.setProperty(this.listElement.element.nativeElement,"scrollTop",0),this.inputElement.nativeElement.focus();var t=e.value;this.selectedCategory=e,this.matches=[],this.ref.markForCheck(),this.getNewMatches(e,t)},t.prototype.clearSearchTerm=function(e){R.swallowEvent(e),this.searchTerm="",this.selectCategory({value:this.selectedCategory.value,label:this.selectedCategory.label}),this.ref.markForCheck()},t.prototype.selectMatch=function(t,n){return this.inputElement.nativeElement.focus(),e.prototype.selectMatch.call(this,t)},t.prototype.fireCustomFilter=function(e){var t=this;if(this.customFilterValue=e,this.internalMap.clear(),this.selectCategory){var n=this.selectedCategory.value;this.getNewMatches(this.selectedCategory,n),this.ref.markForCheck()}setTimeout((function(){t.inputElement.nativeElement.focus()}))},t.prototype.filterData=function(){return this.selectedCategory?this.config.categoryMap?this.filter(this.config.categoryMap.get(this.selectedCategory.value).items):this.filter(this.internalMap.get(this.selectedCategory.value).items):[]},t.prototype.getNewMatches=function(e,t){var n=this;if(this.config.categoryMap)this.matches=this.filter(this.config.categoryMap.get(t).items),this.ref.markForCheck();else{if(!this.config.getItemsForCategoryAsync)throw new Error('The "config" for the Chips must include a function "getItemsForCategoryAsync(categoryKey: string)" to retrieve the items by category. Or if you have static data provide a "categoryMap"');this.internalMap.get(t)?(this.matches=this.filter(this.internalMap.get(t).items),this.ref.markForCheck()):(this.isLoading=!0,this.config.getItemsForCategoryAsync(t,this.customFilterValue).then((function(o){n.internalMap.set(t,{value:e.value,label:e.label,items:o}),n.matches=n.filter(o,!0),n.isLoading=!1,n.ref.markForCheck(),setTimeout((function(){n.inputElement.nativeElement.focus()}))})))}},t.prototype.filter=function(e,t){var n=this;void 0===t&&(t=!1);var o=e;return this.searchTerm&&0!==this.searchTerm.length&&this.selectedCategory&&(o=o.filter((function(e){var t=n.searchTerm.toLowerCase();return e.label.toLowerCase().indexOf(t)>-1||e.value.toLowerCase().indexOf(t)>-1}))),this.customFilterEnabled&&this.config.customFilter.matchFunction&&!t&&(o=o.filter((function(e){return n.config.customFilter.matchFunction(e,n.customFilterValue)}))),o},t}(kt);xt.decorators=[{type:t.Component,args:[{selector:"grouped-multi-picker-results",template:'\n <div class="grouped-multi-picker-groups">\n <novo-list direction="vertical">\n <novo-list-item\n *ngIf="config.displayAll"\n (click)="selectCategory({ value: \'all\', label: \'all\' })"\n [class.active]="selectedCategory?.value === \'all\'"\n data-automation-id="display-all"\n [class.disabled]="isLoading">\n <item-content>\n <span data-automation-id="label">{{ labels.all }}</span>\n </item-content>\n <item-end>\n <i class="bhi-next"></i>\n </item-end>\n </novo-list-item>\n <novo-list-item\n *ngFor="let category of categories"\n (click)="selectCategory(category)"\n [class.active]="selectedCategory?.value === category.value"\n [attr.data-automation-id]="category.label"\n [class.disabled]="isLoading">\n <item-content>\n <i *ngIf="category.iconClass" [class]="category.iconClass"></i>\n <span data-automation-id="label">{{ category.label }}</span>\n </item-content>\n <item-end>\n <i class="bhi-next"></i>\n </item-end>\n </novo-list-item>\n </novo-list>\n <footer class="grouped-multi-picker-groups-footer" *ngIf="customFilterEnabled" data-automation-id="footer" [class.disabled]="isLoading">\n <novo-switch [(ngModel)]="customFilterValue" (onChange)="fireCustomFilter($event)" data-automation-id="switch"></novo-switch>\n <label data-automation-id="label">{{ customFilterLabel }}</label>\n </footer>\n </div>\n <div class="grouped-multi-picker-matches">\n <div class="grouped-multi-picker-input-container" [hidden]="!selectedCategory" data-automation-id="input-container">\n <input autofocus #input [(ngModel)]="searchTerm" [disabled]="isLoading" data-automation-id="input" [placeholder]="placeholder"/>\n <i class="bhi-search" *ngIf="!searchTerm" [class.disabled]="isLoading" data-automation-id="seach-icon"></i>\n <i class="bhi-times" *ngIf="searchTerm" (click)="clearSearchTerm($event)" [class.disabled]="isLoading" data-automation-id="remove-icon"></i>\n </div>\n <div class="grouped-multi-picker-list-container">\n <novo-list direction="vertical" #list>\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match) || isLoading"\n [attr.data-automation-id]="match.label">\n <item-content>\n <span>{{ match.label }}</span>\n </item-content>\n </novo-list-item>\n </novo-list>\n <div class="grouped-multi-picker-no-results" *ngIf="matches.length === 0 && !isLoading && selectedCategory" data-automation-id="empty-message">\n {{ labels.groupedMultiPickerEmpty }}\n </div>\n <div class="grouped-multi-picker-no-category" *ngIf="matches.length === 0 && !isLoading && !selectedCategory" data-automation-id="select-category-message">\n {{ labels.groupedMultiPickerSelectCategory }}\n </div>\n <div class="grouped-multi-picker-loading" *ngIf="isLoading" data-automation-id="loading-message">\n <novo-loading theme="line"></novo-loading>\n </div>\n </div>\n </div>\n '}]}],xt.ctorParameters=function(){return[{type:t.ElementRef},{type:t.Renderer2},{type:Ne},{type:t.ChangeDetectorRef}]},xt.propDecorators={inputElement:[{type:t.ViewChild,args:["input",{static:!0}]}],listElement:[{type:t.ViewChild,args:["list"]}]};var Rt=function(e){function t(t,n,o,a){var i=e.call(this,t,a)||this;return i.renderer=n,i.labels=o,i.placeholder="",i.emptyOptionsLabel="",i.internalMap=new Map,i}return te(t,e),Object.defineProperty(t.prototype,"term",{set:function(e){var t=this;this.config.placeholder&&(this.placeholder=this.config.placeholder),setTimeout((function(){t.inputElement.nativeElement.focus()}))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"options",{get:function(){return this.config.options||[]},enumerable:!1,configurable:!0}),t.prototype.ngOnDestroy=function(){this.keyboardSubscription&&this.keyboardSubscription.unsubscribe(),this.config.options&&this.config.options.forEach((function(e){e.clearSecondaryOptions&&e.clearSecondaryOptions.unsubscribe()}))},t.prototype.selectPrimaryOption=function(e,t){var n=this;this.keyboardSubscription&&this.keyboardSubscription.unsubscribe(),this.renderer.setProperty(this.listElement.element.nativeElement,"scrollTop",0),this.inputElement.nativeElement.focus();e.value;this.selectedPrimaryOption=e,this.matches=[],this.ref.markForCheck(),this.optionHasSecondaryOptions(e)?(this.keyboardSubscription=u.fromEvent(this.inputElement.nativeElement,"keyup").pipe(g.debounceTime(350),g.distinctUntilChanged()).subscribe((function(e){n.searchTerm=e.target.value,n.matches=n.filterData(),n.ref.markForCheck()})),this.getNewMatches(e)):(this.selectActive(e),this.selectMatch(t))},t.prototype.selectMatch=function(t){return this.inputElement.nativeElement.focus(),e.prototype.selectMatch.call(this,t)},t.prototype.clearSearchTerm=function(e){R.swallowEvent(e),this.searchTerm="",this.selectPrimaryOption({value:this.selectedPrimaryOption.value,label:this.selectedPrimaryOption.label}),this.ref.markForCheck()},t.prototype.optionHasSecondaryOptions=function(e){return!(!e||!e.secondaryOptions&&!e.getSecondaryOptionsAsync)},t.prototype.shouldShowSearchBox=function(e){return!(!e||!e.showSearchOnSecondaryOptions)},t.prototype.clearPrimaryOption=function(e){var t;this.internalMap.get(e.value)&&(e.value===(null===(t=this.selectedPrimaryOption)||void 0===t?void 0:t.value)&&(this.activeMatch=null,this.matches=[],this.selectedPrimaryOption=null),this.internalMap.delete(e.value),this.ref.markForCheck())},t.prototype.filterData=function(){return this.selectedPrimaryOption?this.selectedPrimaryOption.secondaryOptions?this.filter(this.selectedPrimaryOption.secondaryOptions):this.filter(this.internalMap.get(this.selectedPrimaryOption.value).items):[]},t.prototype.filter=function(e){var t=this,n=e;return this.searchTerm&&0!==this.searchTerm.length&&this.selectedPrimaryOption&&(n=n.filter((function(e){var n=t.searchTerm.toLowerCase();return e.label.toLowerCase().indexOf(n)>-1||e.value.toLowerCase().indexOf(n)>-1}))),n},t.prototype.getNewMatches=function(e){var t=this;if(e.secondaryOptions)this.matches=this.filter(e.secondaryOptions),this.ref.markForCheck();else{if(!e.getSecondaryOptionsAsync)throw new Error("An option needs to have either an array of secondaryOptions or a function getSecondaryOptionsAsync");this.internalMap.get(e.value)?(this.matches=this.filter(this.internalMap.get(e.value).items),this.ref.markForCheck()):(this.isLoading=!0,e.getSecondaryOptionsAsync().then((function(n){t.internalMap.set(e.value,{value:e.value,label:e.label,items:n}),t.matches=t.filter(n),t.isLoading=!1,t.ref.markForCheck(),setTimeout((function(){t.inputElement.nativeElement.focus()}))})),e.clearSecondaryOptions&&e.clearSecondaryOptions.subscribe((function(){t.clearPrimaryOption(e)})))}},t}(kt);Rt.decorators=[{type:t.Component,args:[{selector:"mixed-multi-picker-results",template:'\n <div class="mixed-multi-picker-groups">\n <novo-list direction="vertical">\n <novo-list-item\n *ngFor="let option of options"\n (click)="selectPrimaryOption(option, $event)"\n [class.active]="selectedPrimaryOption?.value === option.value"\n [attr.data-automation-id]="option.label"\n [class.disabled]="isLoading">\n <item-content>\n <i *ngIf="option.iconClass" [class]="option.iconClass"></i>\n <span data-automation-id="label">{{ option.label }}</span>\n </item-content>\n <item-end *ngIf="optionHasSecondaryOptions(option)">\n <i class="bhi-next"></i>\n </item-end>\n </novo-list-item>\n </novo-list>\n </div>\n <div class="mixed-multi-picker-matches" [hidden]="!optionHasSecondaryOptions(selectedPrimaryOption)">\n <div class="mixed-multi-picker-input-container" [hidden]="!shouldShowSearchBox(selectedPrimaryOption)" data-automation-id="input-container">\n <input autofocus #input [(ngModel)]="searchTerm" [disabled]="isLoading" data-automation-id="input" [placeholder]="placeholder"/>\n <i class="bhi-search" *ngIf="!searchTerm" [class.disabled]="isLoading" data-automation-id="seach-icon"></i>\n <i class="bhi-times" *ngIf="searchTerm" (click)="clearSearchTerm($event)" [class.disabled]="isLoading" data-automation-id="remove-icon"></i>\n </div>\n <div class="mixed-multi-picker-list-container">\n <novo-list direction="vertical" #list>\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match) || isLoading"\n [attr.data-automation-id]="match.label">\n <item-content>\n <span>{{ match.label }}</span>\n </item-content>\n </novo-list-item>\n </novo-list>\n <div class="mixed-multi-picker-no-results" *ngIf="matches.length === 0 && !isLoading && selectedPrimaryOption" data-automation-id="empty-message">\n {{ config.emptyOptionsLabel ? config.emptyOptionsLabel : labels.groupedMultiPickerEmpty }}\n </div>\n <div class="mixed-multi-picker-loading" *ngIf="isLoading" data-automation-id="loading-message">\n <novo-loading theme="line"></novo-loading>\n </div>\n </div>\n </div>'}]}],Rt.ctorParameters=function(){return[{type:t.ElementRef},{type:t.Renderer2},{type:Ne},{type:t.ChangeDetectorRef}]},Rt.propDecorators={inputElement:[{type:t.ViewChild,args:["input",{static:!0}]}],listElement:[{type:t.ViewChild,args:["list"]}]};var Mt=function(e){function t(t,n,o){var a=e.call(this,t,o)||this;return a.element=t,a.labels=n,a.active=!0,a.limitedTo=!1,a.limit=200,a}return te(t,e),t.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},t.prototype.structureArray=function(t){var n=t;return t.hasOwnProperty("data")?(this.limitedTo=t.limitedTo200,this.total=t.total,n=t.data):n.length>this.limit&&(this.limitedTo=!0,this.total=n.length,n=n.slice(0,this.limit)),e.prototype.structureArray.call(this,n)},t}(kt);Mt.decorators=[{type:t.Component,args:[{selector:"skill-specialty-picker-results",template:'\n <section class="picker-loading" *ngIf="isLoading && !matches?.length"><novo-loading theme="line"></novo-loading></section>\n <novo-list *ngIf="matches.length > 0" direction="vertical">\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match)"\n >\n <item-content>\n <h6><span [innerHtml]="highlight(match.label, term)"></span></h6>\n <div class="category">\n <i class="bhi-category-tags"></i\n ><span [innerHtml]="highlight(match.data.categories || match.data.parentCategory.name, term)"></span>\n </div>\n </item-content>\n </novo-list-item>\n <novo-list-item *ngIf="limitedTo"\n ><div>{{ labels.showingXofXResults(limit, total) }}</div></novo-list-item\n >\n <novo-loading theme="line" *ngIf="isLoading && matches.length > 0"></novo-loading>\n </novo-list>\n <p class="picker-error" *ngIf="hasError">{{ labels.pickerError }}</p>\n <p class="picker-null" *ngIf="!isLoading && !matches.length && !hasError">{{ labels.pickerEmpty }}</p>\n '}]}],Mt.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]},Mt.propDecorators={active:[{type:t.HostBinding,args:["class.active"]}]};var Ft=function(e){function t(t,n,o,a){var i=e.call(this,t,a)||this;return i.sanitizer=n,i.labels=o,i.active=!0,i.sanitizer=n,i}return te(t,e),Object.defineProperty(t.prototype,"isHidden",{get:function(){return 0===this.matches.length},enumerable:!1,configurable:!0}),t.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},t.prototype.sanitizeHTML=function(e){return this.sanitizer.bypassSecurityTrustHtml(e)},t}(kt);Ft.decorators=[{type:t.Component,args:[{selector:"distribution-list-picker-results",template:'\n <section class="picker-loading" *ngIf="isLoading && !matches?.length">\n <novo-loading theme="line"></novo-loading>\n </section>\n <novo-list direction="vertical" *ngIf="matches?.length > 0 && !hasError">\n <novo-list-item *ngFor="let match of matches" (click)="selectMatch($event)" [class.active]="match === activeMatch" (mouseenter)="selectActive(match)" [class.disabled]="preselected(match)">\n <item-header>\n <item-title>\n <span [innerHtml]="sanitizeHTML(match.label)"></span>\n </item-title>\n </item-header>\n <item-content direction="horizontal">\n <p>\n <span class=\'label\'>{{ labels.distributionListOwner }}: </span><span>{{ match?.data?.owner?.name }}</span>\n </p>\n <p>\n <span class=\'label\'>{{ labels.dateAdded }}: </span><span>{{ labels.formatDateWithFormat(match?.data?.dateAdded, { year: \'numeric\', month: \'numeric\', day: \'numeric\' }) }}</span>\n </p>\n </item-content>\n </novo-list-item>\n <novo-loading theme="line" *ngIf="isLoading && matches?.length > 0"></novo-loading>\n </novo-list>\n '}]}],Ft.ctorParameters=function(){return[{type:t.ElementRef},{type:f.DomSanitizer},{type:Ne},{type:t.ChangeDetectorRef}]},Ft.propDecorators={active:[{type:t.HostBinding,args:["class.active"]}],isHidden:[{type:t.HostBinding,args:["hidden"]}]};var Lt=function(e){function t(t,n,o,a){var i=e.call(this,t,a)||this;return i.sanitizer=n,i.labels=o,i.active=!0,i.sanitizer=n,i}return te(t,e),Object.defineProperty(t.prototype,"isHidden",{get:function(){return 0===this.matches.length},enumerable:!1,configurable:!0}),t.prototype.getListElement=function(){return this.element.nativeElement.querySelector("novo-list")},t.prototype.sanitizeHTML=function(e,t){return this.sanitizer.bypassSecurityTrustHtml(e+" | "+t)},t}(kt);Lt.decorators=[{type:t.Component,args:[{selector:"workers-comp-codes-picker-results",template:'\n <section class="picker-loading" *ngIf="isLoading && !matches?.length">\n <novo-loading theme="line"></novo-loading>\n </section>\n <novo-list direction="vertical" *ngIf="matches?.length > 0 && !hasError">\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match === activeMatch"\n (mouseenter)="selectActive(match)"\n [class.disabled]="preselected(match)"\n >\n <item-header>\n <item-title>\n <span [innerHtml]="sanitizeHTML(match?.data?.compensation?.code, match?.data?.compensation?.name)"></span>\n </item-title>\n </item-header>\n <item-content direction="horizontal">\n <p>\n <span class="label">{{ labels.state }}: </span><span>{{ match?.data?.compensation?.state }}</span>\n </p>\n <p>\n <span class="label">{{ labels.rate }}: </span><span>{{ labels.formatCurrency(match?.data?.rate) }}</span>\n </p>\n </item-content>\n <item-content direction="horizontal">\n <p>\n <span class="label">{{ labels.startDate }}: </span\n ><span>{{ labels.formatDateWithFormat(match?.data?.startDate, { year: \'numeric\', month: \'numeric\', day: \'numeric\' }) }}</span>\n </p>\n <p>\n <span class="label">{{ labels.endDate }}: </span\n ><span>{{ labels.formatDateWithFormat(match?.data?.endDate, { year: \'numeric\', month: \'numeric\', day: \'numeric\' }) }}</span>\n </p>\n </item-content>\n </novo-list-item>\n <novo-loading theme="line" *ngIf="isLoading && matches?.length > 0"></novo-loading>\n </novo-list>\n '}]}],Lt.ctorParameters=function(){return[{type:t.ElementRef},{type:f.DomSanitizer},{type:Ne},{type:t.ChangeDetectorRef}]},Lt.propDecorators={active:[{type:t.HostBinding,args:["class.active"]}],isHidden:[{type:t.HostBinding,args:["hidden"]}]};var Nt=function(){};Nt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,ze,pt,vt,St],declarations:[Ot,It,Pt,At,Dt,xt,Rt,Ft,Lt,Mt],exports:[Ot,It,Pt,At,Dt,xt,Rt,Ft,Lt,Mt]}]}];var Bt={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return _t})),multi:!0},Ht=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t.prototype.onSelect=function(e){return!1},t}(gt);Ht.decorators=[{type:t.Component,args:[{selector:"novo-row-chip",template:'<div class="novo-row-chips-columns"><ng-content></ng-content><i class="bhi-delete-o" *ngIf="!disabled" (click)="onRemove($event)"></i></div>'}]}];var _t=function(e){function t(t,n,o){var a=e.call(this,t,n,o)||this;return a.closeOnSelect=!0,a}return te(t,e),t.prototype.onKeyDown=function(e){},t}(ft);_t.decorators=[{type:t.Component,args:[{selector:"novo-row-chips",providers:[Bt],host:{"[class.with-value]":"items.length > 0"},template:'\n <div class="novo-row-chips-columns" *ngIf="items.length > 0">\n <div class="column-label" *ngFor="let column of source.columns">{{ column.label }}</div>\n </div>\n <div class="novo-row-chips-empty-message" *ngIf="source.emptyReadOnlyMessage && disablePickerInput && items.length === 0">{{source.emptyReadOnlyMessage}}</div>\n <novo-row-chip\n *ngFor="let item of _items | async"\n [type]="type || item?.value?.searchEntity"\n [class.selected]="item == selected"\n [disabled]="disablePickerInput"\n (remove)="remove($event, item)"\n (select)="select($event, item)">\n <div class="column-data" *ngFor="let column of source.columns"><span>{{ column.data(item) }}</span></div>\n </novo-row-chip>\n <novo-picker\n clearValueOnSelect="true"\n [closeOnSelect]="closeOnSelect"\n [config]="source"\n [disablePickerInput]="disablePickerInput"\n [hidden]="disablePickerInput"\n [placeholder]="placeholder"\n [(ngModel)]="itemToAdd"\n (select)="add($event)"\n (keydown)="onKeyDown($event)"\n (focus)="onFocus($event)"\n (typing)="onTyping($event)"\n (blur)="onTouched($event)"\n [selected]="items"\n [overrideElement]="element"\n *ngIf="!maxlength || (maxlength && items.length < maxlength)">\n </novo-picker>\n <div class="preview-container">\n <span #preview></span>\n </div>\n '}]}],_t.ctorParameters=function(){return[{type:t.ElementRef},{type:mt},{type:Ne}]},_t.propDecorators={closeOnSelect:[{type:t.Input}]};var Gt=function(){};Gt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,Nt],declarations:[gt,ft,Ht,_t],exports:[gt,ft,Ht,_t]}]}];var Vt={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Ut})),multi:!0},Ut=function(){function e(e){this.zone=e,this.startupFocus=!1,this.fileBrowserImageUploadUrl="",this.disabled=!1,this.change=new t.EventEmitter,this.ready=new t.EventEmitter,this.blur=new t.EventEmitter,this.focus=new t.EventEmitter,this.paste=new t.EventEmitter,this.loaded=new t.EventEmitter,this._value=""}return Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){e!==this._value&&(this._value=e,this.onChange(e))},enumerable:!1,configurable:!0}),e.prototype.ngOnDestroy=function(){var e=this;this.instance&&(this.instance.focusManager.blur(!0),setTimeout((function(){e.instance.removeAllListeners();var t=CKEDITOR.instances[e.instance.name];t&&t.destroy(),e.instance.destroy(),e.instance=null})))},e.prototype.ngAfterViewInit=function(){var e=Object.assign(this.getBaseConfig(),this.config);this.startupFocus&&(e.startupFocus=!0),this.disabled&&(e.readOnly=!0),this.ckeditorInit(e)},e.prototype.updateValue=function(e){var t=this;this.zone.run((function(){t.value=e,t.onChange(e),t.onTouched(),t.change.emit(e)}))},e.prototype.ckeditorInit=function(e){var t=this;CKEDITOR?(this.instance=CKEDITOR.replace(this.host.nativeElement,e),this.instance.setData(this.value),this.instance.on("instanceReady",(function(e){t.ready.emit(e)})),this.instance.on("change",(function(){t.onTouched();var e=t.instance.getData();t.debounce?(t.debounceTimeout&&clearTimeout(t.debounceTimeout),t.debounceTimeout=setTimeout((function(){t.updateValue(e),t.debounceTimeout=null}),parseInt(t.debounce,10))):t.updateValue(e)})),this.instance.on("blur",(function(e){t.blur.emit(e)})),this.instance.on("focus",(function(e){t.focus.emit(e)})),this.instance.on("paste",(function(e){t.paste.emit(e)})),this.instance.on("loaded",(function(e){t.loaded.emit(e)}))):console.error("Make sure to include CKEditor sources in your dependencies!")},e.prototype.getBaseConfig=function(){var e={enterMode:CKEDITOR.ENTER_BR,shiftEnterMode:CKEDITOR.ENTER_P,disableNativeSpellChecker:!1,removePlugins:"liststyle,tabletools,contextmenu",extraAllowedContent:"*(*){*};table tbody tr td th[*];",font_names:"Arial/Arial, Helvetica, sans-serif;Calibri/Calibri, Verdana, Geneva, sans-serif;Comic Sans MS/Comic Sans MS, cursive;Courier New/Courier New, Courier, monospace;Georgia/Georgia, serif;Lucida Sans Unicode/Lucida Sans Unicode, Lucida Grande, sans-serif;Tahoma/Tahoma, Geneva, sans-serif;Times New Roman/Times New Roman, Times, serif;Trebuchet MS/Trebuchet MS, Helvetica, sans-serif;Verdana/Verdana, Geneva, sans-serif"},t={toolbar:[{name:"clipboard",items:["Paste","PasteText","PasteFromWord","Undo","Redo"]},{name:"paragraph",items:["NumberedList","BulletedList","Outdent","Indent","Blockquote","JustifyLeft","JustifyCenter","JustifyRight","JustifyBlock","BidiLtr","BidiRtl"]},{name:"links",items:["Link"]},{name:"insert",items:["Image","Table","HorizontalRule"]},{name:"tools",items:["Maximize","Source"]},"/",{name:"basicstyles",items:["Bold","Italic","Underline","Strike","Subscript","Superscript"]},{name:"styles",items:["Styles","Format","Font","FontSize"]},{name:"colors",items:["TextColor","BGColor"]}],filebrowserImageUploadUrl:this.fileBrowserImageUploadUrl};return Object.assign(e,this.minimal?{toolbar:[{name:"basicstyles",items:["Styles","FontSize","Bold","Italic","Underline","TextColor","-","NumberedList","BulletedList","Outdent","Indent","Link"]}]}:t)},e.prototype.writeValue=function(e){this._value=e,this.instance&&this.instance.setData(e)},e.prototype.onChange=function(e){},e.prototype.onTouched=function(e){},e.prototype.registerOnChange=function(e){this.onChange=e},e.prototype.registerOnTouched=function(e){this.onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e,this.instance&&CKEDITOR.instances[this.instance.name].setReadOnly(e)},e.prototype.insertText=function(e){var t=e.trim();this.instance.insertText(t)},e}();Ut.decorators=[{type:t.Component,args:[{selector:"novo-editor",providers:[Vt],template:'<textarea [name]="name" [id]="name" #host></textarea>'}]}],Ut.ctorParameters=function(){return[{type:t.NgZone}]},Ut.propDecorators={config:[{type:t.Input}],debounce:[{type:t.Input}],name:[{type:t.Input}],minimal:[{type:t.Input}],startupFocus:[{type:t.Input}],fileBrowserImageUploadUrl:[{type:t.Input}],disabled:[{type:t.Input}],change:[{type:t.Output}],ready:[{type:t.Output}],blur:[{type:t.Output}],focus:[{type:t.Output}],paste:[{type:t.Output}],loaded:[{type:t.Output}],host:[{type:t.ViewChild,args:["host"]}],value:[{type:t.Input}]};var Kt=function(){};Kt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule],declarations:[Ut],exports:[Ut]}]}];var zt=function(){function e(e){this.template=e}return e.prototype.getType=function(){return this.name},e}();zt.decorators=[{type:t.Directive,args:[{selector:"[novoTemplate]"}]}],zt.ctorParameters=function(){return[{type:t.TemplateRef}]},zt.propDecorators={type:[{type:t.Input}],name:[{type:t.Input,args:["novoTemplate"]}]};var jt=function(){};jt.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],exports:[zt],declarations:[zt]}]}];var $t=function(){function e(){}return e.constructFilter=function(e,t,n){var o=e;return e&&(t&&"date"===t&&(o=e.startDate&&e.endDate?{min:p.startOfDay(e.startDate.date),max:p.startOfDay(p.addDays(p.startOfDay(e.endDate.date),1))}:{min:e.min?p.addDays(p.startOfToday(),e.min):p.startOfToday(),max:e.max?p.addDays(p.endOfToday(),e.max):p.endOfToday()}),n&&Array.isArray(e)?o=e.map((function(e){return e&&e.hasOwnProperty("value")?e.value:e})):o&&o.hasOwnProperty("value")&&(o=e.value)),o},e}(),Wt=function(){function e(){this.selectionSource=new u.Subject,this.paginationSource=new u.Subject,this.sortFilterSource=new u.Subject,this.resetSource=new u.Subject,this.expandSource=new u.Subject,this.dataLoaded=new u.Subject,this.sort=void 0,this.filter=void 0,this.page=0,this.pageSize=void 0,this.globalSearch=void 0,this.selectedRows=new Map,this.expandedRows=new Set,this.isForceRefresh=!1,this.updates=new t.EventEmitter,this.retainSelected=!1}return Object.defineProperty(e.prototype,"userFiltered",{get:function(){return!!(this.filter||this.sort||this.globalSearch||this.outsideFilter)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"userFilteredInternal",{get:function(){return!!(this.filter||this.sort||this.globalSearch)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return Array.from(this.selectedRows.values())},enumerable:!1,configurable:!0}),e.prototype.reset=function(e,t){void 0===e&&(e=!0),t||(this.sort=void 0,this.globalSearch=void 0,this.filter=void 0),this.page=0,this.retainSelected||(this.selectedRows.clear(),this.resetSource.next()),this.onSortFilterChange(),this.retainSelected=!1,e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.clearSort=function(e){void 0===e&&(e=!0),this.sort=void 0,this.page=0,this.checkRetainment("sort"),this.reset(e,!0),this.onSortFilterChange(),e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.clearFilter=function(e){void 0===e&&(e=!0),this.filter=void 0,this.globalSearch=void 0,this.page=0,this.checkRetainment("filter"),this.reset(e,!0),this.onSortFilterChange(),e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.clearSelected=function(e){void 0===e&&(e=!0),this.globalSearch=void 0,this.page=0,this.reset(e,!0),this.onSelectionChange(),e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.onSelectionChange=function(){this.selectionSource.next()},e.prototype.onExpandChange=function(e){this.expandSource.next(e)},e.prototype.onPaginationChange=function(e,t){this.checkRetainment("page"),this.paginationSource.next({isPageSizeChange:e,pageSize:t})},e.prototype.onSortFilterChange=function(){this.checkRetainment("sort"),this.checkRetainment("filter"),this.sortFilterSource.next({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e.prototype.setInitialSortFilter=function(e){if(e&&(e.sort&&(this.sort=e.sort),e.filter)){var t=R.convertToArray(e.filter);t.forEach((function(e){e.value=e.selectedOption&&e.type?$t.constructFilter(e.selectedOption,e.type):e.value})),this.filter=t}},e.prototype.checkRetainment=function(e){var t;this.retainSelected=(null===(t=this.selectionOptions)||void 0===t?void 0:t.some((function(t){return t.label===e})))||this.retainSelected},e}();Wt.decorators=[{type:t.Injectable}];var Zt=function(){function e(e,n,o){this.state=e,this.ref=n,this.labels=o,this.selectedClear=new t.EventEmitter,this.sortClear=new t.EventEmitter,this.filterClear=new t.EventEmitter,this.allClear=new t.EventEmitter}return e.prototype.clearSort=function(){this.state.clearSort(),this.sortClear.emit(!0)},e.prototype.clearFilter=function(){this.state.clearFilter(),this.filterClear.emit(!0)},e.prototype.clearSelected=function(){this.state.clearSelected(),this.selectedClear.emit(!0)},e.prototype.clearAll=function(){this.state.reset(),this.allClear.emit(!0),this.selectedClear.emit(!0),this.sortClear.emit(!0),this.filterClear.emit(!0)},e}();Zt.decorators=[{type:t.Component,args:[{selector:"novo-data-table-clear-button",template:'\n <novo-dropdown side="bottom-right" class="novo-data-table-clear-button" data-automation-id="novo-data-table-clear-dropdown">\n <button type="button" theme="primary" color="negative" icon="collapse" data-automation-id="novo-data-table-clear-dropdown-btn">{{ labels.clear }}</button>\n <list>\n <item *ngIf="state.selected.length > 0" (click)="clearSelected()" data-automation-id="novo-data-table-clear-dropdown-clear-selected">{{ labels.clearSelected }}</item>\n <item *ngIf="state.sort" (click)="clearSort()" data-automation-id="novo-data-table-clear-dropdown-clear-sort">{{ labels.clearSort }}</item>\n <item *ngIf="state.filter" (click)="clearFilter()" data-automation-id="novo-data-table-clear-dropdown-clear-filter">{{ labels.clearFilter }}</item>\n <item *ngIf="state.sort && state.filter" (click)="clearAll()" data-automation-id="novo-data-table-clear-dropdown-clear-all">{{ labels.clearAllNormalCase }}</item>\n </list>\n </novo-dropdown>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Zt.ctorParameters=function(){return[{type:Wt},{type:t.ChangeDetectorRef},{type:Ne}]},Zt.propDecorators={selectedClear:[{type:t.Output}],sortClear:[{type:t.Output}],filterClear:[{type:t.Output}],allClear:[{type:t.Output}]};var Yt=function(e){function t(t,n,o){var a=e.call(this)||this;return a.tableService=t,a.state=n,a.ref=o,a.total=0,a.currentTotal=0,a.current=0,a.loading=!1,a.pristine=!0,a.totalSet=!1,a}return te(t,e),Object.defineProperty(t.prototype,"totallyEmpty",{get:function(){return 0===this.total},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"currentlyEmpty",{get:function(){return 0===this.current},enumerable:!1,configurable:!0}),t.prototype.connect=function(){var e=this,t=[this.state.updates];return u.merge.apply(void 0,ae(t)).pipe(g.startWith(null),g.switchMap((function(){return e.pristine=!1,e.loading=!0,e.tableService.getTableResults(e.state.sort,e.state.filter,e.state.page,e.state.pageSize,e.state.globalSearch,e.state.outsideFilter)})),g.map((function(t){return!e.totalSet||e.state.isForceRefresh?(e.total=t.total,e.totalSet=!0,e.state.isForceRefresh=!1):t.total>e.total&&(e.total=t.total),e.currentTotal=t.total,e.current=t.results.length,e.data=t.results,e.state.retainSelected||e.state.selectedRows.clear(),e.state.retainSelected=!1,e.state.onSelectionChange(),setTimeout((function(){e.ref.markForCheck(),setTimeout((function(){e.loading=!1,e.state.dataLoaded.next(),e.ref.markForCheck()}))})),t.results})),g.catchError((function(t,n){return console.error(t,n),e.loading=!1,u.of(null)})))},t.prototype.disconnect=function(){},t}(y.DataSource),qt=function(){function e(e){void 0===e&&(e=[]),this.currentData=e,this.originalData=ae(e)}return e.prototype.getTableResults=function(e,t,n,o,a,i){void 0===n&&(n=0),this.currentData=ae(this.originalData);var r=this.originalData.length;return 0!==this.currentData.length&&(a&&(this.currentData=this.currentData.filter((function(e){return Object.keys(e).some((function(t){return(""+e[t]).toLowerCase().includes(a.toLowerCase())}))})),r=this.currentData.length),t&&(this.currentData=this.filterData(this.currentData,t),r=this.currentData.length),e&&(this.currentData=this.currentData.sort(R.sortByField(e.id,"desc"===e.value)),r=this.currentData.length),e||t||a||i||(this.currentData=ae(this.originalData)),R.isBlank(n)||R.isBlank(o)||(this.currentData=this.currentData.slice(n*o,(n+1)*o))),u.of({results:this.currentData,total:r})},e.prototype.filterData=function(e,t){return R.convertToArray(t).forEach((function(t){if(Array.isArray(t.value)){var n=R.convertToArray(t.value).map(R.escapeString);e=e.filter(R.filterByField(t.id,n))}else{var o=R.escapeString(t.value);e=e.filter(R.filterByField(t.id,o))}})),e},e}(),Jt=function(){function e(e,n){this.element=e,this.ref=n,this.parentScrollAction="close",this.side="default",this.scrollStrategy="reposition",this.width=-1,this.appendToBody=!1,this.toggled=new t.EventEmitter,this.activeIndex=-1,this.filterTerm="",this.clickHandler=this.togglePanel.bind(this),this.closeHandler=this.closePanel.bind(this)}return e.prototype.ngOnInit=function(){this.appendToBody&&wt("'appendToBody' has been deprecated. Please remove this attribute."),this.element.nativeElement.querySelector("button").addEventListener("click",this.clickHandler),this.parentScrollSelector&&(this.parentScrollElement=R.findAncestor(this.element.nativeElement,this.parentScrollSelector))},e.prototype.ngOnDestroy=function(){var e=this.element.nativeElement.querySelector("button");e&&e.removeEventListener("click",this.clickHandler),this.parentScrollElement&&"close"===this.parentScrollAction&&this.parentScrollElement.removeEventListener("scroll",this.closeHandler)},Object.defineProperty(e.prototype,"items",{set:function(e){this._items=e,this.activeIndex=-1,this._textItems=e.map((function(e){return e.element.nativeElement.innerText}))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),e.prototype.openPanel=function(){this.overlay.openPanel(),this.parentScrollElement&&"close"===this.parentScrollAction&&this.parentScrollElement.addEventListener("scroll",this.closeHandler),this.toggled.emit(!0)},e.prototype.closePanel=function(){this.overlay.closePanel(),this.parentScrollElement&&"close"===this.parentScrollAction&&this.parentScrollElement.removeEventListener("scroll",this.closeHandler),-1!==this.activeIndex&&(this._items.toArray()[this.activeIndex].active=!1),this.activeIndex=-1,this.ref.markForCheck(),this.toggled.emit(!1)},e.prototype.togglePanel=function(){this.panelOpen?this.closePanel():this.openPanel()},e.prototype.onKeyDown=function(e){var t=this;if(this.panelOpen&&e.keyCode===We.ESC)R.swallowEvent(e),this.closePanel();else if(e.keyCode===We.ENTER)R.swallowEvent(e),this._items.toArray()[this.activeIndex].onClick(e);else if(e.keyCode===We.DOWN){for(R.swallowEvent(e),-1!==this.activeIndex&&(this._items.toArray()[this.activeIndex].active=!1),this.activeIndex++,this.activeIndex===this._items.length&&(this.activeIndex=0);this._items.toArray()[this.activeIndex].disabled;)this.activeIndex++,this.activeIndex===this._items.length&&(this.activeIndex=0);this._items.toArray()[this.activeIndex].active=!0,this.scrollToActive()}else if(e.keyCode===We.UP){for(R.swallowEvent(e),-1!==this.activeIndex&&(this._items.toArray()[this.activeIndex].active=!1),this.activeIndex--,this.activeIndex<0&&(this.activeIndex=this._items.length-1);this._items.toArray()[this.activeIndex].disabled;)this.activeIndex--,this.activeIndex<0&&(this.activeIndex=this._items.length-1);this._items.toArray()[this.activeIndex].active=!0,this.scrollToActive()}else if(e.keyCode>=65&&e.keyCode<=90||e.keyCode>=96&&e.keyCode<=105||e.keyCode>=48&&e.keyCode<=57||e.keyCode===We.SPACE){R.swallowEvent(e),clearTimeout(this.filterTermTimeout),this.filterTermTimeout=setTimeout((function(){t.filterTerm=""}),2e3);var n=e.key;this.filterTerm=this.filterTerm.concat(n);var o=this._textItems.findIndex((function(e){return new RegExp("^"+t.filterTerm.toLowerCase()).test(e.trim().toLowerCase())}));-1!==o&&(-1!==this.activeIndex&&(this._items.toArray()[this.activeIndex].active=!1),this.activeIndex=o,this._items.toArray()[this.activeIndex].active=!0,this.scrollToActive())}else[We.BACKSPACE,We.DELETE].includes(e.keyCode)&&(R.swallowEvent(e),clearTimeout(this.filterTermTimeout),this.filterTermTimeout=setTimeout((function(){t.filterTerm=""}),2e3),this.filterTerm=this.filterTerm.slice(0,-1))},e.prototype.onOverlayKeyDown=function(e){e.keyCode!==We.ESC&&e.keyCode!==We.ENTER||(R.swallowEvent(e),this.closePanel())},e.prototype.scrollToActive=function(){var e=this.overlay.overlayRef.overlayElement.querySelector(".dropdown-container"),t=this._items.toArray()[this.activeIndex];e&&t&&(e.scrollTop=t.element.nativeElement.offsetTop)},e}();Jt.decorators=[{type:t.Component,args:[{selector:"novo-dropdown",template:'\n <ng-content select="button" #trigger></ng-content>\n <novo-overlay-template [parent]="element" [width]="width" [position]="side" [scrollStrategy]="scrollStrategy">\n <div\n class="dropdown-container {{ containerClass }}"\n [style.height.px]="height"\n [class.has-height]="!!height"\n (keydown)="onOverlayKeyDown($event)"\n >\n <ng-content></ng-content>\n </div>\n </novo-overlay-template>\n '}]}],Jt.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},Jt.propDecorators={parentScrollSelector:[{type:t.Input}],parentScrollAction:[{type:t.Input}],containerClass:[{type:t.Input}],side:[{type:t.Input}],scrollStrategy:[{type:t.Input}],height:[{type:t.Input}],width:[{type:t.Input}],appendToBody:[{type:t.Input}],toggled:[{type:t.Output}],overlay:[{type:t.ViewChild,args:[yt]}],onKeyDown:[{type:t.HostListener,args:["keydown",["$event"]]}]};var Xt=function(){function e(e,n){this.dropdown=e,this.element=n,this.keepOpen=!1,this.action=new t.EventEmitter,this.active=!1}return e.prototype.onClick=function(e){this.disabled||(this.keepOpen||this.dropdown.closePanel(),this.action.emit({originalEvent:e}))},e}();Xt.decorators=[{type:t.Component,args:[{selector:"item",template:"<ng-content></ng-content>",host:{"[class.disabled]":"disabled","[class.active]":"active"}}]}],Xt.ctorParameters=function(){return[{type:Jt},{type:t.ElementRef}]},Xt.propDecorators={disabled:[{type:t.Input}],keepOpen:[{type:t.Input}],action:[{type:t.Output}],onClick:[{type:t.HostListener,args:["click",["$event"]]}]};var Qt=function(){function e(e){this.dropdown=e}return e.prototype.ngAfterContentInit=function(){var e=this;this.dropdown.items=this.items,this.items.changes.subscribe((function(){e.dropdown.items=e.items}))},e}();Qt.decorators=[{type:t.Component,args:[{selector:"list",template:"<ng-content></ng-content>"}]}],Qt.ctorParameters=function(){return[{type:Jt}]},Qt.propDecorators={items:[{type:t.ContentChildren,args:[Xt]}]};var en=function(){};en.decorators=[{type:t.Component,args:[{selector:"dropdown-item-header",template:"<ng-content></ng-content>"}]}];var tn=function(){function e(e){this.state=e}return e.prototype.filter=function(e,t,n,o,a,i){var r;void 0===a&&(a=!1),r=a?this.resolveMultiFilter(e,t,n,o,i):R.isBlank(n)?void 0:Object.assign({id:e,type:t,value:n,transform:o},i&&{selectedOption:i}),this.state.filter=r,this.state.checkRetainment("filter"),this.state.reset(!1,!0),this.state.updates.next({filter:r,sort:this.state.sort}),this.state.onSortFilterChange()},e.prototype.sort=function(e,t,n){var o={id:e,value:t,transform:n};this.state.sort=o,this.state.checkRetainment("sort"),this.state.reset(!1,!0),this.state.updates.next({sort:o,filter:this.state.filter}),this.state.onSortFilterChange()},e.prototype.resolveMultiFilter=function(e,t,n,o,a){var i,r=(i=R.convertToArray(this.state.filter)).findIndex((function(t){return t&&t.id===e}));return r>-1&&i.splice(r,1),R.isBlank(n)||(i=ae(i,[Object.assign({id:e,type:t,value:n,transform:o},a&&{selectedOption:a})])),i.length<1&&(i=void 0),i},e}();tn.decorators=[{type:t.Directive,args:[{selector:"[novoDataTableSortFilter]"}]}],tn.ctorParameters=function(){return[{type:Wt}]};var nn=function(){function e(e,t,n,o,a,i,r){var s=this;this.changeDetectorRef=e,this.labels=t,this.state=n,this.renderer=o,this.elementRef=a,this._sort=i,this._cdkColumnDef=r,this.allowMultipleFilters=!1,this.icon="sortable",this.filterActive=!1,this.sortActive=!1,this.showCustomRange=!1,this.multiSelect=!1,this.multiSelectedOptions=[],this.multiSelectedOptionIsHidden=[],this.optionFilter="",this.error=!1,this.subscriptions=[],this._rerenderSubscription=n.updates.subscribe((function(e){return s.checkSortFilterState(e)}))}return Object.defineProperty(e.prototype,"column",{set:function(e){this._column=e,this.label="action"===e.type?"":e.label,this.labelIcon=e.labelIcon,this.config={sortable:!!e.sortable,filterable:!!e.filterable,resizable:!!e.resizable},this.resizable=this.config.resizable;var t={};e.filterable&&R.isObject(e.filterable)?(this.config.filterConfig=e.filterable,this.config.filterConfig.type||(this.config.filterConfig={type:"text"}),e.filterable.transform&&(t.filter=e.filterable.transform)):this.config.filterConfig={type:"text"},e.sortable&&R.isObject(e.sortable)&&e.sortable.transform&&(t.sort=e.sortable.transform),"date"!==this.config.filterConfig.type||this.config.filterConfig.options||(this.config.filterConfig.options=this.getDefaultDateFilterOptions()),this.config.transforms=t},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this._cdkColumnDef&&(this.id=this._cdkColumnDef.name),this.setupFilterOptions(),this.changeDetectorRef.markForCheck()},e.prototype.setupFilterOptions=function(){this.checkSortFilterState({filter:this.state.filter,sort:this.state.sort},!0),this.multiSelect=!(!this.config.filterConfig||!this.config.filterConfig.type)&&"multi-select"===this.config.filterConfig.type,this.multiSelect&&(this.multiSelectedOptions=this.filter?ae(this.filter):[])},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe(),this.subscriptions.forEach((function(e){e.unsubscribe()}))},e.prototype.checkSortFilterState=function(e,t){var n=this;void 0===t&&(t=!1),e.sort&&e.sort.id===this.id?(this.icon="sort-"+e.sort.value,this.sortActive=!0):(this.icon="sortable",this.sortActive=!1);var o=R.convertToArray(e.filter).find((function(e){return e&&e.id===n.id}));o?(this.filterActive=!0,t&&"date"===o.type&&o.selectedOption&&(this.activeDateFilter=o.selectedOption.label||this.labels.customDateRange),this.filter=o.value):(this.filterActive=!1,this.filter=void 0,this.activeDateFilter=void 0,this.multiSelectedOptions=[]),this.defaultSort&&this.id===this.defaultSort.id&&(this.icon="sort-"+this.defaultSort.value,this.sortActive=!0),this.multiSelect=!(!this.config.filterConfig||!this.config.filterConfig.type)&&"multi-select"===this.config.filterConfig.type,this.multiSelect&&(this.multiSelectedOptions=this.filter?ae(this.filter):[],this.config.filterConfig.options&&(this.config.filterConfig.options[0],this.multiSelectedOptionIsHidden=this.config.filterConfig.options.map((function(e){return{option:e,hidden:!1}})))),this.changeDetectorRef.markForCheck()},e.prototype.isSelected=function(e,t){var n=this;if(t){var o=e.hasOwnProperty("value")?e.value:e;return void 0!==t.find((function(e){return n.optionPresentCheck(e,o)}))}return!1},e.prototype.toggleSelection=function(e){var t=this,n=e.hasOwnProperty("value")?e.value:e,o=this.multiSelectedOptions.findIndex((function(e){return t.optionPresentCheck(e,n)}));this.error=!1,o>-1?(this.multiSelectedOptions.splice(o,1),this.optionFilter&&!this.getOptionText(e).toLowerCase().startsWith(this.optionFilter.toLowerCase())&&(this.multiSelectedOptionIsHidden[this.multiSelectedOptionIsHidden.findIndex((function(t){return t.option===e}))].hidden=!0)):this.multiSelectedOptions.push(n)},e.prototype.optionPresentCheck=function(e,t){return e.hasOwnProperty("value")?e.value===t:e===t},e.prototype.cancel=function(){this.multiSelectedOptions=this.filter?ae(this.filter):[],this.dropdown.closePanel(),this.clearOptionFilter()},e.prototype.filterMultiSelect=function(){if(0!==this.multiSelectedOptions.length||this.filter){this.clearOptionFilter();var e=this.multiSelectedOptions.length>0?ae(this.multiSelectedOptions):void 0;this.filterData(e),this.dropdown.closePanel()}else this.multiSelectHasVisibleOptions()&&this.dropdown&&(this.error=!0)},e.prototype.multiSelectOptionFilter=function(e){var t=this;this.multiSelectedOptionIsHidden.forEach((function(n){n.option&&(n.hidden=!(t.getOptionText(n.option).toLowerCase().startsWith(e.toLowerCase())||t.isSelected(n.option,t.multiSelectedOptions)))}))},e.prototype.multiSelectOptionIsHidden=function(e){return this.multiSelectedOptionIsHidden.find((function(t){return t.option===e})).hidden},e.prototype.multiSelectHasVisibleOptions=function(){return this.multiSelectedOptionIsHidden.some((function(e){return!e.hidden}))},e.prototype.getOptionText=function(e){if("object"!=typeof e)return e.toString();var t=e;return(t.label.length>0?t.label:t.value).toString()},e.prototype.multiSelectOptionFilterHandleKeydown=function(e){this.multiSelect&&(this.error=!1,this.dropdown.panelOpen&&e.keyCode===We.ESC?(R.swallowEvent(e),this.clearOptionFilter(),this.dropdown.closePanel()):e.keyCode===We.ENTER?(R.swallowEvent(e),this.filterMultiSelect()):(e.keyCode>=65&&e.keyCode<=90||e.keyCode>=96&&e.keyCode<=105||e.keyCode>=48&&e.keyCode<=57)&&this.optionFilterInput.nativeElement.focus())},e.prototype.clearOptionFilter=function(){this.error=!1,this.optionFilter.length>0&&(this.optionFilter="",this.multiSelectedOptionIsHidden.forEach((function(e){e.hidden=!1})))},e.prototype.startResize=function(e){var t=this;e.preventDefault();var n=60+(this.config.filterable?30:0)+(this.config.sortable?30:0),o=this.elementRef.nativeElement.getBoundingClientRect().width,a=u.fromEvent(window.document,"mousemove").subscribe((function(a){var i=a.clientX-e.clientX,r=o+i;r<n&&(r=n),t._column.width=r,t.renderer.setStyle(t.elementRef.nativeElement,"min-width",t._column.width+"px"),t.renderer.setStyle(t.elementRef.nativeElement,"max-width",t._column.width+"px"),t.renderer.setStyle(t.elementRef.nativeElement,"width",t._column.width+"px"),t.changeDetectorRef.markForCheck(),t.resized.next(t._column)})),i=u.fromEvent(window.document,"mouseup").subscribe((function(){i.unsubscribe(),a.unsubscribe(),t.changeDetectorRef.markForCheck()}));this.subscriptions.push(a),this.subscriptions.push(i)},e.prototype.toggleCustomRange=function(e,t){R.swallowEvent(e),this.showCustomRange=t,this.changeDetectorRef.markForCheck(),this.dropdown.openPanel()},e.prototype.focusInput=function(){var e=this;this.filterInput&&this.filterInput.nativeElement&&setTimeout((function(){return e.filterInput.nativeElement.focus()}),0),this.multiSelect&&this.dropdown&&(this.dropdown.onKeyDown=function(t){e.multiSelectOptionFilterHandleKeydown(t)},setTimeout((function(){return e.optionFilterInput.nativeElement.focus()}),0),this.changeDetectorRef.markForCheck())},e.prototype.sort=function(){var e=this;this.changeTimeout&&clearTimeout(this.changeTimeout),this.changeTimeout=setTimeout((function(){e.direction=e.getNextSortDirection(e.direction),e._sort.sort(e.id,e.direction,e.config.transforms.sort),e.changeDetectorRef.markForCheck()}),300)},e.prototype.filterData=function(e){var t=this,n=$t.constructFilter(e,this.config.filterConfig.type,this.multiSelect),o="date"===this.config.filterConfig.type&&e?e:void 0;this.changeTimeout&&clearTimeout(this.changeTimeout),this.changeTimeout=setTimeout((function(){""===n&&(n=void 0),t._sort.filter(t.id,t.config.filterConfig.type,n,t.config.transforms.filter,t.allowMultipleFilters,o),t.changeDetectorRef.markForCheck()}),300)},e.prototype.clearFilter=function(){this.filter=void 0,this.multiSelectedOptions=[],this.activeDateFilter=void 0,this.filterData(void 0),this.clearOptionFilter(),this.dropdown.closePanel()},e.prototype.getNextSortDirection=function(e){return e&&"asc"===e?"desc":"asc"},e.prototype.getDefaultDateFilterOptions=function(){return[{label:this.labels.past1Day,min:-1,max:0},{label:this.labels.past7Days,min:-7,max:0},{label:this.labels.past30Days,min:-30,max:0},{label:this.labels.past90Days,min:-90,max:0},{label:this.labels.past1Year,min:-366,max:0},{label:this.labels.next1Day,min:0,max:1},{label:this.labels.next7Days,min:0,max:7},{label:this.labels.next30Days,min:0,max:30},{label:this.labels.next90Days,min:0,max:90},{label:this.labels.next1Year,min:0,max:366}]},e}();nn.decorators=[{type:t.Component,args:[{selector:"[novo-data-table-cell-config]",template:'\n <i class="bhi-{{ labelIcon }} label-icon" *ngIf="labelIcon" data-automation-id="novo-data-table-header-icon"></i>\n <label data-automation-id="novo-data-table-label">{{ label }}</label>\n <div>\n <button\n *ngIf="config.sortable"\n tooltipPosition="right"\n [tooltip]="labels.sort"\n theme="icon"\n [icon]="icon"\n (click)="sort()"\n [class.active]="sortActive"\n data-automation-id="novo-data-table-sort"\n [attr.data-feature-id]="\'novo-data-table-sort-\' + this.id"\n ></button>\n <novo-dropdown\n *ngIf="config.filterable"\n side="right"\n parentScrollSelector=".novo-data-table-container"\n containerClass="data-table-dropdown"\n data-automation-id="novo-data-table-filter"\n >\n <button\n type="button"\n theme="icon"\n icon="filter"\n [class.active]="filterActive"\n (click)="focusInput()"\n tooltipPosition="right"\n [tooltip]="labels.filters"\n [attr.data-feature-id]="\'novo-data-table-filter-\' + this.id"\n ></button>\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button\n theme="dialogue"\n color="negative"\n icon="times"\n (click)="clearFilter()"\n *ngIf="filter !== null && filter !== undefined && filter !== \'\'"\n data-automation-id="novo-data-table-filter-clear"\n >\n {{ labels.clear }}\n </button>\n </div>\n <ng-container [ngSwitch]="config.filterConfig.type">\n <list *ngSwitchCase="\'date\'">\n <ng-container *ngIf="!showCustomRange">\n <item\n [class.active]="activeDateFilter === option.label"\n *ngFor="let option of config.filterConfig.options"\n (click)="filterData(option)"\n [attr.data-automation-id]="\'novo-data-table-filter-\' + option.label"\n >\n {{ option.label }} <i class="bhi-check" *ngIf="activeDateFilter === option.label"></i>\n </item>\n </ng-container>\n <item\n [class.active]="labels.customDateRange === activeDateFilter"\n (click)="toggleCustomRange($event, true)"\n *ngIf="config.filterConfig.allowCustomRange && !showCustomRange"\n [keepOpen]="true"\n >\n {{ labels.customDateRange }} <i class="bhi-check" *ngIf="labels.customDateRange === activeDateFilter"></i>\n </item>\n <div class="calendar-container" *ngIf="showCustomRange">\n <div (click)="toggleCustomRange($event, false)"><i class="bhi-previous"></i>{{ labels.backToPresetFilters }}</div>\n <novo-date-picker (onSelect)="filterData($event)" [(ngModel)]="filter" range="true"></novo-date-picker>\n </div>\n </list>\n <list *ngSwitchCase="\'select\'">\n <item\n [class.active]="filter === option"\n *ngFor="let option of config.filterConfig.options"\n (click)="filterData(option)"\n [attr.data-automation-id]="\'novo-data-table-filter-\' + (option?.label || option)"\n >\n <span>{{ option?.label || option }}</span>\n <i class="bhi-check" *ngIf="option.hasOwnProperty(\'value\') ? filter === option.value : filter === option"></i>\n </item>\n </list>\n <list *ngSwitchCase="\'multi-select\'">\n <div class="dropdown-list-filter" (keydown)="multiSelectOptionFilterHandleKeydown($event)">\n <item class="filter-search" keepOpen="true">\n <input\n [(ngModel)]="optionFilter"\n (ngModelChange)="multiSelectOptionFilter($event)"\n #optionFilterInput\n data-automation-id="novo-data-table-multi-select-option-filter-input"\n />\n <i class="bhi-search"></i>\n <span class="error-text" [hidden]="!error || !multiSelectHasVisibleOptions()">{{ labels.selectFilterOptions }}</span>\n </item>\n </div>\n <div class="dropdown-list-options">\n <item\n *ngFor="let option of config.filterConfig.options"\n [hidden]="multiSelectOptionIsHidden(option)"\n (click)="toggleSelection(option)"\n [attr.data-automation-id]="\'novo-data-table-filter-\' + (option?.label || option)"\n [keepOpen]="true"\n >\n <span>{{ option?.label || option }}</span>\n <i\n [class.bhi-checkbox-empty]="!isSelected(option, multiSelectedOptions)"\n [class.bhi-checkbox-filled]="isSelected(option, multiSelectedOptions)"\n ></i>\n </item>\n </div>\n <p class="filter-null-results" [hidden]="multiSelectHasVisibleOptions()">{{ labels.pickerEmpty }}</p>\n </list>\n <list *ngSwitchCase="\'custom\'">\n <item class="filter-search" keepOpen="true">\n <ng-container *ngTemplateOutlet="filterTemplate; context: { $implicit: config }"></ng-container>\n </item>\n </list>\n <list *ngSwitchDefault>\n <item class="filter-search" keepOpen="true">\n <input\n [type]="config.filterConfig.type"\n [(ngModel)]="filter"\n (ngModelChange)="filterData($event)"\n #filterInput\n data-automation-id="novo-data-table-filter-input"\n />\n </item>\n </list>\n </ng-container>\n <div class="footer" *ngIf="multiSelect">\n <button theme="dialogue" color="dark" (click)="cancel()" data-automation-id="novo-data-table-multi-select-cancel">\n {{ labels.cancel }}\n </button>\n <button theme="dialogue" color="positive" (click)="filterMultiSelect()" data-automation-id="novo-data-table-multi-select-filter">\n {{ labels.filters }}\n </button>\n </div>\n </novo-dropdown>\n </div>\n <div class="spacer"></div>\n <div class="data-table-header-resizable" *ngIf="config.resizable"><span (mousedown)="startResize($event)"> </span></div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],nn.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:Ne},{type:Wt},{type:t.Renderer2},{type:t.ElementRef},{type:tn,decorators:[{type:t.Optional}]},{type:y.CdkColumnDef,decorators:[{type:t.Optional}]}]},nn.propDecorators={filterInput:[{type:t.ViewChild,args:["filterInput"]}],dropdown:[{type:t.ViewChild,args:[Jt]}],optionFilterInput:[{type:t.ViewChild,args:["optionFilterInput"]}],defaultSort:[{type:t.Input}],allowMultipleFilters:[{type:t.Input}],resized:[{type:t.Input}],filterTemplate:[{type:t.Input}],resizable:[{type:t.HostBinding,args:["class.resizable"]}],column:[{type:t.Input,args:["novo-data-table-cell-config"]}],multiSelectOptionFilterHandleKeydown:[{type:t.HostListener,args:["keydown",["$event"]]}]};var on=function(){function e(e,n,o){var a=this;this.labels=e,this.ref=n,this.state=o,this.globalSearchHiddenClassToggle=!1,this.resized=new t.EventEmitter,this.name="novo-data-table",this.allowMultipleFilters=!1,this.rowIdentifier="id",this.activeRowIdentifier="",this.trackByFn=function(e,t){return t.id},this.templates={},this.fixedHeader=!1,this.maxSelected=void 0,this.canSelectAll=!1,this._hideGlobalSearch=!0,this.preferencesChanged=new t.EventEmitter,this.allSelected=new t.EventEmitter,this.loading=!0,this.columnToTemplate={},this.columnsLoaded=!1,this.selection=new Set,this.scrollLeft=0,this.expandable=!1,this.initialized=!1,this.scrollListenerHandler=this.scrollListener.bind(this),this.sortFilterSubscription=this.state.sortFilterSource.subscribe((function(e){"novo-data-table"!==a.name?(a.preferencesChanged.emit({name:a.name,sort:e.sort,filter:e.filter,globalSearch:e.globalSearch}),a.performInteractions("change")):wt("Must have [name] set on data-table to use preferences!")})),this.paginationSubscription=this.state.paginationSource.subscribe((function(e){"novo-data-table"!==a.name?e.isPageSizeChange&&a.preferencesChanged.emit({name:a.name,pageSize:e.pageSize}):wt("Must have [name] set on data-table to use preferences!")})),this.resetSubscription=this.state.resetSource.subscribe((function(){setTimeout((function(){a.ref.detectChanges()}),300)}))}return Object.defineProperty(e.prototype,"displayedColumns",{get:function(){return this._disabledColumns},set:function(e){var t=this;this.displayedColumns&&0!==this.displayedColumns.length&&("novo-data-table"!==this.name?this.preferencesChanged.emit({name:this.name,displayedColumns:e}):wt("Must have [name] set on data-table to use preferences!")),this._disabledColumns=e,this.configureLastDisplayedColumn(),this.initialized&&setTimeout((function(){t.scrollListener()}))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"dataTableService",{set:function(e){this.loading=!1,e||(e=new qt([])),this.dataSource=new Yt(e,this.state,this.ref),this.ref.detectChanges()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{set:function(e){this.loading=!1;var t=new qt(e);this.dataSource=new Yt(t,this.state,this.ref),this.ref.detectChanges()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"outsideFilter",{set:function(e){var t=this;this.outsideFilterSubscription&&this.outsideFilterSubscription.unsubscribe(),e&&(this.outsideFilterSubscription=e.subscribe((function(e){t.state.outsideFilter=e,t.state.updates.next({globalSearch:t.state.globalSearch,filter:t.state.filter,sort:t.state.sort}),t.ref.markForCheck()})))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"refreshSubject",{set:function(e){var t=this;this.refreshSubscription&&this.refreshSubscription.unsubscribe(),e&&(this.refreshSubscription=e.subscribe((function(e){t.state.isForceRefresh=!0,t.state.updates.next({globalSearch:t.state.globalSearch,filter:t.state.filter,sort:t.state.sort}),t.ref.markForCheck()})))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"columns",{get:function(){return this._columns},set:function(e){this._columns=e,this.configureColumns(),this.performInteractions("init")},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"customFilter",{get:function(){return this._customFilter},set:function(e){this._customFilter=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hasExandedRows",{get:function(){return this._hasExandedRows},set:function(e){this._hasExandedRows=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"forceShowHeader",{get:function(){return this._forceShowHeader},set:function(e){this._forceShowHeader=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hideGlobalSearch",{get:function(){return this._hideGlobalSearch},set:function(e){this._hideGlobalSearch=m.coerceBooleanProperty(e),this.globalSearchHiddenClassToggle=this._hideGlobalSearch},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"empty",{get:function(){return this.dataSource&&this.dataSource.totallyEmpty},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"loadingClass",{get:function(){return this.loading||this.dataSource&&this.dataSource.loading},enumerable:!1,configurable:!0}),e.prototype.modifyCellHeaderMultiSelectFilterOptions=function(e,t){var n=this.cellHeaders.find((function(t){return t.id===e}));if(n&&n.config&&n.config.filterConfig&&n.config.filterConfig.options){var o=n.config.filterConfig.options.filter((function(e){return n.isSelected(e,n.multiSelectedOptions)&&!t.find((function(t){return e.value&&t.value&&t.value===e.value}))}));n.config.filterConfig.options=ae(o,t)}else n.config.filterConfig.options=t;n.setupFilterOptions(),n.changeDetectorRef.markForCheck()},e.prototype.ngOnDestroy=function(){this.outsideFilterSubscription&&this.outsideFilterSubscription.unsubscribe(),this.novoDataTableContainer&&this.novoDataTableContainer.nativeElement.removeEventListener("scroll",this.scrollListenerHandler),this.refreshSubscription&&this.refreshSubscription.unsubscribe(),this.resetSubscription&&this.resetSubscription.unsubscribe(),this.sortFilterSubscription&&this.sortFilterSubscription.unsubscribe()},e.prototype.ngAfterContentInit=function(){var e,t=this;this.displayedColumns&&this.displayedColumns.length&&(this.expandable=this.displayedColumns.includes("expand")),this.defaultTemplates.forEach((function(e){t.templates[e.getType()]||(t.templates[e.getType()]=e.template)})),this.customTemplates.forEach((function(e){t.templates[e.getType()]=e.template})),this.configureColumns(),this.paginationOptions&&!this.paginationOptions.page&&(this.paginationOptions.page=0),this.paginationOptions&&!this.paginationOptions.pageSize&&(this.paginationOptions.pageSize=50),this.paginationOptions&&!this.paginationOptions.pageSizeOptions&&(this.paginationOptions.pageSizeOptions=[10,25,50,100]),this.state.page=this.paginationOptions?this.paginationOptions.page:void 0,this.state.pageSize=this.paginationOptions?this.paginationOptions.pageSize:void 0,this.state.selectionOptions=null!==(e=this.selectionOptions)&&void 0!==e?e:void 0,this.novoDataTableContainer.nativeElement.addEventListener("scroll",this.scrollListenerHandler),this.initialized=!0,this.ref.markForCheck()},e.prototype.onSearchChange=function(e){this.state.globalSearch=e,this.state.reset(!1,!0),this.state.updates.next({globalSearch:e,filter:this.state.filter,sort:this.state.sort})},e.prototype.trackColumnsBy=function(e,t){return t.id},e.prototype.isDisabled=function(e,t){return!0===e.disabled||!!e.disabledFunc&&e.disabledFunc(t)},e.prototype.isExpanded=function(e){return!!e&&this.state.expandedRows.has(""+e[this.rowIdentifier])},e.prototype.expandRow=function(e){this.isExpanded(e)?this.state.expandedRows.delete(""+e[this.rowIdentifier]):this.state.expandedRows.add(""+e[this.rowIdentifier]),this.state.onExpandChange(e.id)},e.prototype.expandRows=function(e){var t=this;(this.dataSource.data||[]).forEach((function(n){e?t.state.expandedRows.add(""+n[t.rowIdentifier]):t.state.expandedRows.delete(""+n[t.rowIdentifier])})),this.state.onExpandChange()},e.prototype.allCurrentRowsExpanded=function(){for(var e=0;e<(this.dataSource.data||[]).length;e++)if(!this.isExpanded((this.dataSource.data||[])[e]))return!1;return!0},e.prototype.isSelected=function(e){return!!e&&this.state.selectedRows.has(""+e[this.rowIdentifier])},e.prototype.selectRow=function(e){this.isSelected(e)?this.state.selectedRows.delete(""+e[this.rowIdentifier]):this.state.selectedRows.set(""+e[this.rowIdentifier],e),this.state.onSelectionChange()},e.prototype.selectRows=function(e){var t=this;(this.dataSource.data||[]).forEach((function(n){e?t.state.selectedRows.set(""+n[t.rowIdentifier],n):t.state.selectedRows.delete(""+n[t.rowIdentifier])})),this.state.onSelectionChange()},e.prototype.allCurrentRowsSelected=function(){var e,t;if(!(null===(t=null===(e=this.dataSource)||void 0===e?void 0:e.data)||void 0===t?void 0:t.length))return!1;for(var n=0;n<(this.dataSource.data||[]).length;n++)if(!this.isSelected((this.dataSource.data||[])[n]))return!1;return!0},e.prototype.configureLastDisplayedColumn=function(){var e=this;if(this.columns&&this.displayedColumns&&0!==this.columns.length&&0!==this.displayedColumns.length){this.columns.forEach((function(e){e.initialResizable&&(e.resizable=e.initialResizable.resizable,e.width=e.initialResizable.width,e.initialResizable=void 0)}));var t=this.displayedColumns.filter((function(t){return-1!==e.columns.findIndex((function(e){return e.resizable&&e.id===t}))}));if(t&&t.length>0){var n=this.columns.find((function(e){return e.id===t[t.length-1]}));n.initialResizable={resizable:n.resizable,width:n.width},n.width=void 0,n.resizable=!1}}},e.prototype.configureColumns=function(){var e=this;this.columns&&0!==this.columns.length&&0!==Object.keys(this.templates).length&&(this.columns.forEach((function(t){var n;t.template?n=t.template:e.templates[t.id]?n=t.id:"action"===t.type?t.action&&t.action.options?(t.action.icon||(t.action.icon="collapse"),n="dropdownCellTemplate"):n="buttonCellTemplate":n="link:tel"===t.type||"link:mailto"===t.type?t.type.split(":")[1]+"CellTemplate":t.type+"CellTemplate",e.columnToTemplate[t.id]=e.templates[n]})),this.configureLastDisplayedColumn(),this.columnsLoaded=!0)},e.prototype.scrollListener=function(){var e=this.novoDataTableContainer.nativeElement;e.scrollLeft!==this.scrollLeft&&(this.scrollLeft=e.scrollLeft),this.ref.markForCheck()},e.prototype.performInteractions=function(e){var t,n;if(this.listInteractions)try{for(var o=ne(this.columns),a=o.next();!a.done;a=o.next()){var i=a.value,r=this.listInteractions[i.id],s=r&&r.find((function(t){return t.event.includes(e)}));s&&s.script(this,i.id)}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}},e}();on.decorators=[{type:t.Component,args:[{selector:"novo-data-table",animations:[d.trigger("expand",[d.state("void",d.style({height:"0px",minHeight:"0",visibility:"hidden"})),d.state("*",d.style({height:"*",visibility:"visible"})),d.transition("void <=> *",d.animate("70ms cubic-bezier(0.4, 0.0, 0.2, 1)"))])],template:'\n <header\n *ngIf="(!(dataSource?.totallyEmpty && !state.userFiltered) && !loading) || forceShowHeader"\n [class.empty]="hideGlobalSearch && !paginationOptions && !templates[\'customActions\']"\n >\n <ng-container *ngTemplateOutlet="templates[\'customHeader\']"></ng-container>\n <novo-search\n alwaysOpen="true"\n (searchChanged)="onSearchChange($event)"\n [(ngModel)]="state.globalSearch"\n *ngIf="!hideGlobalSearch"\n [placeholder]="searchOptions?.placeholder"\n [hint]="searchOptions?.tooltip"\n >\n </novo-search>\n <novo-data-table-pagination\n *ngIf="paginationOptions"\n [theme]="paginationOptions.theme"\n [length]="dataSource?.currentTotal"\n [page]="paginationOptions.page"\n [pageSize]="paginationOptions.pageSize"\n [pageSizeOptions]="paginationOptions.pageSizeOptions"\n [dataFeatureId]="paginatorDataFeatureId"\n >\n </novo-data-table-pagination>\n <div class="novo-data-table-actions" *ngIf="templates[\'customActions\']">\n <ng-container *ngTemplateOutlet="templates[\'customActions\']"></ng-container>\n </div>\n </header>\n <div class="novo-data-table-loading-mask" *ngIf="dataSource?.loading || loading" data-automation-id="novo-data-table-loading">\n <novo-loading></novo-loading>\n </div>\n <div class="novo-data-table-outside-container" [ngClass]="{ \'novo-data-table-outside-container-fixed\': fixedHeader }">\n <div class="novo-data-table-custom-filter" *ngIf="customFilter">\n <ng-container *ngTemplateOutlet="templates[\'customFilter\']"></ng-container>\n </div>\n <div\n #novoDataTableContainer\n class="novo-data-table-container"\n [ngClass]="{ \'novo-data-table-container-fixed\': fixedHeader }"\n [class.empty-user-filtered]="dataSource?.currentlyEmpty && state.userFiltered"\n [class.empty]="dataSource?.totallyEmpty && !dataSource?.loading && !loading && !state.userFiltered && !dataSource.pristine"\n >\n <cdk-table\n *ngIf="columns?.length > 0 && columnsLoaded && dataSource"\n [dataSource]="dataSource"\n [trackBy]="trackByFn"\n novoDataTableSortFilter\n [class.expandable]="expandable"\n [class.empty]="dataSource?.currentlyEmpty && state.userFiltered"\n [hidden]="dataSource?.totallyEmpty && !state.userFiltered"\n >\n <ng-container cdkColumnDef="selection">\n <novo-data-table-checkbox-header-cell *cdkHeaderCellDef [maxSelected]="maxSelected" [canSelectAll]="canSelectAll"></novo-data-table-checkbox-header-cell>\n <novo-data-table-checkbox-cell *cdkCellDef="let row; let i = index" [row]="row" [maxSelected]="maxSelected"></novo-data-table-checkbox-cell>\n </ng-container>\n <ng-container cdkColumnDef="expand">\n <novo-data-table-expand-header-cell *cdkHeaderCellDef></novo-data-table-expand-header-cell>\n <novo-data-table-expand-cell *cdkCellDef="let row; let i = index" [row]="row"></novo-data-table-expand-cell>\n </ng-container>\n <ng-container *ngFor="let column of columns; trackBy: trackColumnsBy" [cdkColumnDef]="column.id">\n <novo-data-table-header-cell\n *cdkHeaderCellDef\n [column]="column"\n [filterTemplate]="templates[\'column-filter-\' + column.id]"\n [novo-data-table-cell-config]="column"\n [resized]="resized"\n [defaultSort]="defaultSort"\n [allowMultipleFilters]="allowMultipleFilters"\n [class.empty]="column?.type === \'action\' && !column?.label"\n [class.button-header-cell]="column?.type === \'expand\' || (column?.type === \'action\' && !column?.action?.options)"\n [class.dropdown-header-cell]="column?.type === \'action\' && column?.action?.options"\n [class.fixed-header]="fixedHeader"\n ></novo-data-table-header-cell>\n <novo-data-table-cell\n *cdkCellDef="let row"\n [resized]="resized"\n [column]="column"\n [row]="row"\n [template]="columnToTemplate[column.id]"\n [class.empty]="column?.type === \'action\' && !column?.label"\n [class.button-cell]="column?.type === \'expand\' || (column?.type === \'action\' && !column?.action?.options)"\n [class.dropdown-cell]="column?.type === \'action\' && column?.action?.options"\n ></novo-data-table-cell>\n </ng-container>\n <novo-data-table-header-row\n *cdkHeaderRowDef="displayedColumns"\n [fixedHeader]="fixedHeader"\n data-automation-id="novo-data-table-header-row"\n ></novo-data-table-header-row>\n <novo-data-table-row\n *cdkRowDef="let row; columns: displayedColumns"\n [ngClass]="{ active: row[rowIdentifier] == activeRowIdentifier }"\n [novoDataTableExpand]="detailRowTemplate"\n [row]="row"\n [id]="name + \'-\' + row[rowIdentifier]"\n [dataAutomationId]="row[rowIdentifier]"\n ></novo-data-table-row>\n </cdk-table>\n <div class="novo-data-table-footer" *ngIf="templates[\'footer\']">\n <ng-container *ngTemplateOutlet="templates[\'footer\']; context: { $implicit: columns, data: dataSource.data }"></ng-container>\n </div>\n <div\n class="novo-data-table-no-results-container"\n [style.left.px]="scrollLeft"\n *ngIf="dataSource?.currentlyEmpty && state.userFiltered && !dataSource?.loading && !loading && !dataSource.pristine"\n >\n <div class="novo-data-table-empty-message">\n <ng-container *ngTemplateOutlet="templates[\'noResultsMessage\'] || templates[\'defaultNoResultsMessage\']"></ng-container>\n </div>\n </div>\n </div>\n <div\n class="novo-data-table-empty-container"\n *ngIf="dataSource?.totallyEmpty && !dataSource?.loading && !loading && !state.userFiltered && !dataSource.pristine"\n >\n <div class="novo-data-table-empty-message">\n <ng-container *ngTemplateOutlet="templates[\'emptyMessage\'] || templates[\'defaultNoResultsMessage\']"></ng-container>\n </div>\n </div>\n </div>\n \x3c!-- DEFAULT CELL TEMPLATE --\x3e\n <ng-template novoTemplate="textCellTemplate" let-row let-col="col">\n <span [style.width.px]="col?.width" [style.min-width.px]="col?.width" [style.max-width.px]="col?.width">{{\n row[col.id] | dataTableInterpolate: col\n }}</span>\n </ng-template>\n <ng-template novoTemplate="dateCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableDateRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="datetimeCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableDateTimeRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="timeCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableTimeRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="currencyCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableCurrencyRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="bigdecimalCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableBigDecimalRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="numberCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableNumberRenderer: col }}</span>\n </ng-template>\n <ng-template novoTemplate="percentCellTemplate" let-row let-col="col">\n <span>{{ row[col.id] | dataTableInterpolate: col | dataTableNumberRenderer: col:true }}</span>\n </ng-template>\n <ng-template novoTemplate="linkCellTemplate" let-row let-col="col">\n <a\n [attr.data-feature-id]="col?.attributes?.dataFeatureId"\n (click)="col.handlers?.click({ originalEvent: $event, row: row })"\n [style.width.px]="col?.width"\n [style.min-width.px]="col?.width"\n [style.max-width.px]="col?.width"\n >{{ row[col.id] | dataTableInterpolate: col }}</a\n >\n </ng-template>\n <ng-template novoTemplate="telCellTemplate" let-row let-col="col">\n <a href="tel:{{ row[col.id] | dataTableInterpolate: col }}" [target]="col?.attributes?.target">{{\n row[col.id] | dataTableInterpolate: col\n }}</a>\n </ng-template>\n <ng-template novoTemplate="mailtoCellTemplate" let-row let-col="col">\n <a href="mailto:{{ row[col.id] | dataTableInterpolate: col }}" [target]="col?.attributes?.target">{{\n row[col.id] | dataTableInterpolate: col\n }}</a>\n </ng-template>\n <ng-template novoTemplate="buttonCellTemplate" let-row let-col="col">\n <p [tooltip]="col?.action?.tooltip" tooltipPosition="right" [attr.data-feature-id]="col?.attributes?.dataFeatureId">\n <i\n class="bhi-{{ col?.action?.icon }} data-table-icon"\n (click)="col.handlers?.click({ originalEvent: $event, row: row })"\n [class.disabled]="isDisabled(col, row)"\n ></i>\n </p>\n </ng-template>\n <ng-template novoTemplate="dropdownCellTemplate" let-row let-col="col">\n <novo-dropdown parentScrollSelector=".novo-data-table-container" containerClass="novo-data-table-dropdown">\n <button type="button" theme="dialogue" [icon]="col.action.icon" inverse>{{ col.label }}</button>\n <list>\n <item\n *ngFor="let option of col?.action?.options"\n (action)="option.handlers.click({ originalEvent: $event?.originalEvent, row: row })"\n [disabled]="isDisabled(option, row)"\n >\n <span [attr.data-automation-id]="option.label">{{ option.label }}</span>\n </item>\n </list>\n </novo-dropdown>\n </ng-template>\n <ng-template novoTemplate="defaultNoResultsMessage">\n <h4><i class="bhi-search-question"></i> {{ labels.noMatchingRecordsMessage }}</h4>\n </ng-template>\n <ng-template novoTemplate="defaultEmptyMessage">\n <h4><i class="bhi-search-question"></i> {{ labels.emptyTableMessage }}</h4>\n </ng-template>\n <ng-template novoTemplate="expandedRow"> You did not provide an "expandedRow" template! </ng-template>\n <ng-template #detailRowTemplate let-row>\n <div class="novo-data-table-detail-row" [@expand] style="overflow: hidden">\n <ng-container *ngTemplateOutlet="templates[\'expandedRow\']; context: { $implicit: row }"></ng-container>\n </div>\n </ng-template>\n \x3c!-- CUSTOM CELLS PASSED IN --\x3e\n <ng-content></ng-content>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[Wt]}]}],on.ctorParameters=function(){return[{type:Ne},{type:t.ChangeDetectorRef},{type:Wt}]},on.propDecorators={globalSearchHiddenClassToggle:[{type:t.HostBinding,args:["class.global-search-hidden"]}],customTemplates:[{type:t.ContentChildren,args:[zt]}],defaultTemplates:[{type:t.ViewChildren,args:[zt]}],cellHeaders:[{type:t.ViewChildren,args:[nn]}],novoDataTableContainer:[{type:t.ViewChild,args:["novoDataTableContainer"]}],resized:[{type:t.Output}],displayedColumns:[{type:t.Input}],paginationOptions:[{type:t.Input}],searchOptions:[{type:t.Input}],selectionOptions:[{type:t.Input}],defaultSort:[{type:t.Input}],name:[{type:t.Input}],allowMultipleFilters:[{type:t.Input}],rowIdentifier:[{type:t.Input}],activeRowIdentifier:[{type:t.Input}],trackByFn:[{type:t.Input}],templates:[{type:t.Input}],fixedHeader:[{type:t.Input}],paginatorDataFeatureId:[{type:t.Input}],maxSelected:[{type:t.Input}],canSelectAll:[{type:t.Input}],dataTableService:[{type:t.Input}],rows:[{type:t.Input}],outsideFilter:[{type:t.Input}],refreshSubject:[{type:t.Input}],columns:[{type:t.Input}],customFilter:[{type:t.Input}],hasExandedRows:[{type:t.Input}],forceShowHeader:[{type:t.Input}],hideGlobalSearch:[{type:t.Input}],preferencesChanged:[{type:t.Output}],allSelected:[{type:t.Output}],empty:[{type:t.HostBinding,args:["class.empty"]}],loadingClass:[{type:t.HostBinding,args:["class.loading"]}],listInteractions:[{type:t.Input}]};var an=function(){};an.decorators=[{type:t.NgModule,args:[{imports:[vt],declarations:[Jt,Xt,Qt,en],exports:[Jt,Xt,Qt,en]}]}];var rn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return sn})),multi:!0},sn=function(){function e(e,n,o,a,i){this.element=e,this.labels=n,this.ref=o,this.focusMonitor=a,this.ngZone=i,this.placeholder="Select...",this.onSelect=new t.EventEmitter,this.selectedIndex=-1,this.empty=!0,this.header={open:!1,valid:!0,value:""},this.onModelChange=function(){},this.onModelTouched=function(){},this.filterTerm="",this.disabled=!1}return e.prototype.ngOnInit=function(){var e=this;this.focusMonitor.monitor(this.dropdown.nativeElement).subscribe((function(t){return e.ngZone.run((function(){"keyboard"!==t||e.disabled||e.openPanel()}))})),this.ngOnChanges()},e.prototype.ngOnChanges=function(e){var t=this;if(this.readonly=!0===this.readonly,this.options&&this.options.length&&"string"==typeof this.options[0]?this.filteredOptions=this.options.map((function(e){return{value:e,label:e}})):this.filteredOptions=(this.options||[]).filter((function(e){return!e.readOnly})).map((function(e){return Object.assign(Object.assign({},e),{active:!1})})),this.model||this.createdItem)if(this.createdItem){var n=this.options.find((function(e){return e.label===t.createdItem})),o=this.options.indexOf(n);this.select(n,o)}else this.writeValue(this.model);else this.clear();this.panelOpen&&this.openPanel()},e.prototype.ngOnDestroy=function(){this.focusMonitor.stopMonitoring(this.dropdown.nativeElement)},e.prototype.openPanel=function(){this.overlay.openPanel()},e.prototype.closePanel=function(){this.overlay.closePanel()},e.prototype.togglePanel=function(){var e=this;this.panelOpen?this.closePanel():(setTimeout((function(){e.dropdown.nativeElement.focus()})),this.openPanel())},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),e.prototype.setValueAndClose=function(e){var t;(null===(t=e.value)||void 0===t?void 0:t.disabled)||(e.value&&e.index>=0&&this.select(e.value,e.index),this.closePanel())},e.prototype.select=function(e,t,n){void 0===n&&(n=!0),this.selected&&(this.selected.active=!1),this.selectedIndex=t,this.selected=e,this.selected.active=!0,this.empty=!1,n&&(this.onModelChange(this.selected.value),this.onSelect.emit({selected:this.selected.value}))},e.prototype.clear=function(){this.selected&&(this.selected.active=!1),this.selected={label:this.placeholder,value:null,active:!1},this.header={open:!1,valid:!0,value:""},this.selectedIndex=-1,this.empty=!0},e.prototype.onKeyDown=function(e){var t=this;if([We.UP,We.DOWN].includes(e.keyCode)&&e.preventDefault(),[We.ESC,We.TAB].includes(e.keyCode))this.closePanel();else if(e.keyCode===We.ENTER)this.header.open&&this.header.value?this.saveHeader():this.setValueAndClose({value:this.filteredOptions[this.selectedIndex],index:this.selectedIndex});else if(e.keyCode===We.UP)this.panelOpen||this.openPanel(),this.selectedIndex>0&&(this.selectedIndex--,this.select(this.filteredOptions[this.selectedIndex],this.selectedIndex),this.scrollToSelected());else if(e.keyCode===We.DOWN)this.panelOpen||this.openPanel(),this.selectedIndex<this.filteredOptions.length-1&&(this.selectedIndex++,this.select(this.filteredOptions[this.selectedIndex],this.selectedIndex),this.scrollToSelected(),this.header.open&&this.toggleHeader(null,!1));else if(e.keyCode===We.UP&&0===this.selectedIndex)this.panelOpen||this.openPanel(),this.selectedIndex--,this.toggleHeader(null,!0);else if(e.keyCode>=65&&e.keyCode<=90||e.keyCode===We.SPACE){e.keyCode===We.SPACE&&e.preventDefault(),this.panelOpen||this.openPanel(),clearTimeout(this.filterTermTimeout),this.filterTermTimeout=setTimeout((function(){t.filterTerm=""}),2e3);var n=e.key;this.filterTerm=this.filterTerm.concat(n).toUpperCase();var o=this.filteredOptions.find((function(e){return 0===e.label.toUpperCase().indexOf(t.filterTerm)}));o&&(this.select(o,this.filteredOptions.indexOf(o)),this.scrollToSelected())}else[We.BACKSPACE,We.DELETE].includes(e.keyCode)&&(clearTimeout(this.filterTermTimeout),this.filterTermTimeout=setTimeout((function(){t.filterTerm=""}),2e3),this.filterTerm=this.filterTerm.slice(0,-1))},e.prototype.scrollToSelected=function(){this.scrollToIndex(this.selectedIndex)},e.prototype.scrollToIndex=function(e){var t=this.overlay.overlayRef.overlayElement.querySelector(".novo-select-list"),n=t.querySelectorAll("li")[this.headerConfig?e+1:e];n&&(t.scrollTop=n.offsetTop)},e.prototype.toggleHeader=function(e,t){void 0===t&&(t=!1),e&&(e.stopPropagation(),e.preventDefault()),this.header={open:void 0!==t?t:!this.header.open,value:"",valid:!0}},e.prototype.highlight=function(e,t){return t?e.replace(new RegExp(this.escapeRegexp(t),"gi"),"<strong>$&</strong>"):e},e.prototype.escapeRegexp=function(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")},e.prototype.saveHeader=function(){this.header.value?(this.headerConfig.onSave(this.header.value),this.createdItem=this.header.value,this.closePanel()):this.header.valid=!1},e.prototype.writeValue=function(e){if(this.model=e,this.options){var t=this.filteredOptions.find((function(t){return t.value===e||e&&t.value===e.id}))||this.options.find((function(t){return t.value===e||e&&t.value===e.id}));t||R.isEmpty(e)||(t={label:e,value:e}).readOnly||this.options.unshift(t),t?(this.select(t,this.filteredOptions.indexOf(t),!1),this.empty=!1):this.clear()}this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();sn.decorators=[{type:t.Component,args:[{selector:"novo-select",providers:[rn],template:'\n <div #dropdownElement (click)="togglePanel(); (false)" tabIndex="{{ disabled ? -1 : 0 }}" type="button" [class.empty]="empty">\n {{ selected.label }}<i class="bhi-collapse"></i>\n </div>\n <novo-overlay-template [parent]="element" position="center" (closing)="dropdown.nativeElement.focus()">\n <ul class="novo-select-list" tabIndex="-1" [class.header]="headerConfig" [class.active]="panelOpen">\n <ng-content></ng-content>\n <li *ngIf="headerConfig" class="select-header" [class.open]="header.open">\n <button *ngIf="!header.open" (click)="toggleHeader($event); (false)" tabIndex="-1" type="button" class="header">\n <i class="bhi-add-thin"></i> {{ headerConfig.label }}\n </button>\n <div *ngIf="header.open" [ngClass]="{ active: header.open }">\n <input\n autofocus\n type="text"\n [placeholder]="headerConfig.placeholder"\n [attr.id]="name"\n autocomplete="false"\n [(ngModel)]="header.value"\n [ngClass]="{ invalid: !header.valid }"\n />\n <footer>\n <button (click)="toggleHeader($event, false)">{{ labels.cancel }}</button>\n <button (click)="saveHeader()" class="primary">{{ labels.save }}</button>\n </footer>\n </div>\n </li>\n <li\n *ngFor="let option of filteredOptions; let i = index"\n [ngClass]="{ active: option.active, disabled: option.disabled }"\n (click)="setValueAndClose({ value: option, index: i })"\n [attr.data-automation-value]="option.label"\n [tooltip]="option.tooltip"\n [tooltipPosition]="option.tooltipPosition || \'right\'"\n >\n <span [innerHtml]="highlight(option.label, filterTerm)"></span> <i *ngIf="option.active" class="bhi-check"></i>\n </li>\n </ul>\n </novo-overlay-template>\n ',host:{"(keydown)":"onKeyDown($event)"}}]}],sn.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef},{type:v.FocusMonitor},{type:t.NgZone}]},sn.propDecorators={name:[{type:t.Input}],options:[{type:t.Input}],placeholder:[{type:t.Input}],readonly:[{type:t.Input}],headerConfig:[{type:t.Input}],onSelect:[{type:t.Output}],overlay:[{type:t.ViewChild,args:[yt,{static:!0}]}],dropdown:[{type:t.ViewChild,args:["dropdownElement",{static:!0}]}],onKeyDown:[{type:t.HostListener,args:["keydown",["$event"]]}]};var ln=function(){};ln.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,v.A11yModule,vt,U],declarations:[sn],exports:[sn]}]}];var cn=D,dn=function(){function e(){this.cancel=new t.EventEmitter,this.cloned=new t.EventEmitter,this.drag=new t.EventEmitter,this.dragend=new t.EventEmitter,this.drop=new t.EventEmitter,this.out=new t.EventEmitter,this.over=new t.EventEmitter,this.remove=new t.EventEmitter,this.shadow=new t.EventEmitter,this.dropModel=new t.EventEmitter,this.removeModel=new t.EventEmitter,this.events=["cancel","cloned","drag","dragend","drop","out","over","remove","shadow","dropModel","removeModel"],this.bags=[]}return e.prototype.add=function(e,t){var n=this.find(e);if(n)throw new Error("Bag named: "+e+" already exists.");return n={name:e,drake:t},this.bags.push(n),t.models&&this.handleModels(e,t),n.initEvents||this.setupEvents(n),n},e.prototype.find=function(e){for(var t=0;t<this.bags.length;t++)if(this.bags[t].name===e)return this.bags[t];return null},e.prototype.destroy=function(e){var t=this.find(e),n=this.bags.indexOf(t);this.bags.splice(n,1),t.drake.destroy()},e.prototype.setOptions=function(e,t){var n=this.add(e,cn(t));this.handleModels(e,n.drake)},e.prototype.handleModels=function(e,t){var n,o,a,i,r=this;t.on("remove",(function(n,a){t.models&&((i=t.models[t.containers.indexOf(a)]).splice(o,1),r.removeModel.emit([e,n,a]))})),t.on("drag",(function(e,t){n=e,o=r.domIndexOf(e,t)})),t.on("drop",(function(s,l,c){if(t.models){if(a=r.domIndexOf(s,l),i=t.models[t.containers.indexOf(c)],l===c)i.splice(a,0,i.splice(o,1)[0]);else{var d=n===s,p=t.models[t.containers.indexOf(l)],u=d?i[o]:JSON.parse(JSON.stringify(i[o]));d&&i.splice(o,1),p.splice(a,0,u),l.removeChild(s)}r.dropModel.emit([e,s,l,c])}}))},e.prototype.setupEvents=function(e){e.initEvents=!0;var t=this;this.events.forEach((function(n){e.drake.on(n,(function(){var o=Array.prototype.slice.call(arguments);t[n].emit([e.name].concat(o))}))}))},e.prototype.domIndexOf=function(e,t){return Array.prototype.indexOf.call(t.children,e)},e}();dn.decorators=[{type:t.Injectable}];var pn=D,un=function(){function e(e,t){this.dragulaService=t,this.drake=null,this.container=e.nativeElement}return e.prototype.ngOnInit=function(){var e=this.dragulaService.find(this.bag);e?(this.drake=e.drake,this.checkModel(),this.drake.containers.push(this.container)):(this.drake=pn({containers:[this.container]}),this.checkModel(),this.dragulaService.add(this.bag,this.drake))},e.prototype.checkModel=function(){this.dragulaModel&&(this.drake.models?this.drake.models.push(this.dragulaModel):this.drake.models=[this.dragulaModel])},e.prototype.ngOnChanges=function(e){if(e&&e.dragulaModel&&this.drake)if(this.drake.models){var t=this.drake.models.indexOf(e.dragulaModel.previousValue);this.drake.models.splice(t,1,e.dragulaModel.currentValue)}else this.drake.models=[e.dragulaModel.currentValue]},e}();un.decorators=[{type:t.Directive,args:[{selector:"[dragula]"}]}],un.ctorParameters=function(){return[{type:t.ElementRef},{type:dn}]},un.propDecorators={bag:[{type:t.Input,args:["dragula"]}],dragulaModel:[{type:t.Input}]};var mn=function(){};mn.decorators=[{type:t.NgModule,args:[{declarations:[un],exports:[un]}]}];var hn=[{code:"US",id:1,name:"United States",states:[{code:"AL",name:"Alabama"},{code:"AK",name:"Alaska"},{code:"AZ",name:"Arizona"},{code:"AR",name:"Arkansas"},{code:"CA",name:"California"},{code:"CO",name:"Colorado"},{code:"CT",name:"Connecticut"},{code:"DE",name:"Delaware"},{code:"DC",name:"District Of Columbia"},{code:"FL",name:"Florida"},{code:"GA",name:"Georgia"},{code:"GU",name:"Guam"},{code:"HI",name:"Hawaii"},{code:"ID",name:"Idaho"},{code:"IL",name:"Illinois"},{code:"IN",name:"Indiana"},{code:"IA",name:"Iowa"},{code:"KS",name:"Kansas"},{code:"KY",name:"Kentucky"},{code:"LA",name:"Louisiana"},{code:"ME",name:"Maine"},{code:"MH",name:"Marshall Islands"},{code:"MD",name:"Maryland"},{code:"MA",name:"Massachusetts"},{code:"MI",name:"Michigan"},{code:"MN",name:"Minnesota"},{code:"MS",name:"Mississippi"},{code:"MO",name:"Missouri"},{code:"MT",name:"Montana"},{code:"NE",name:"Nebraska"},{code:"NV",name:"Nevada"},{code:"NH",name:"New Hampshire"},{code:"NJ",name:"New Jersey"},{code:"NM",name:"New Mexico"},{code:"NY",name:"New York"},{code:"NC",name:"North Carolina"},{code:"ND",name:"North Dakota"},{code:"MP",name:"Northern Mariana Islands"},{code:"OH",name:"Ohio"},{code:"OK",name:"Oklahoma"},{code:"OR",name:"Oregon"},{code:"PW",name:"Palau"},{code:"PA",name:"Pennsylvania"},{code:"PR",name:"Puerto Rico"},{code:"RI",name:"Rhode Island"},{code:"SC",name:"South Carolina"},{code:"SD",name:"South Dakota"},{code:"TN",name:"Tennessee"},{code:"TX",name:"Texas"},{code:"UT",name:"Utah"},{code:"VT",name:"Vermont"},{code:"VI",name:"Virgin Islands"},{code:"VA",name:"Virginia"},{code:"WA",name:"Washington"},{code:"WV",name:"West Virginia"},{code:"WI",name:"Wisconsin"},{code:"WY",name:"Wyoming"}]},{code:"UK",id:2359,name:"United Kingdom",states:[{code:"ABD",name:"Aberdeenshire"},{code:"ALD",name:"Alderney"},{code:"ANS",name:"Angus"},{code:"ANN",name:"Antrim and Newtownabbey"},{code:"AGB",name:"Argyllshire"},{code:"ABC",name:"Armagh"},{code:"EAY",name:"Ayrshire"},{code:"BLA",name:"Ballymena"},{code:"BAY",name:"Ballymoney"},{code:"BNB",name:"Banbridge"},{code:"BAN",name:"Banffshire"},{code:"BDF",name:"Bedfordshire"},{code:"BFS",name:"Belfast"},{code:"BRK",name:"Berkshire"},{code:"BGW",name:"Blaenau Gwent"},{code:"SCB",name:"Borders"},{code:"BGE",name:"Bridgend"},{code:"BST",name:"Bristol"},{code:"BKM",name:"Buckinghamshire"},{code:"CAY",name:"Caerphilly"},{code:"CAI",name:"Caithness"},{code:"CAM",name:"Cambridgeshire"},{code:"CRF",name:"Cardiff"},{code:"CMN",name:"Carmarthenshire"},{code:"CKF",name:"Carrickfergus"},{code:"CAS",name:"Castlereagh"},{code:"CGN",name:"Ceredigion"},{code:"CHE",name:"Cheshire"},{code:"CLK",name:"Clackmannanshire"},{code:"CLR",name:"Coleraine"},{code:"CWY",name:"Conwy"},{code:"CKT",name:"Cookstown"},{code:"CON",name:"Cornwall"},{code:"DUR",name:"County Durham"},{code:"DRS",name:"County Londonderry"},{code:"CRA",name:"Craigavon"},{code:"CMA",name:"Cumbria"},{code:"DEN",name:"Denbighshire"},{code:"DBY",name:"Derbyshire"},{code:"DEV",name:"Devon"},{code:"DOR",name:"Dorset"},{code:"EDU",name:"Dumbartonshire"},{code:"DGY",name:"Dumfries and Galloway"},{code:"DGN",name:"Dungannon and South Tyrone"},{code:"ELN",name:"East Lothian"},{code:"ESX",name:"East Sussex"},{code:"ERY",name:"East Yorkshire"},{code:"ESS",name:"Essex"},{code:"FMO",name:"Fermanagh and Omagh"},{code:"FIF",name:"Fife"},{code:"FLN",name:"Flintshire"},{code:"GLG",name:"Glasgow"},{code:"GLS",name:"Gloucestershire"},{code:"LND",name:"Greater London"},{code:"MAN",name:"Greater Manchester"},{code:"GSY",name:"Guernsey"},{code:"GWN",name:"Gwynedd"},{code:"HAM",name:"Hampshire"},{code:"HEF",name:"Herefordshire"},{code:"HRM",name:"Herm"},{code:"HRT",name:"Hertfordshire"},{code:"HLD",name:"Highland"},{code:"INV",name:"Inverness-shire"},{code:"AGY",name:"Isle of Anglesey"},{code:"IOM",name:"Isle of Man"},{code:"IOW",name:"Isle of Wight"},{code:"JSY",name:"Jersey"},{code:"KEN",name:"Kent"},{code:"KCD",name:"Kincardineshire"},{code:"KKD",name:"Kirkcudbrightshire"},{code:"LAN",name:"Lancashire"},{code:"LRN",name:"Larne"},{code:"LEC",name:"Leicestershire"},{code:"LMV",name:"Limavady"},{code:"LIN",name:"Lincolnshire"},{code:"LBC",name:"Lisburn and Castlereagh"},{code:"MFT",name:"Magherafelt"},{code:"MER",name:"Merseyside"},{code:"MTY",name:"Merthyr Tydfil"},{code:"MLN",name:"Midlothian"},{code:"MON",name:"Monmouthshire"},{code:"MRY",name:"Morayshire"},{code:"MYL",name:"Moyle"},{code:"NAI",name:"Nairn"},{code:"NTL",name:"Neath Port Talbot"},{code:"NWP",name:"Newport"},{code:"NMD",name:"Newry, Mourne and Down"},{code:"NFK",name:"Norfolk"},{code:"AND",name:"North Down and Ards"},{code:"NLK",name:"North Lanarkshire"},{code:"NYK",name:"North Yorkshire"},{code:"NTH",name:"Northamptonshire"},{code:"NBL",name:"Northumberland"},{code:"NTT",name:"Nottinghamshire"},{code:"OMA",name:"Omagh"},{code:"ORK",name:"Orkney Islands"},{code:"OXF",name:"Oxfordshire"},{code:"PEM",name:"Pembrokeshire"},{code:"PKN",name:"Perth and Kinross"},{code:"PER",name:"Perthshire and Kinross"},{code:"POW",name:"Powys"},{code:"RCC",name:"Redcar and Cleveland"},{code:"RFW",name:"Renfrewshire"},{code:"RCT",name:"Rhondda Cynon Taff"},{code:"RUT",name:"Rutland"},{code:"SRK",name:"Sark"},{code:"ZET",name:"Shetland Islands"},{code:"SHR",name:"Shropshire"},{code:"SOM",name:"Somerset"},{code:"SLK",name:"South Lanarkshire"},{code:"SYK",name:"South Yorkshire"},{code:"STS",name:"Staffordshire"},{code:"STG",name:"Stirlingshire"},{code:"STR",name:"Strabane"},{code:"SFK",name:"Suffolk"},{code:"SRY",name:"Surrey"},{code:"SSX",name:"Sussex"},{code:"SUT",name:"Sutherland"},{code:"SWA",name:"Swansea"},{code:"TOF",name:"Torfaen"},{code:"TWR",name:"Tyne and Wear"},{code:"VGL",name:"Vale of Glamorgan"},{code:"WAR",name:"Warwickshire"},{code:"WLN",name:"West Lothian"},{code:"WMD",name:"West Midlands"},{code:"WSX",name:"West Sussex"},{code:"WRY",name:"West Yorkshire"},{code:"ELS",name:"Western Isles"},{code:"WIL",name:"Wiltshire"},{code:"WOR",name:"Worcestershire"},{code:"WRX",name:"Wrexham"}]},{code:"AF",id:2185,name:"Afghanistan",states:[{code:"AF01",name:"Badakhshan"},{code:"AF02",name:"Badghis"},{code:"AF03",name:"Baghlan"},{code:"AF30",name:"Balkh"},{code:"AF05",name:"Bamian"},{code:"AF41",name:"Daikondi"},{code:"AF06",name:"Farah"},{code:"AF07",name:"Faryab"},{code:"AF08",name:"Ghazni"},{code:"AF09",name:"Ghowr"},{code:"AF10",name:"Helmand"},{code:"AF11",name:"Herat"},{code:"AF31",name:"Jowzjan"},{code:"AF13",name:"Kabul"},{code:"AF23",name:"Kandahar"},{code:"AF14",name:"Kapisa"},{code:"AF37",name:"Khowst"},{code:"AF34",name:"Konar"},{code:"AF24",name:"Kondoz"},{code:"AF35",name:"Laghman"},{code:"AF17",name:"Lowgar"},{code:"AF18",name:"Nangarhar"},{code:"AF19",name:"Nimruz"},{code:"AF38",name:"Nurestan"},{code:"AF39",name:"Oruzgan"},{code:"AF36",name:"Paktia"},{code:"AF29",name:"Paktika"},{code:"AF42",name:"Panjshir"},{code:"AF40",name:"Parvan"},{code:"AF32",name:"Samangan"},{code:"AF33",name:"Sar-e Pol"},{code:"AF26",name:"Takhar"},{code:"AF27",name:"Vardak"},{code:"AF28",name:"Zabol"}]},{code:"AX",id:2407,name:"Åland Islands",states:[]},{code:"AL",id:2186,name:"Albania",states:[]},{code:"DZ",id:2187,name:"Algeria",states:[{code:"DZ.AR",name:"Adrar"},{code:"DZ.AD",name:"Aïn Defla"},{code:"DZ.AT",name:"Aïn Témouchent"},{code:"DZ.AL",name:"Algiers"},{code:"DZ.AN",name:"Annaba"},{code:"DZ.BT",name:"Batna"},{code:"DZ.BC",name:"Béchar"},{code:"DZ.BJ",name:"Béjaïa"},{code:"DZ.BS",name:"Biskra"},{code:"DZ.BL",name:"Blida"},{code:"DZ.BB",name:"Bordj Bou Arréridj"},{code:"DZ.BU",name:"Bouira"},{code:"DZ.BM",name:"Boumerdès"},{code:"DZ.CH",name:"Chlef"},{code:"DZ.CO",name:"Constantine"},{code:"DZ.DJ",name:"Djelfa"},{code:"DZ.EB",name:"El Bayadh"},{code:"DZ.EO",name:"El Oued"},{code:"DZ.ET",name:"El Tarf"},{code:"DZ.GR",name:"Ghardaïa"},{code:"DZ.GL",name:"Guelma"},{code:"DZ.IL",name:"Illizi"},{code:"DZ.JJ",name:"Jijel"},{code:"DZ.KH",name:"Khenchela"},{code:"DZ.LG",name:"Laghouat"},{code:"DZ.MC",name:"Mascara"},{code:"DZ.MD",name:"Médéa"},{code:"DZ.ML",name:"Mila"},{code:"DZ.MG",name:"Mostaganem"},{code:"DZ.MS",name:"Msila"},{code:"DZ.NA",name:"Naama"},{code:"DZ.OR",name:"Oran"},{code:"DZ.OG",name:"Ouargla"},{code:"DZ.OB",name:"Oum el Bouaghi"},{code:"DZ.RE",name:"Relizane"},{code:"DZ.SD",name:"Saïda"},{code:"DZ.SF",name:"Sétif"},{code:"DZ.SB",name:"Sidi Bel Abbès"},{code:"DZ.SK",name:"Skikda"},{code:"DZ.SA",name:"Souk Ahras"},{code:"DZ.TM",name:"Tamanrasset"},{code:"DZ.TB",name:"Tébessa"},{code:"DZ.TR",name:"Tiaret"},{code:"DZ.TN",name:"Tindouf"},{code:"DZ.TP",name:"Tipaza"},{code:"DZ.TS",name:"Tissemsilt"},{code:"DZ.TO",name:"Tizi Ouzou"},{code:"DZ.TL",name:"Tlemcen"}]},{code:"AS",id:2408,name:"American Samoa",states:[]},{code:"AD",id:2188,name:"Andorra",states:[]},{code:"AO",id:2189,name:"Angola",states:[{code:"AO19",name:"Bengo"},{code:"AO01",name:"Benguela"},{code:"AO02",name:"Bié"},{code:"AO03",name:"Cabinda"},{code:"AO04",name:"Cuando Cubango"},{code:"AO05",name:"Cuanza Norte"},{code:"AO06",name:"Cuanza Sul"},{code:"AO07",name:"Cunene"},{code:"AO08",name:"Huambo"},{code:"AO09",name:"Huíla"},{code:"AO20",name:"Luanda"},{code:"AO17",name:"Lunda Norte"},{code:"AO18",name:"Lunda Sul"},{code:"AO12",name:"Malanje"},{code:"AO14",name:"Moxico"},{code:"AO13",name:"Namibe"},{code:"AO15",name:"Uíge"},{code:"AO16",name:"Zaire"}]},{code:"AI",id:2409,name:"Anguilla",states:[]},{code:"AQ",id:2190,name:"Antarctica",states:[]},{code:"AG",id:2191,name:"Antigua and Barbuda",states:[]},{code:"AR",id:2192,name:"Argentina",states:[{code:"AR01",name:"Buenos Aires"},{code:"AR02",name:"Catamarca"},{code:"AR03",name:"Chaco"},{code:"AR04",name:"Chubut"},{code:"AR07",name:"Ciudad de Buenos Aires"},{code:"AR05",name:"Córdoba"},{code:"AR06",name:"Corrientes"},{code:"AR08",name:"Entre Ríos"},{code:"AR09",name:"Formosa"},{code:"AR10",name:"Jujuy"},{code:"AR11",name:"La Pampa"},{code:"AR12",name:"La Rioja"},{code:"AR13",name:"Mendoza"},{code:"AR14",name:"Misiones"},{code:"AR15",name:"Neuquén"},{code:"AR16",name:"Río Negro"},{code:"AR17",name:"Salta"},{code:"AR18",name:"San Juan"},{code:"AR19",name:"San Luis"},{code:"AR20",name:"Santa Cruz"},{code:"AR21",name:"Santa Fe"},{code:"AR22",name:"Santiago del Estero"},{code:"AR23",name:"Tierra del Fuego"},{code:"AR24",name:"Tucumán"}]},{code:"AM",id:2193,name:"Armenia",states:[]},{code:"AB",id:2373,name:"Aruba",states:[{code:"AW.AA",name:"Aruba"}]},{code:"AU",id:2194,name:"Australia",states:[{code:"ACT",name:"Australian Capital Territory"},{code:"NSW",name:"New South Wales"},{code:"NT",name:"Northern Territory"},{code:"QLD",name:"Queensland"},{code:"SA",name:"South Australia"},{code:"TAS",name:"Tasmania"},{code:"VIC",name:"Victoria"},{code:"WA",name:"Western Australia"}]},{code:"AT",id:2195,name:"Austria",states:[{code:"AU01",name:"Burgenland"},{code:"AU02",name:"Carinthia"},{code:"AU03",name:"Lower Austria"},{code:"AU05",name:"Salzburg"},{code:"AU06",name:"Styria"},{code:"AU07",name:"Tyrol"},{code:"AU04",name:"Upper Austria"},{code:"AU09",name:"Vienna"},{code:"AU08",name:"Vorarlberg"}]},{code:"AZ",id:2196,name:"Azerbaijan",states:[{code:"AZ-ABS",name:"Absheron"},{code:"AZ-AGM",name:"Aghdam"},{code:"AZ-AGS",name:"Aghdash"},{code:"AZ-AGC",name:"Aghjabedi"},{code:"AZ-AGA",name:"Aghstafa"},{code:"AZ-AGU",name:"Aghsu"},{code:"AZ-AB",name:"Ali-Bairamly"},{code:"AZ-AST",name:"Astara"},{code:"AZ-BAB",name:"Babek"},{code:"AZ-BA",name:"Baku"},{code:"AZ-BAL",name:"Balaken"},{code:"AZ-BAR",name:"Barda"},{code:"AZ-BEY",name:"Beilagan"},{code:"AZ-BIL",name:"Bilasuvar"},{code:"AZ-DAS",name:"Dashkesan"},{code:"AZ-DAV",name:"Devechi"},{code:"AZ-FUZ",name:"Fizuli"},{code:"AZ-QAB",name:"Gabala"},{code:"AZ-GAD",name:"Gadabey"},{code:"AZ-QAX",name:"Gakh"},{code:"AZ-GA",name:"Ganja"},{code:"AZ-QAZ",name:"Gazakh"},{code:"AZ-GOR",name:"Geranboy"},{code:"AZ-QOB",name:"Gobustan"},{code:"AZ-GOY",name:"Goychay"},{code:"AZ-QBA",name:"Guba"},{code:"AZ-QBI",name:"Gubadly"},{code:"AZ-QUS",name:"Gusar"},{code:"AZ-HAC",name:"Hacuqabul"},{code:"AZ-IMI",name:"Imishli"},{code:"AZ-ISM",name:"Ismailly"},{code:"AZ-CAL",name:"Jalilabad"},{code:"AZ-CAB",name:"Jebrail"},{code:"AZ-CUL",name:"Julfa"},{code:"AZ-KAL",name:"Kelbajar"},{code:"AZ-XAC",name:"Khachmaz"},{code:"AZ-XA",name:"Khankendy"},{code:"AZ-XAN",name:"Khanlar"},{code:"AZ-XCI",name:"Khojaly"},{code:"AZ-XVD",name:"Khojavend"},{code:"AZ-XIZ",name:"Khyzy"},{code:"AZ-KUR",name:"Kyurdamir"},{code:"AZ-LAC",name:"Lachin"},{code:"AZ-LAN",name:"Lenkaran"},{code:"AZ-LA",name:"Lenkaran"},{code:"AZ-LER",name:"Lerik"},{code:"AZ-MAS",name:"Masally"},{code:"AZ-MI",name:"Mingechevir"},{code:"AZ-NA",name:"Naftalan"},{code:"AZ-NX",name:"Nakhchivan"},{code:"AZ-NEF",name:"Neftchala"},{code:"AZ-OGU",name:"Oghuz"},{code:"AZ-ORD",name:"Ordubad"},{code:"AZ-SAT",name:"Saatly"},{code:"AZ-SAB",name:"Sabirabad"},{code:"AZ-SAL",name:"Salyan"},{code:"AZ-SMX",name:"Samuh"},{code:"AZ-SAD",name:"Sedarak"},{code:"AZ-SAH",name:"Shahbuz"},{code:"AZ-SMI",name:"Shamakhy"},{code:"AZ-SKR",name:"Shamkir"},{code:"AZ-SAK",name:"Sheki"},{code:"AZ-SA",name:"Sheki"},{code:"AZ-SAR",name:"Sherur"},{code:"AZ-SS",name:"Shusha"},{code:"AZ-SUS",name:"Shusha"},{code:"AZ-SIY",name:"Siazan"},{code:"AZ-SM",name:"Sumgayit"},{code:"AZ-TAR",name:"Terter"},{code:"AZ-TOV",name:"Tovuz"},{code:"AZ-UCA",name:"Ujar"},{code:"AZ-YAR",name:"Yardymly"},{code:"AZ-YE",name:"Yevlakh"},{code:"AZ-YEV",name:"Yevlakh"},{code:"AZ-ZAQ",name:"Zagatala"},{code:"AZ-ZAN",name:"Zangilan"},{code:"AZ-ZAR",name:"Zerdab"}]},{code:"BS",id:2197,name:"Bahamas",states:[{code:"BF24",name:"Acklins"},{code:"BF32",name:"Berry Islands"},{code:"BF05",name:"Bimini"},{code:"BF36",name:"Black Point"},{code:"BF06",name:"Cat Island"},{code:"BF37",name:"Central Abaco"},{code:"BF38",name:"Central Andros"},{code:"BF39",name:"Central Eleuthera"},{code:"BF25",name:"City of Freeport"},{code:"BF40",name:"Crooked Island"},{code:"BF41",name:"East Grand Bahama"},{code:"BF10",name:"Exuma"},{code:"BF42",name:"Grand Cay"},{code:"BS.GT\t",name:"Green Turtle Cay"},{code:"BF22",name:"Harbour Island"},{code:"BF43",name:"Hope Town"},{code:"BF13",name:"Inagua"},{code:"BF15",name:"Long Island"},{code:"BF44",name:"Mangrove Cay"},{code:"BF16",name:"Mayaguana"},{code:"BF45",name:"Moore's Island"},{code:"BS.NW",name:"New Providence"},{code:"BF46",name:"North Abaco"},{code:"BF47",name:"North Andros"},{code:"BF48",name:"North Eleuthera"},{code:"BF18",name:"Ragged Island"},{code:"BF49",name:"Rum Cay"},{code:"BF35",name:"San Salvador"},{code:"BF50",name:"South Abaco"},{code:"BF51",name:"South Andros"},{code:"BF52",name:"South Eleuthera"},{code:"BF53",name:"Spanish Wells"},{code:"BF54",name:"West Grand Bahama"}]},{code:"BH",id:2198,name:"Bahrain",states:[{code:"BA16",name:"Capital"},{code:"BA19",name:"Central"},{code:"BA15",name:"Muharraq"},{code:"BA18",name:"Northern"},{code:"BA17",name:"Southern"}]},{code:"BD",id:2199,name:"Bangladesh",states:[{code:"BG85",name:"Barisal"},{code:"BG84",name:"Chittagong"},{code:"BG81",name:"Dhaka"},{code:"BG82",name:"Khulna"},{code:"BG81",name:"Mymensingh"},{code:"BG83",name:"Rajshahi"},{code:"BG87",name:"Rangpur"},{code:"BG86",name:"Sylhet"}]},{code:"BB",id:2200,name:"Barbados",states:[{code:"BB01",name:"Christ Church"},{code:"BB02",name:"Saint Andrew"},{code:"BB03",name:"Saint George"},{code:"BB04",name:"Saint James"},{code:"BB05",name:"Saint John"},{code:"BB06",name:"Saint Joseph"},{code:"BB07",name:"Saint Lucy"},{code:"BB08",name:"Saint Michael"},{code:"BB09",name:"Saint Peter"},{code:"BB10",name:"Saint Philip"},{code:"BB11",name:"Saint Thomas"}]},{code:"BY",id:2201,name:"Belarus",states:[{code:"BO01",name:"Brest"},{code:"BO02",name:"Gomel"},{code:"BO03",name:"Grodno"},{code:"BO05",name:"Minsk"},{code:"BO04",name:"Minsk City"},{code:"BO06",name:"Mogilev"},{code:"BO07",name:"Vitebsk"}]},{code:"BE",id:2202,name:"Belgium",states:[{code:"BE01",name:"Antwerpen Province"},{code:"BE11",name:"Brussels-Capital Region"},{code:"BE12",name:"Flemish Brabant Province"},{code:"BE03",name:"Hainaut Province"},{code:"BE04",name:"Liege Province"},{code:"BE05",name:"Limburg Province"},{code:"BE06",name:"Luxembourg Province"},{code:"BE07",name:"Namur Province"},{code:"BE08",name:"Oost-Vlaanderen Province"},{code:"BE10",name:"Walloon Brabant Province"},{code:"BE09",name:"West-Vlaanderen Province"}]},{code:"BZ",id:2203,name:"Belize",states:[]},{code:"BJ",id:2204,name:"Benin",states:[{code:"BN07",name:"Alibori"},{code:"BN08",name:"Atacora"},{code:"BN09",name:"Atlantique"},{code:"BN10",name:"Borgou"},{code:"BN11",name:"Collines"},{code:"BN12",name:"Couffo"},{code:"BN13",name:"Donga"},{code:"BN14",name:"Littoral"},{code:"BN15",name:"Mono"},{code:"BN16",name:"Ouémé"},{code:"BN17",name:"Plateau"},{code:"BN18",name:"Zou"}]},{code:"BU",id:2372,name:"Bermuda",states:[{code:"BM.BD",name:"Bermuda"},{code:"BD01",name:"Devonshire"},{code:"BD03",name:"Hamilton municipality"},{code:"BD02",name:"Hamilton"},{code:"BD04",name:"Paget"},{code:"BD05",name:"Pembroke"},{code:"BD06",name:"Saint George municipality"},{code:"BD07",name:"Saint George's"},{code:"BD08",name:"Sandys"},{code:"BD09",name:"Smiths"},{code:"BD10",name:"Southampton"},{code:"BD11",name:"Warwick"}]},{code:"BT",id:2205,name:"Bhutan",states:[]},{code:"BO",id:2206,name:"Bolivia; Plurinational State",states:[{code:"BL01",name:"Chuquisaca"},{code:"BL02",name:"Cochabamba"},{code:"BL03",name:"El Beni"},{code:"BL04",name:"La Paz"},{code:"BL05",name:"Oruro"},{code:"BL06",name:"Pando"},{code:"BL07",name:"Potosí"},{code:"BL08",name:"Santa Cruz"},{code:"BL09",name:"Tarija"}]},{code:"BQ",id:2449,name:"Bonaire",states:[{code:"BQ.BO",name:"Bonaire"},{code:"BQ.SB",name:"Saba"},{code:"BQ.SE",name:"Sint Eustatius"}]},{code:"BA",id:2207,name:"Bosnia and Herzegovina",states:[{code:"BA-05",name:"Bosansko-podrinjski kanton"},{code:"BA-BRC",name:"Brcko distrikt"},{code:"BA-BIH",name:"Federacija Bosna i Hercegovina"},{code:"BA-07",name:"Hercegovacko-neretvanski kanton"},{code:"BA-09",name:"Kanton Sarajevo"},{code:"BA-10",name:"Livanjski kanton"},{code:"BA-02",name:"Posavski kanton"},{code:"BA-SRP",name:"Republika Srpska"},{code:"BA-06",name:"Srednjobosanski kanton"},{code:"BA-03",name:"Tuzlanski kanton"},{code:"BA-01",name:"Unsko-sanski kanton"},{code:"BA-08",name:"Zapadnohercegovacki kanton"},{code:"BA-04",name:"Zenicko-dobojski kanton"}]},{code:"BW",id:2208,name:"Botswana",states:[{code:"BC01",name:"Central"},{code:"BC12",name:"Chobe"},{code:"BC13",name:"Francistown"},{code:"BC14",name:"Gaborone"},{code:"BC03",name:"Ghanzi"},{code:"BC15",name:"Jwaneng"},{code:"BC04",name:"Kgalagadi"},{code:"BC05",name:"Kgatleng"},{code:"BC06",name:"Kweneng"},{code:"BC16",name:"Lobatse"},{code:"BC08",name:"North-East"},{code:"BC11",name:"North-West"},{code:"BC17",name:"Selibe Phikwe"},{code:"BC09",name:"South East"},{code:"BC10",name:"Southern"},{code:"BC18",name:"Sowa Town"}]},{code:"BV",id:2410,name:"Bouvet Island",states:[]},{code:"BR",id:2209,name:"Brazil",states:[{code:"AC",name:"Acre"},{code:"AL",name:"Alagoas"},{code:"AP",name:"Amapá"},{code:"AM",name:"Amazonas"},{code:"BA",name:"Bahia"},{code:"CE",name:"Ceará"},{code:"DF",name:"Distrito Federal"},{code:"ES",name:"Espírito Santo"},{code:"GO",name:"Goiás"},{code:"MA",name:"Maranhão"},{code:"MT",name:"Mato Grosso"},{code:"MS",name:"Mato Grosso do Sul"},{code:"MG",name:"Minas Gerais"},{code:"PA",name:"Pará"},{code:"PR",name:"Paraná"},{code:"PB",name:"Paraíba"},{code:"PE",name:"Pernambuco"},{code:"PI",name:"Piauí"},{code:"RN",name:"Rio Grande do Norte"},{code:"RS",name:"Rio Grande do Sul"},{code:"RJ",name:"Rio de Janeiro"},{code:"RO",name:"Rondônia"},{code:"RR",name:"Roraima"},{code:"SC",name:"Santa Catarina"},{code:"SP",name:"São Paulo"},{code:"SE",name:"Sergipe"},{code:"TO",name:"Tocantins"}]},{code:"IO",id:2411,name:"British Indian Ocean Territory",states:[]},{code:"BN",id:2210,name:"Brunei Darussalam",states:[{code:"BX01",name:"Amo"},{code:"BX02",name:"Bandar Seri Begawan"},{code:"BX03",name:"Bangar"},{code:"BX04",name:"Batu Apoi"},{code:"BX05",name:"Berakas"},{code:"BX06",name:"Bokok"},{code:"BX07",name:"Bukit Sawat"},{code:"BX08",name:"Burong Pinggai Ayer"},{code:"BX09",name:"Gadong"},{code:"BX10",name:"Keriam"},{code:"BX11",name:"Kianggeh"},{code:"BX12",name:"Kilanas"},{code:"BX13",name:"Kiudang"},{code:"BX14",name:"Kota Batu"},{code:"BX15",name:"Kuala Balai"},{code:"BX16",name:"Kuala Belait"},{code:"BX17",name:"Labi"},{code:"BX18",name:"Labu"},{code:"BX19",name:"Lamunin"},{code:"BX20",name:"Liang"},{code:"BX21",name:"Lumapas"},{code:"BX22",name:"Melilas"},{code:"BX23",name:"Mentiri"},{code:"BX24",name:"Pekan Tutong"},{code:"BX25",name:"Pengkalan Batu"},{code:"BX26",name:"Peramu"},{code:"BX27",name:"Rambai"},{code:"BX28",name:"Saba"},{code:"BX29",name:"Sengkurong"},{code:"BX30",name:"Serasa"},{code:"BX31",name:"Seria"},{code:"BX32",name:"Sukang"},{code:"BX33",name:"Sungai Kebun"},{code:"BX34",name:"Sungai Kedayan"},{code:"BX35",name:"Tamoi"},{code:"BX36",name:"Tanjong Maya"},{code:"BX37",name:"Telisai"},{code:"BX38",name:"Ukong"}]},{code:"BG",id:2211,name:"Bulgaria",states:[{code:"BU38",name:"Blagoevgrad"},{code:"BU39",name:"Burgas"},{code:"BU40",name:"Dobrich"},{code:"BU41",name:"Gabrovo"},{code:"BU42",name:"Grad Sofiya"},{code:"BU43",name:"Khaskovo"},{code:"BU44",name:"Kurdzhali"},{code:"BU45",name:"Kyustendil"},{code:"BU46",name:"Lovech"},{code:"BU47",name:"Montana"},{code:"BU48",name:"Pazardzhik"},{code:"BU49",name:"Pernik"},{code:"BU50",name:"Pleven"},{code:"BU51",name:"Plovdiv"},{code:"BU52",name:"Razgrad"},{code:"BU53",name:"Ruse"},{code:"BU54",name:"Shumen"},{code:"BU55",name:"Silistra"},{code:"BU56",name:"Sliven"},{code:"BU57",name:"Smolyan"},{code:"BU58",name:"Sofiya"},{code:"BU59",name:"Stara Zagora"},{code:"BU60",name:"Turgovishte"},{code:"BU61",name:"Varna"},{code:"BU62",name:"Veliko Turnovo"},{code:"BU63",name:"Vidin"},{code:"BU64",name:"Vratsa"},{code:"BU65",name:"Yambol"}]},{code:"BF",id:2212,name:"Burkina Faso",states:[{code:"UV79",name:"Boucle du Mouhoun"},{code:"UV80",name:"Cascades"},{code:"UV82",name:"Centre Est"},{code:"UV83",name:"Centre Nord"},{code:"UV84",name:"Centre Ouest"},{code:"UV81",name:"Centre"},{code:"UV85",name:"Centre Sud"},{code:"UV86",name:"Est"},{code:"UV87",name:"Hauts Bassins"},{code:"UV88",name:"Nord"},{code:"UV89",name:"Plateau Central"},{code:"UV90",name:"Sahel"},{code:"UV91",name:"Sud-Ouest"}]},{code:"BM",id:2385,name:"Burma",states:[{code:"BM03",name:"Ayeyarwady"},{code:"BM16",name:"Bago"},{code:"BM02",name:"Chin"},{code:"BM04",name:"Kachin"},{code:"BM06",name:"Kayah"},{code:"BM05",name:"Kayin"},{code:"BM15",name:"Magway"},{code:"BM08",name:"Mandalay"},{code:"BM13",name:"Mon"},{code:"BM18",name:"Naypyidaw"},{code:"BM01",name:"Rakhine"},{code:"BM10",name:"Sagaing"},{code:"BM11",name:"Shan"},{code:"BM12",name:"Tanintharyi"},{code:"BM17",name:"Yangon"}]},{code:"BI",id:2213,name:"Burundi",states:[]},{code:"KH",id:2214,name:"Cambodia",states:[{code:"CB25",name:"Bântéay Méanchey"},{code:"CB29",name:"Batdâmbâng"},{code:"CB02",name:"Kâmpóng Cham"},{code:"CB03",name:"Kâmpóng Chhnang"},{code:"CB04",name:"Kâmpóng Spœ"},{code:"CB05",name:"Kâmpóng Thum"},{code:"CB21",name:"Kâmpôt"},{code:"CB07",name:"Kândal"},{code:"CB08",name:"Kaôh Kong"},{code:"CB09",name:"Krâchéh"},{code:"CB26",name:"Krong Keb"},{code:"CB30",name:"Krong Pailin"},{code:"CB28",name:"Krong Preah Sihanouk"},{code:"CB10",name:"Môndól Kiri"},{code:"CB27",name:"Otdâr Méanchey"},{code:"CB22",name:"Phnom Penh"},{code:"CB12",name:"Pouthisat"},{code:"CB13",name:"Preah Vihéar"},{code:"CB14",name:"Prey Vêng"},{code:"CB23",name:"Rôtânôkiri"},{code:"CB24",name:"Siemréab"},{code:"CB17",name:"Stœ?ng Trêng"},{code:"CB18",name:"Svay Rieng"},{code:"CB19",name:"Takêv"},{code:"CB31",name:"Tbong Khmum"}]},{code:"CM",id:2215,name:"Cameroon",states:[{code:"CM10",name:"Adamaoua"},{code:"CM11",name:"Centre"},{code:"CM04",name:"Est"},{code:"CM12",name:"Extrême-Nord"},{code:"CM05",name:"Littoral"},{code:"CM07",name:"Nord-Ouest"},{code:"CM13",name:"Nord"},{code:"CM08",name:"Ouest"},{code:"CM09",name:"Sud-Ouest"},{code:"CM14",name:"Sud"}]},{code:"CA",id:2216,name:"Canada",states:[{code:"AB",name:"Alberta"},{code:"BC",name:"British Columbia"},{code:"MB",name:"Manitoba"},{code:"NB",name:"New Brunswick"},{code:"NL",name:"Newfoundland and Labrador"},{code:"NT",name:"Northwest Territories"},{code:"NS",name:"Nova Scotia"},{code:"NU",name:"Nunavut"},{code:"ON",name:"Ontario"},{code:"PE",name:"Prince Edward Island"},{code:"QC",name:"Quebec"},{code:"SK",name:"Saskatchewan"},{code:"YT",name:"Yukon"}]},{code:"CV",id:2217,name:"Cape Verde",states:[]},{code:"KY",id:2379,name:"Cayman Islands",states:[{code:"KY.BT",name:"Bodden Town"},{code:"KY.CJ",name:"Cayman Islands"},{code:"KY.EE",name:"East End"},{code:"KY.GT",name:"George Town"},{code:"KY.NS",name:"North Side"},{code:"KY.SI",name:"Sister Islands"},{code:"KY.WB",name:"West Bay"}]},{code:"CF",id:2218,name:"Central African Republic",states:[{code:"CT01",name:"Bamingui-Bangoran"},{code:"CT18",name:"Bangui"},{code:"CT02",name:"Basse-Kotto"},{code:"CT05",name:"Haut-Mbomou"},{code:"CT03",name:"Haute-Kotto"},{code:"CT06",name:"Kémo"},{code:"CT07",name:"Lobaye"},{code:"CT04",name:"Mambéré-Kadéï"},{code:"CT08",name:"Mbomou"},{code:"CT15",name:"Nana-Grébizi"},{code:"CT09",name:"Nana-Mambéré"},{code:"CT17",name:"Ombella-M'Poko"},{code:"CT11",name:"Ouaka"},{code:"CT12",name:"Ouham"},{code:"CT13",name:"Ouham-Pendé"},{code:"CT16",name:"Sangha-Mbaéré"},{code:"CT14",name:"Vakaga"}]},{code:"TD",id:2219,name:"Chad",states:[{code:"CD22",name:"Barh el Ghazel"},{code:"CD01",name:"Batha"},{code:"CD23",name:"Borkou"},{code:"CD15",name:"Chari-Baguirmi"},{code:"CD27",name:"Ennedi Est"},{code:"CD28",name:"Ennedi Ouest"},{code:"CD05",name:"Guéra"},{code:"CD18",name:"Hadjer-Lamis"},{code:"CD06",name:"Kanem"},{code:"CD07",name:"Lac"},{code:"CD08",name:"Logone Occidental"},{code:"CD09",name:"Logone Oriental"},{code:"CD19",name:"Mandoul"},{code:"CD16",name:"Mayo-Kebbi Est"},{code:"CD20",name:"Mayo-Kebbi Ouest"},{code:"CD17",name:"Moyen-Chari"},{code:"CD12",name:"Ouaddaï"},{code:"CD13",name:"Salamat"},{code:"CD25",name:"Sila"},{code:"CD14",name:"Tandjilé"},{code:"CD26",name:"Tibesti"},{code:"CD21",name:"Ville de N'Djamena"},{code:"CD02",name:"Wadi Fira"}]},{code:"CH99",id:2386,name:"Channel Islands",states:[]},{code:"CL",id:2220,name:"Chile",states:[{code:"CL.AI",name:"Aisén del General Carlos Ibáñez del Campo"},{code:"CL.AN",name:"Antofagasta"},{code:"CL.AR",name:"Araucanía"},{code:"CL.AP",name:"Arica and Parinacota"},{code:"CL.AT",name:"Atacama"},{code:"CL.BI",name:"Bío-Bío"},{code:"CL.CO",name:"Coquimbo"},{code:"CL.LI",name:"Libertador General Bernardo O'Higgins"},{code:"CL.LG",name:"Los Lagos"},{code:"CL.LR",name:"Los Ríos"},{code:"CL.MA",name:"Magallanes y Antártica Chilena"},{code:"CL.ML",name:"Maule"},{code:"CL.RM",name:"Región Metropolitana de Santiago"},{code:"CL.TP",name:"Tarapacá"},{code:"CL.VS",name:"Valparaíso"}]},{code:"CN",id:2221,name:"China",states:[{code:"CH01",name:"Anhui"},{code:"CH22",name:"Beijing"},{code:"CH33",name:"Chongqing"},{code:"CH07",name:"Fujian"},{code:"CH15",name:"Gansu"},{code:"CH17",name:"Guangdon"},{code:"CH30",name:"Guangdong"},{code:"CH16",name:"Guangxi"},{code:"CH18",name:"Guizhou"},{code:"CH31",name:"Hainan"},{code:"CH10",name:"Hebei"},{code:"CH08",name:"Heilongjiang"},{code:"CH09",name:"Henan"},{code:"CH34",name:"Hong Kong"},{code:"CH12",name:"Hubei"},{code:"CH11",name:"Hunan"},{code:"CH04",name:"Jiangsu"},{code:"CH03",name:"Jiangxi"},{code:"CH05",name:"Jilin"},{code:"CH19",name:"Liaoning"},{code:"CH20",name:"Nei Mongol"},{code:"CH21",name:"Ningxia"},{code:"CH06",name:"Qinghai"},{code:"CH26",name:"Shaanxi"},{code:"CH25",name:"Shandong"},{code:"CH23",name:"Shanghai"},{code:"CH24",name:"Shanxi"},{code:"CH32",name:"Sichuan"},{code:"CH27",name:"Sichuan"},{code:"CH28",name:"Tianjin"},{code:"CH13",name:"Xinjiang"},{code:"CH14",name:"Xizang"},{code:"CH29",name:"Yunnan"},{code:"CH02",name:"Zhejiang"}]},{code:"CX",id:2412,name:"Christmas Island",states:[]},{code:"CC",id:2413,name:"Cocos (Keeling) Islands",states:[]},{code:"CO",id:2222,name:"Colombia",states:[{code:"CO01",name:"Amazonas"},{code:"CO02",name:"Antioquia"},{code:"CO03",name:"Arauca"},{code:"CO04",name:"Atlántico"},{code:"CO35",name:"Bolívar"},{code:"CO36",name:"Boyacá"},{code:"CO37",name:"Caldas"},{code:"CO08",name:"Caquetá"},{code:"CO32",name:"Casanare"},{code:"CO09",name:"Cauca"},{code:"CO10",name:"Cesar"},{code:"CO11",name:"Chocó"},{code:"CO12",name:"Córdoba"},{code:"CO33",name:"Cundinamarca"},{code:"CO34",name:"Distrito Capital"},{code:"CO15",name:"Guainía"},{code:"CO14",name:"Guaviare"},{code:"CO16",name:"Huila"},{code:"CO17",name:"La Guajira"},{code:"CO38",name:"Magdalena"},{code:"CO19",name:"Meta"},{code:"CO20",name:"Nariño"},{code:"CO21",name:"Norte de Santander"},{code:"CO22",name:"Putumayo"},{code:"CO23",name:"Quindío"},{code:"CO24",name:"Risaralda"},{code:"CO25",name:"San Andrés y Providencia"},{code:"CO26",name:"Santander"},{code:"CO27",name:"Sucre"},{code:"CO28",name:"Tolima"},{code:"CO29",name:"Valle del Cauca"},{code:"CO30",name:"Vaupés"},{code:"CO31",name:"Vichada"}]},{code:"KM",id:2223,name:"Comoros",states:[]},{code:"ZR",id:2368,name:"Congo; Democratic Republic of",states:[{code:"CD.BU",name:"Bas-Uélé"},{code:"CD.HK",name:"Haut-Katanga"},{code:"CD.HL",name:"Haut-Lomami"},{code:"CD.HU",name:"Haut-Uélé"},{code:"CD.IT",name:"Ituri"},{code:"CD.KS",name:"Kasaï"},{code:"CD.LL",name:"Kasaï-Central"},{code:"CD.KO",name:"Kasaï Oriental"},{code:"CD.KN",name:"Kinshasa"},{code:"CD.BC",name:"Kongo Central"},{code:"CD.KG",name:"Kwango"},{code:"CD.KU",name:"Kwilu"},{code:"CD.LM",name:"Lomami"},{code:"CD.LB",name:"Lualaba"},{code:"CD.MA",name:"Mai-Ndombe"},{code:"CD.MN",name:"Maniema"},{code:"CD.MO",name:"Mongala"},{code:"CD.NK",name:"Nord-Kivu"},{code:"CD.NU",name:"Nord-Ubangi"},{code:"CD.SN",name:"Sankuru"},{code:"CD.SK",name:"Sud-Kivu"},{code:"CD.SU",name:"Sud-Ubangi"},{code:"CD.TG",name:"Tanganyika"},{code:"CD.TO",name:"Tshopo"},{code:"CD.TP",name:"Tshuapa"},{code:"CD.ET",name:"Équateur"}]},{code:"CG",id:2383,name:"Congo; Republic of",states:[]},{code:"CK",id:2414,name:"Cook Islands",states:[]},{code:"CR",id:2226,name:"Costa Rica",states:[{code:"CS01",name:"Alajuela"},{code:"CS02",name:"Cartago"},{code:"CS03",name:"Guanacaste"},{code:"CS04",name:"Heredia"},{code:"CS06",name:"Limón"},{code:"CS07",name:"Puntarenas"},{code:"CS08",name:"San José"}]},{code:"CI",id:2227,name:"Cote D'Ivoire",states:[{code:"IV93",name:"Abidjan"},{code:"IV76",name:"Bas-Sassandra"},{code:"IV94",name:"Comoé"},{code:"IV77",name:"Denguélé"},{code:"IV95",name:"Gôh-Djiboua"},{code:"IV81",name:"Lacs"},{code:"IV82",name:"Lagunes"},{code:"IV78",name:"Montagnes"},{code:"IV96",name:"Sassandra-Marahoué"},{code:"IV87",name:"Savanes"},{code:"IV90",name:"Vallée du Bandama"},{code:"IV97",name:"Woroba"},{code:"IV98",name:"Yamoussoukro"},{code:"IV92",name:"Zanzan"}]},{code:"HR",id:2228,name:"Croatia",states:[{code:"HR07",name:"Bjelovarsko-bilogorska"},{code:"HR12",name:"Brodsko-posavska"},{code:"HR19",name:"Dubrovacko-neretvanska"},{code:"HR21",name:"Grad Zagreb"},{code:"HR-18",name:"Istarska"},{code:"HR04",name:"Karlovacka"},{code:"HR06",name:"Koprivnicko-križevacka"},{code:"HR02",name:"Krapinsko-zagorska"},{code:"HR09",name:"Licko-senjska"},{code:"HR20",name:"Medimurska"},{code:"HR14",name:"Osjecko-baranjska"},{code:"HR11",name:"Požeško-slavonska"},{code:"HR08",name:"Primorsko-goranska"},{code:"HR15",name:"Šibensko-kninska"},{code:"HR03",name:"Sisacko-moslavacka"},{code:"HR17",name:"Splitsko-dalmatinska"},{code:"HR05",name:"Varaždinska"},{code:"HR10",name:"Viroviticko-podravska"},{code:"HR16",name:"Vukovarsko-srijemska"},{code:"HR13",name:"Zadarska"},{code:"HR01",name:"Zagrebacka"}]},{code:"CU",id:2229,name:"Cuba",states:[{code:"CU17",name:"Artemisa"},{code:"CU05",name:"Camagüey"},{code:"CU07",name:"Ciego de Ávila"},{code:"CU08",name:"Cienfuegos"},{code:"CU09",name:"Granma"},{code:"CU10",name:"Guantánamo"},{code:"CU12",name:"Holguín"},{code:"CU04",name:"Isla de la Juventud"},{code:"CU02",name:"La Habana"},{code:"CU13",name:"Las Tunas"},{code:"CU03",name:"Matanzas"},{code:"CU18",name:"Mayabeque"},{code:"CU01",name:"Pinar del Río"},{code:"CU14",name:"Sancti Spíritus"},{code:"CU15",name:"Santiago de Cuba"},{code:"CU16",name:"Villa Clara"}]},{code:"C999",id:2387,name:"Curacao",states:[{code:"CW.CU",name:"Curacao"}]},{code:"CY",id:2230,name:"Cyprus",states:[{code:"CY01",name:"Famagusta"},{code:"CY02",name:"Kyrenia"},{code:"CY03",name:"Larnaca"},{code:"CY05",name:"Limassol"},{code:"CY04",name:"Nicosia"},{code:"CY06",name:"Paphos"}]},{code:"CZ",id:2231,name:"Czech Republic",states:[{code:"JC",name:"Jihoceský kraj"},{code:"JM",name:"Jihomoravský kraj"},{code:"KA",name:"Karlovarský kraj"},{code:"KR",name:"Královéhradecký kraj"},{code:"LI",name:"Liberecký kraj"},{code:"MO",name:"Moravskoslezský kraj"},{code:"OL",name:"Olomoucký kraj"},{code:"PA",name:"Pardubický kraj"},{code:"PL",name:"Plzenský kraj"},{code:"PR",name:"Praha, hlavní mesto"},{code:"ST",name:"Stredoceský kraj"},{code:"VY",name:"Vysocina"},{code:"ZL",name:"Zlínský kraj"},{code:"US",name:"Ústecký kraj"}]},{code:"DK",id:2232,name:"Denmark",states:[{code:"DA01",name:"Arhus County"},{code:"DA02",name:"Bornholm Regional Municipality"},{code:"DA17",name:"Capital Region"},{code:"DA18",name:"Central Jutland Region"},{code:"DA16",name:"Frederiksberg municipal"},{code:"DA03",name:"Frederiksborg County"},{code:"DA04",name:"Fyn County"},{code:"DA06",name:"Kobenhavn County"},{code:"DA05",name:"Kobenhavn municipal"},{code:"DA07",name:"Nordjylland County"},{code:"DA19",name:"North Jutland Region"},{code:"DA08",name:"Ribe County"},{code:"DA09",name:"Ringkobing County"},{code:"DA10",name:"Roskilde County"},{code:"DA11",name:"Sonderjylland County"},{code:"DA21",name:"South Denmark Region"},{code:"DA12",name:"Storstrom County"},{code:"DA13",name:"Vejle County"},{code:"DA14",name:"Vestsjaelland County"},{code:"DA15",name:"Viborg County"},{code:"DA20",name:"Zealand Region"}]},{code:"DJ",id:2233,name:"Djibouti",states:[]},{code:"DM",id:2234,name:"Dominica",states:[]},{code:"DO",id:2235,name:"Dominican Republic",states:[{code:"DR01",name:"Azua"},{code:"DR02",name:"Bahoruco"},{code:"DR03",name:"Barahona"},{code:"DR04",name:"Dajabón"},{code:"DR34",name:"Distrito Nacional"},{code:"DR06",name:"Duarte"},{code:"DR28",name:"El Seibo"},{code:"DR11",name:"Elías Piña"},{code:"DR08",name:"Espaillat"},{code:"DR29",name:"Hato Mayor"},{code:"DR19",name:"Hermanas Mirabal"},{code:"DR09",name:"Independencia"},{code:"DR10",name:"La Altagracia"},{code:"DR12",name:"La Romana"},{code:"DR30",name:"La Vega"},{code:"DR14",name:"María Trinidad Sánchez"},{code:"DR31",name:"Monseñor Nouel"},{code:"DR15",name:"Monte Cristi"},{code:"DR32",name:"Monte Plata"},{code:"DR16",name:"Pedernales"},{code:"DR35",name:"Peravia"},{code:"DR18",name:"Puerto Plata"},{code:"DR20",name:"Samaná"},{code:"DR33",name:"San Cristóbal"},{code:"DR36",name:"San José de Ocoa"},{code:"DR23",name:"San Juan"},{code:"DR24",name:"San Pedro de Macorís"},{code:"DR21",name:"Sánchez Ramírez"},{code:"DR25",name:"Santiago"},{code:"DR26",name:"Santiago Rodríguez"},{code:"DR37",name:"Santo Domingo"},{code:"DR27",name:"Valverde"}]},{code:"EC",id:2236,name:"Ecuador",states:[{code:"EC02",name:"Azuay"},{code:"EC02",name:"Azuay"},{code:"EC03",name:"Bolívar"},{code:"EC04",name:"Cañar"},{code:"EC05",name:"Carchi"},{code:"EC06",name:"Chimborazo"},{code:"EC07",name:"Cotopaxi"},{code:"EC08",name:"El Oro"},{code:"EC09",name:"Esmeraldas"},{code:"EC01",name:"Galápagos"},{code:"EC10",name:"Guayas"},{code:"EC11",name:"Imbabura"},{code:"EC12",name:"Loja"},{code:"EC13",name:"Los Ríos"},{code:"EC14",name:"Manabí"},{code:"EC15",name:"Morona-Santiago"},{code:"EC23",name:"Napo"},{code:"EC24",name:"Orellana"},{code:"EC17",name:"Pastaza"},{code:"EC18",name:"Pichincha"},{code:"EC25",name:"Santa Elena"},{code:"EC26",name:"Santo Domingo de los Tsáchilas"},{code:"EC22",name:"Sucumbíos"},{code:"EC19",name:"Tungurahua"},{code:"EC20",name:"Zamora-Chinchipe"}]},{code:"EG",id:2237,name:"Egypt",states:[{code:"EG01",name:"Ad Daqahliyah"},{code:"EG02",name:"Al Bahr al Ahmar"},{code:"EG03",name:"Al Buhayrah"},{code:"EG04",name:"Al Fayyum"},{code:"EG05",name:"Al Gharbiyah"},{code:"EG06",name:"Al Iskandariyah"},{code:"EG07",name:"Al Isma`iliyah"},{code:"EG08",name:"Al Jizah"},{code:"EG09",name:"Al Minufiyah"},{code:"EG10",name:"Al Minya"},{code:"EG11",name:"Al Qahirah"},{code:"EG12",name:"Al Qalyubiyah"},{code:"EG28",name:"Al Uqsur"},{code:"EG13",name:"Al Wadi al Jadid"},{code:"EG15",name:"As Suways"},{code:"EG14",name:"Ash Sharqiyah"},{code:"EG16",name:"Aswan"},{code:"EG17",name:"Asyut"},{code:"EG18",name:"Bani Suwayf"},{code:"EG19",name:"Bur Sa`id"},{code:"EG20",name:"Dumyat"},{code:"EG26",name:"Janub Sina"},{code:"EG21",name:"Kafr ash Shaykh"},{code:"EG22",name:"Matruh"},{code:"EG23",name:"Qina"},{code:"EG27",name:"Shamal Sina"},{code:"EG24",name:"Suhaj"}]},{code:"SV",id:2238,name:"El Salvador",states:[{code:"ES01",name:"Ahuachapán"},{code:"ES02",name:"Cabañas"},{code:"ES03",name:"Chalatenango"},{code:"ES04",name:"Cuscatlán"},{code:"ES05",name:"La Libertad"},{code:"ES06",name:"La Paz"},{code:"ES07",name:"La Unión"},{code:"ES08",name:"Morazán"},{code:"ES09",name:"San Miguel"},{code:"ES10",name:"San Salvador"},{code:"ES12",name:"San Vicente"},{code:"ES11",name:"Santa Ana"},{code:"ES13",name:"Sonsonate"},{code:"ES14",name:"Usulután"}]},{code:"GQ",id:2239,name:"Equatorial Guinea",states:[]},{code:"ER",id:2240,name:"Eritrea",states:[]},{code:"EE",id:2241,name:"Estonia",states:[{code:"EN01",name:"Harju"},{code:"EN02",name:"Hiiu"},{code:"EN03",name:"Ida-Viru"},{code:"EN04",name:"Järva"},{code:"EN05",name:"Jõgeva"},{code:"EN07",name:"Lääne"},{code:"EN08",name:"Lääne-Viru"},{code:"EN11",name:"Pärnu"},{code:"EN12",name:"Põlva"},{code:"EN13",name:"Rapla"},{code:"EN14",name:"Saare"},{code:"EN18",name:"Tartu"},{code:"EN19",name:"Valga"},{code:"EN20",name:"Viljandi"},{code:"EN21",name:"Võru"}]},{code:"ET",id:2242,name:"Ethiopia",states:[{code:"ET44",name:"Addis Ababa"},{code:"ET45",name:"Afar"},{code:"ET46",name:"Amhara"},{code:"ET47",name:"Benshangul-Gumaz"},{code:"ET48",name:"Dire Dawa"},{code:"ET49",name:"Gambela Peoples"},{code:"ET50",name:"Harari People"},{code:"ET51",name:"Oromia"},{code:"ET52",name:"Somali"},{code:"ET54",name:"Southern Nations, Nationalities and Peoples"},{code:"ET53",name:"Tigray"}]},{code:"FK",id:2415,name:"Falkland Islands (Malvinas)",states:[]},{code:"FI99",id:2388,name:"Faroe Islands",states:[]},{code:"FJ",id:2243,name:"Fiji",states:[]},{code:"FI",id:2244,name:"Finland",states:[{code:"FI-AL",name:"Ahvenanmaan lääni"},{code:"AX",name:"Ahvenanmaa"},{code:"FI.SK",name:"Etelä-Karjala"},{code:"FI.SO",name:"Etelä-Pohjanmaa"},{code:"FI.SS",name:"Etelä-Savo"},{code:"FI-ES",name:"Etelä-Suomen lääni"},{code:"FI-IS",name:"Itä-Suomen lääni"},{code:"FI.KA",name:"Kainuu"},{code:"FI.KH",name:"Kanta-Häme"},{code:"FI.CO",name:"Keski-Pohjanmaa"},{code:"FI.CF",name:"Keski-Suomi"},{code:"FI.KY",name:"Kymenlaakso"},{code:"FI-LS",name:"Länsi-Suomen lääni"},{code:"FI-LL",name:"Lapin lääni"},{code:"FI.LA",name:"Lappi"},{code:"FI-OL",name:"Oulun lääni"},{code:"FI.PH",name:"Päijät-Häme"},{code:"FI.TR",name:"Pirkanmaa"},{code:"FI.OS",name:"Pohjanmaa"},{code:"FI.NK",name:"Pohjois-Karjala"},{code:"FI.NO",name:"Pohjois-Pohjanmaa"},{code:"FI.NS",name:"Pohjois-Savo"},{code:"FI.SA",name:"Satakunta"},{code:"FI.US",name:"Uusimaa"},{code:"FI.SF",name:"Varsinais-Suomi"}]},{code:"FR",id:2245,name:"France",states:[{code:"FRC2",name:"Ain"},{code:"FRC3",name:"Aisne"},{code:"FRC4",name:"Allier"},{code:"FRC6",name:"Alpes-Maritimes"},{code:"FRC5",name:"Alpes-de-Haute-Provence"},{code:"FRC1",name:"Alsace"},{code:"FR97",name:"Aquitaine"},{code:"FRC7",name:"Ardèche"},{code:"FRC8",name:"Ardennes"},{code:"FRC9",name:"Ariège"},{code:"FRD1",name:"Aube"},{code:"FRD2",name:"Aude"},{code:"FR.AR",name:"Auvergne-Rhône-Alpes"},{code:"FR98",name:"Auvergne"},{code:"FRD3",name:"Aveyron"},{code:"FRD4",name:"Bas-Rhin"},{code:"FR99",name:"Basse-Normandie"},{code:"FRD5",name:"Bouches-du-Rhône"},{code:"FR.BF",name:"Bourgogne-Franche-Comté"},{code:"FRA1",name:"Bourgogne"},{code:"FRA2",name:"Bretagne"},{code:"FRD8",name:"Calvados"},{code:"FRD9",name:"Cantal"},{code:"FRA3",name:"Centre"},{code:"FR.CN",name:"Centre-Val de Loire"},{code:"FRA4",name:"Champagne-Ardenne"},{code:"FRE1",name:"Charente-Maritime"},{code:"FRE2",name:"Charente"},{code:"FRE3",name:"Cher"},{code:"FRE4",name:"Corrèze"},{code:"FRE5",name:"Corse-du-Sud"},{code:"FR.CE",name:"Corse"},{code:"FRD6",name:"Côte-d'Or"},{code:"FRD7",name:"Côtes-d'Armor"},{code:"FRE6",name:"Creuse"},{code:"FRE7",name:"Deux-Sèvres"},{code:"FRE8",name:"Dordogne"},{code:"FRE9",name:"Doubs"},{code:"FRF1",name:"Drôme"},{code:"FRF2",name:"Essonne"},{code:"FRF3",name:"Eure-et-Loir"},{code:"FRF4",name:"Eure"},{code:"FRF5",name:"Finistère"},{code:"FRA6",name:"Franche-Comte"},{code:"FRF6",name:"Gard"},{code:"FRF7",name:"Gers"},{code:"FRF8",name:"Gironde"},{code:"FR.AO",name:"Grand Est"},{code:"FRG1",name:"Haut-Rhin"},{code:"FRG2",name:"Haute-Corse"},{code:"FRG3",name:"Haute-Garonne"},{code:"FRG4",name:"Haute-Loire"},{code:"FRG5",name:"Haute-Marne"},{code:"FRA7",name:"Haute-Normandie"},{code:"FRG6",name:"Haute-Saône"},{code:"FRG7",name:"Haute-Savoie"},{code:"FRG8",name:"Haute-Vienne"},{code:"FRG9",name:"Hautes-Alpes"},{code:"FRH1",name:"Hautes-Pyrénées"},{code:"FR.NC",name:"Hauts-de-France"},{code:"FRH2",name:"Hauts-de-Seine"},{code:"FRF9",name:"Hérault"},{code:"FRA8",name:"Ile-de-France"},{code:"FRH3",name:"Ille-et-Vilaine"},{code:"FRH5",name:"Indre"},{code:"FRH4",name:"Indre-et-Loire"},{code:"FRH6",name:"Isère"},{code:"FRH7",name:"Jura"},{code:"FRH8",name:"Landes"},{code:"FRA9",name:"Languedoc-Roussillon"},{code:"FRB1",name:"Limousin"},{code:"FRI3",name:"Loir-et-Cher"},{code:"FRI2",name:"Loiret"},{code:"FRI1",name:"Loire"},{code:"FRH9",name:"Loire-Atlantique"},{code:"FRB2",name:"Lorraine"},{code:"FRI4",name:"Lot-et-Garonne"},{code:"FRI5",name:"Lot"},{code:"FRI6",name:"Lozère"},{code:"FRI7",name:"Maine-et-Loire"},{code:"FRI8",name:"Manche"},{code:"FRI9",name:"Marne"},{code:"FRJ1",name:"Mayenne"},{code:"FRJ2",name:"Meurthe-et-Moselle"},{code:"FRJ3",name:"Meuse"},{code:"FRB3",name:"Midi-Pyrenees"},{code:"FRJ4",name:"Morbihan"},{code:"FRJ5",name:"Moselle"},{code:"FRJ6",name:"Nièvre"},{code:"FRJ7",name:"Nord France"},{code:"FR67",name:"Nord"},{code:"FR.ND",name:"Normandie"},{code:"FR.AC",name:"Nouvelle-Aquitaine"},{code:"FR.LP",name:"Occitanie"},{code:"FRJ8",name:"Oise"},{code:"FRJ9",name:"Orne"},{code:"FRK1",name:"Paris"},{code:"FRB4",name:"Pas-de-Calais"},{code:"FRB5",name:"Pays de la Loire"},{code:"FRB6",name:"Picardie"},{code:"FRB7",name:"Poitou-Charentes"},{code:"FRB8",name:"Provence-Alpes-Cote d'Azur"},{code:"FRK2",name:"Puy-de-Dôme"},{code:"FRK3",name:"Pyrénées-Atlantiques"},{code:"FRK4",name:"Pyrénées-Orientales"},{code:"FRB9",name:"Rhône"},{code:"FRK5",name:"Saône-et-Loire"},{code:"FRK6",name:"Sarthe"},{code:"FRK7",name:"Savoie"},{code:"FRK9",name:"Seine-Maritime"},{code:"FRL1",name:"Seine-Saint-Denis"},{code:"FRK8",name:"Seine-et-Marne"},{code:"FRL2",name:"Somme"},{code:"FRL3",name:"Tarn-et-Garonne"},{code:"FRL4",name:"Tarn"},{code:"FRL5",name:"Territoire de Belfor"},{code:"FR14",name:"Territoire de Belfort"},{code:"FRL6",name:"Val-d'Oise"},{code:"FRL7",name:"Val-de-Marne"},{code:"FRL8",name:"Var"},{code:"FRL9",name:"Vaucluse"},{code:"FRM1",name:"Vendée"},{code:"FRM2",name:"Vienne"},{code:"FR94",name:"Ville de Paris"},{code:"FRM3",name:"Vosges"},{code:"FRM4",name:"Yonne"},{code:"FRM5",name:"Yvelines"},{code:"FR.IF",name:"Île-de-France"}]},{code:"GF",id:2416,name:"French Guiana",states:[]},{code:"PF",id:2417,name:"French Polynesia",states:[]},{code:"TF",id:2418,name:"French Southern Territories",states:[]},{code:"GA",id:2246,name:"Gabon",states:[{code:"GB01",name:"Estuaire"},{code:"GB02",name:"Haut-Ogooué"},{code:"GB03",name:"Moyen-Ogooué"},{code:"GB04",name:"Ngounié"},{code:"GB05",name:"Nyanga"},{code:"GB06",name:"Ogooué-Ivindo"},{code:"GB07",name:"Ogooué-Lolo"},{code:"GB08",name:"Ogooué-Maritime"},{code:"GB09",name:"Woleu-Ntem"}]},{code:"GM",id:2389,name:"Gambia",states:[{code:"GA01",name:"Banjul"},{code:"GA03",name:"Central River"},{code:"GA02",name:"Lower River"},{code:"GA07",name:"North Bank"},{code:"GA04",name:"Upper River"},{code:"GA05",name:"West Coast"}]},{code:"GE",id:2248,name:"Georgia",states:[{code:"GG02",name:"Abkhazia"},{code:"GG04",name:"Ajaria"},{code:"GG65",name:"Guria"},{code:"GG66",name:"Imereti"},{code:"GG67",name:"Kakheti"},{code:"GG68",name:"Kvemo Kartli"},{code:"GG69",name:"Mtskheta-Mtianeti"},{code:"GG70",name:"Racha-Lochkhumi-Kvemo Svaneti"},{code:"GG71",name:"Samegrelo-Zemo Svaneti"},{code:"GG72",name:"Samtskhe-Javakheti"},{code:"GG73",name:"Shida Kartli"},{code:"GG51",name:"Tbilisi"}]},{code:"DE",id:2249,name:"Germany",states:[{code:"BW",name:"Baden-Württemberg"},{code:"BY",name:"Bayern"},{code:"BE",name:"Berlin"},{code:"BB",name:"Brandenburg"},{code:"HB",name:"Bremen"},{code:"HH",name:"Hamburg"},{code:"HE",name:"Hessen"},{code:"MV",name:"Mecklenburg-Vorpommern"},{code:"NI",name:"Niedersachsen"},{code:"NW",name:"Nordrhein-Westfalen"},{code:"RP",name:"Rheinland-Pfalz"},{code:"SL",name:"Saarland"},{code:"SN",name:"Sachsen"},{code:"ST",name:"Sachsen-Anhalt"},{code:"SH",name:"Schleswig-Holstein"},{code:"TH",name:"Thüringen"}]},{code:"GH",id:2250,name:"Ghana",states:[{code:"GH02",name:"Ashanti"},{code:"GH03",name:"Brong-Ahafo"},{code:"GH04",name:"Central"},{code:"GH05",name:"Eastern"},{code:"GH01",name:"Greater Accra"},{code:"GH06",name:"Northern"},{code:"GH10",name:"Upper East"},{code:"GH11",name:"Upper West"},{code:"GH08",name:"Volta"},{code:"GH09",name:"Western"}]},{code:"G999",id:2390,name:"Gibraltar",states:[{code:"GI.GI",name:"Gibraltar"}]},{code:"GR",id:2251,name:"Greece",states:[{code:"13",name:"Achaïa"},{code:"69",name:"Agio Oros"},{code:"01",name:"Aitolia kai Akarnania"},{code:"11",name:"Argolida"},{code:"12",name:"Arkadia"},{code:"31",name:"Arta"},{code:"A1",name:"Attiki"},{code:"64",name:"Chalkidiki"},{code:"94",name:"Chania"},{code:"85",name:"Chios"},{code:"81",name:"Dodekanisos"},{code:"52",name:"Drama"},{code:"71",name:"Evros"},{code:"05",name:"Evrytania"},{code:"04",name:"Evvoia"},{code:"63",name:"Florina"},{code:"07",name:"Fokida"},{code:"06",name:"Fthiotida"},{code:"51",name:"Grevena"},{code:"14",name:"Ileia"},{code:"53",name:"Imathia"},{code:"33",name:"Ioannina"},{code:"91",name:"Irakleio"},{code:"41",name:"Karditsa"},{code:"56",name:"Kastoria"},{code:"55",name:"Kavala"},{code:"23",name:"Kefallonia"},{code:"22",name:"Kerkyra"},{code:"57",name:"Kilkis"},{code:"15",name:"Korinthia"},{code:"58",name:"Kozani"},{code:"82",name:"Kyklades"},{code:"16",name:"Lakonia"},{code:"42",name:"Larisa"},{code:"92",name:"Lasithi"},{code:"24",name:"Lefkada"},{code:"83",name:"Lesvos"},{code:"43",name:"Magnisia"},{code:"17",name:"Messinia"},{code:"59",name:"Pella"},{code:"61",name:"Pieria"},{code:"34",name:"Preveza"},{code:"93",name:"Rethymno"},{code:"73",name:"Rodopi"},{code:"84",name:"Samos"},{code:"62",name:"Serres"},{code:"32",name:"Thesprotia"},{code:"54",name:"Thessaloniki"},{code:"44",name:"Trikala"},{code:"03",name:"Voiotia"},{code:"72",name:"Xanthi"},{code:"21",name:"Zakynthos"}]},{code:"GL",id:2252,name:"Greenland",states:[]},{code:"GD",id:2253,name:"Grenada",states:[]},{code:"GP",id:2419,name:"Guadeloupe",states:[]},{code:"GU",id:2376,name:"Guam",states:[]},{code:"GT",id:2371,name:"Guatemala",states:[{code:"GT01",name:"Alta Verapaz"},{code:"GT02",name:"Baja Verapaz"},{code:"GT03",name:"Chimaltenango"},{code:"GT04",name:"Chiquimula"},{code:"GT05",name:"El Progreso"},{code:"GT06",name:"Escuintla"},{code:"GT07",name:"Guatemala"},{code:"GT08",name:"Huehuetenango"},{code:"GT09",name:"Izabal"},{code:"GT10",name:"Jalapa"},{code:"GT11",name:"Jutiapa"},{code:"GT12",name:"Petén"},{code:"GT13",name:"Quetzaltenango"},{code:"GT14",name:"Quiché"},{code:"GT15",name:"Retalhuleu"},{code:"GT16",name:"Sacatepéquez"},{code:"GT17",name:"San Marcos"},{code:"GT18",name:"Santa Rosa"},{code:"GT19",name:"Sololá"},{code:"GT20",name:"Suchitepéquez"},{code:"GT21",name:"Totonicapán"},{code:"GT22",name:"Zacapa"}]},{code:"GG",id:2420,name:"Guernsey",states:[]},{code:"GN",id:2255,name:"Guinea",states:[{code:"GV01",name:"Beyla"},{code:"GV02",name:"Boffa"},{code:"GV03",name:"Boké"},{code:"GV04",name:"Conakry"},{code:"GV30",name:"Coyah"},{code:"GV05",name:"Dabola"},{code:"GV06",name:"Dalaba"},{code:"GV07",name:"Dinguiraye"},{code:"GV31",name:"Dubréka"},{code:"GV09",name:"Faranah"},{code:"GV10",name:"Forécariah"},{code:"GV11",name:"Fria"},{code:"GV12",name:"Gaoual"},{code:"GV13",name:"Guéckédou"},{code:"GV32",name:"Kankan"},{code:"GV15",name:"Kérouané"},{code:"GV16",name:"Kindia"},{code:"GV17",name:"Kissidougou"},{code:"GV33",name:"Koubia"},{code:"GV18",name:"Koundara"},{code:"GV19",name:"Kouroussa"},{code:"GV34",name:"Labé"},{code:"GV35",name:"Lélouma"},{code:"GV36",name:"Lola"},{code:"GV21",name:"Macenta"},{code:"GV22",name:"Mali"},{code:"GV23",name:"Mamou"},{code:"GV37",name:"Mandiana"},{code:"GV38",name:"Nzérékoré"},{code:"GV25",name:"Pita"},{code:"GV39",name:"Siguiri"},{code:"GV27",name:"Télimélé"},{code:"GV28",name:"Tougué"},{code:"GV29",name:"Yomou"}]},{code:"GW",id:2256,name:"Guinea-Bissau",states:[{code:"PU01",name:"Bafatá"},{code:"PU12",name:"Biombo"},{code:"PU11",name:"Bissau"},{code:"PU05",name:"Bolama"},{code:"PU06",name:"Cacheu"},{code:"PU10",name:"Gabú"},{code:"PU04",name:"Oio"},{code:"PU02",name:"Quinara"},{code:"PU07",name:"Tombali"}]},{code:"GY",id:2257,name:"Guyana",states:[{code:"GY10",name:"Barima-Waini"},{code:"GY11",name:"Cuyuni-Mazaruni"},{code:"GY12",name:"Demerara-Mahaica"},{code:"GY13",name:"East Berbice-Corentyne"},{code:"GY14",name:"Essequibo Islands-West Demerara"},{code:"GY15",name:"Mahaica-Berbice"},{code:"GY16",name:"Pomeroon-Supenaam"},{code:"GY17",name:"Potaro-Siparuni"},{code:"GY18",name:"Upper Demerara-Berbice"},{code:"GY19",name:"Upper Takutu-Upper Essequibo"}]},{code:"HT",id:2258,name:"Haiti",states:[{code:"HA07",name:"Centre"},{code:"HA14",name:"Grand' Anse"},{code:"HA06",name:"L'Artibonite"},{code:"HA15",name:"Nippes"},{code:"HA10",name:"Nord-Est"},{code:"HA03",name:"Nord-Ouest"},{code:"HA09",name:"Nord"},{code:"HA11",name:"Ouest"},{code:"HA13",name:"Sud-Est"},{code:"HA12",name:"Sud"}]},{code:"HM",id:2421,name:"Heard and McDonald Islands",states:[]},{code:"VA",id:2362,name:"Holy See (Vatican City State)",states:[]},{code:"HN",id:2259,name:"Honduras",states:[{code:"HO01",name:"Atlántida"},{code:"HO02",name:"Choluteca"},{code:"HO03",name:"Colón"},{code:"HO04",name:"Comayagua"},{code:"HO05",name:"Copán"},{code:"HO06",name:"Cortés"},{code:"HO07",name:"El Paraíso"},{code:"HO08",name:"Francisco Morazán"},{code:"HO09",name:"Gracias a Dios"},{code:"HO10",name:"Intibucá"},{code:"HO11",name:"Islas de la Bahía"},{code:"HO12",name:"La Paz"},{code:"HO13",name:"Lempira"},{code:"HO14",name:"Ocotepeque"},{code:"HO15",name:"Olancho"},{code:"HO16",name:"Santa Bárbara"},{code:"HO17",name:"Valle"},{code:"HO18",name:"Yoro"}]},{code:"HK",id:2377,name:"Hong Kong",states:[{code:"HK001",name:"Hong Kong Island"},{code:"HK002",name:"Kowloon"},{code:"HK003",name:"New Territories"}]},{code:"HU",id:2260,name:"Hungary",states:[{code:"BK",name:"Bács-Kiskun"},{code:"BA",name:"Baranya"},{code:"BE",name:"Békés"},{code:"BC",name:"Békéscsaba"},{code:"BZ",name:"Borsod-Abaúj-Zemplén"},{code:"BU",name:"Budapest"},{code:"CS",name:"Csongrád"},{code:"DE",name:"Debrecen"},{code:"DU",name:"Dunaújváros"},{code:"EG",name:"Eger"},{code:"ER",name:"Erd"},{code:"FE",name:"Fejér"},{code:"GY",name:"Gyor"},{code:"GS",name:"Gyor-Moson-Sopron"},{code:"HB",name:"Hajdú-Bihar"},{code:"HE",name:"Heves"},{code:"HV",name:"Hódmezovásárhely"},{code:"JN",name:"Jász-Nagykun-Szolnok"},{code:"KV",name:"Kaposvár"},{code:"KM",name:"Kecskemét"},{code:"KE",name:"Komárom-Esztergom"},{code:"MI",name:"Miskolc"},{code:"NK",name:"Nagykanizsa"},{code:"NO",name:"Nógrád"},{code:"NY",name:"Nyíregyháza"},{code:"PS",name:"Pécs"},{code:"PE",name:"Pest"},{code:"ST",name:"Salgótarján"},{code:"SO",name:"Somogy"},{code:"SN",name:"Sopron"},{code:"SZ",name:"Szabolcs-Szatmár-Bereg"},{code:"SD",name:"Szeged"},{code:"SF",name:"Székesfehérvár"},{code:"SS",name:"Szekszárd"},{code:"SK",name:"Szolnok"},{code:"SH",name:"Szombathely"},{code:"TB",name:"Tatabánya"},{code:"TO",name:"Tolna"},{code:"VA",name:"Vas"},{code:"VE",name:"Veszprém"},{code:"VM",name:"Veszprém City"},{code:"ZA",name:"Zala"},{code:"ZE",name:"Zalaegerszeg"}]},{code:"IS",id:2261,name:"Iceland",states:[{code:"7",name:"Austurland"},{code:"1",name:"Höfuðborgarsvæði utan Reykjavíkur"},{code:"6",name:"Norðurland eystra"},{code:"5",name:"Norðurland vestra"},{code:"0",name:"Reykjavík"},{code:"8",name:"Suðurland"},{code:"2",name:"Suðurnes"},{code:"4",name:"Vestfirðir"},{code:"3",name:"Vesturland"}]},{code:"IN",id:2262,name:"India",states:[{code:"AN",name:"Andaman and Nicobar Islands"},{code:"AP",name:"Andhra Pradesh"},{code:"AR",name:"Arunachal Pradesh"},{code:"AS",name:"Assam"},{code:"BR",name:"Bihar"},{code:"CH",name:"Chandigarh"},{code:"CT",name:"Chhattisgarh"},{code:"DN",name:"Dadra and Nagar Haveli"},{code:"DD",name:"Daman and Diu"},{code:"DL",name:"Delhi"},{code:"GA",name:"Goa"},{code:"GJ",name:"Gujarat"},{code:"HR",name:"Haryana"},{code:"HP",name:"Himachal Pradesh"},{code:"JK",name:"Jammu and Kashmir"},{code:"JH",name:"Jharkhand"},{code:"KA",name:"Karnataka"},{code:"KL",name:"Kerala"},{code:"LD",name:"Lakshadweep"},{code:"MP",name:"Madhya Pradesh"},{code:"MH",name:"Maharashtra"},{code:"MN",name:"Manipur"},{code:"ML",name:"Meghalaya"},{code:"MZ",name:"Mizoram"},{code:"NL",name:"Nagaland"},{code:"OR",name:"Orissa"},{code:"PY",name:"Pondicherry"},{code:"PB",name:"Punjab"},{code:"RJ",name:"Rajasthan"},{code:"SK",name:"Sikkim"},{code:"TN",name:"Tamil Nadu"},{code:"TG",name:"Telangana"},{code:"TR",name:"Tripura"},{code:"UP",name:"Uttar Pradesh"},{code:"UL",name:"Uttaranchal"},{code:"WB",name:"West Bengal"}]},{code:"ID",id:2263,name:"Indonesia",states:[{code:"AC",name:"Aceh"},{code:"BA",name:"Bali"},{code:"BB",name:"Bangka Belitung"},{code:"BT",name:"Banten"},{code:"BE",name:"Bengkulu"},{code:"GO",name:"Gorontalo"},{code:"JK",name:"Jakarta Raya"},{code:"JA",name:"Jambi"},{code:"JB",name:"Jawa Barat"},{code:"JT",name:"Jawa Tengah"},{code:"JI",name:"Jawa Timur"},{code:"KB",name:"Kalimantan Barat"},{code:"KS",name:"Kalimantan Selatan"},{code:"KT",name:"Kalimantan Tengah"},{code:"KI",name:"Kalimantan Timur"},{code:"KR",name:"Kepulauan Riau"},{code:"LA",name:"Lampung"},{code:"MA",name:"Maluku"},{code:"MU",name:"Maluku Utara"},{code:"NB",name:"Nusa Tenggara Barat"},{code:"NT",name:"Nusa Tenggara Timur"},{code:"PA",name:"Papua"},{code:"PB",name:"Papua Barat"},{code:"RI",name:"Riau"},{code:"SR",name:"Sulawesi Barat"},{code:"SN",name:"Sulawesi Selatan"},{code:"ST",name:"Sulawesi Tengah"},{code:"SG",name:"Sulawesi Tenggara"},{code:"SA",name:"Sulawesi Utara"},{code:"SB",name:"Sumatera Barat"},{code:"SS",name:"Sumatera Selatan"},{code:"SU",name:"Sumatera Utara"},{code:"YO",name:"Yogyakarta"}]},{code:"IR",id:2264,name:"Iran; Islamic Republic of",states:[{code:"IR44",name:"Alborz"},{code:"IR32",name:"Ardebil"},{code:"IR22",name:"Bushehr"},{code:"IR03",name:"Chahar Mahall and Bakhtiari"},{code:"IR33",name:"East Azarbaijan"},{code:"IR28",name:"Esfahan"},{code:"IR07",name:"Fars"},{code:"IR08",name:"Gilan"},{code:"IR37",name:"Golestan"},{code:"IR09",name:"Hamadan"},{code:"IR11",name:"Hormozgan"},{code:"IR42",name:"IRazavi Khorasan"},{code:"IR10",name:"Ilam"},{code:"IR29",name:"Kerman"},{code:"IR13",name:"Kermanshah"},{code:"IR15",name:"Khuzestan"},{code:"IR05",name:"Kohgiluyeh and Buyer Ahmad"},{code:"IR16",name:"Kordestan"},{code:"IR23",name:"Lorestan"},{code:"IR34",name:"Markazi"},{code:"IR35",name:"Mazandaran"},{code:"IR43",name:"North Khorasan"},{code:"IR38",name:"Qazvin"},{code:"IR39",name:"Qom"},{code:"IR25",name:"Semnan"},{code:"IR04",name:"Sistan and Baluchestan"},{code:"IR41",name:"South Khorasan"},{code:"IR26",name:"Tehran"},{code:"IR01",name:"West Azarbaijan"},{code:"IR40",name:"Yazd"},{code:"IR36",name:"Zanjan"}]},{code:"IQ",id:2265,name:"Iraq",states:[{code:"IZ01",name:"Al-Anbar"},{code:"IZ02",name:"Al-Basrah"},{code:"IZ03",name:"Al-Muthanna"},{code:"IZ04",name:"Al-Qadisiyah"},{code:"IZ17",name:"An-Najaf"},{code:"IZ11",name:"Arbil"},{code:"IZ05",name:"As-Sulaymaniyah"},{code:"IZ13",name:"At-Ta'mim"},{code:"IZ06",name:"Babil"},{code:"IZ07",name:"Baghdad"},{code:"IZ08",name:"Dahuk"},{code:"IZ09",name:"Dhi Qar"},{code:"IZ10",name:"Diyala"},{code:"IZ12",name:"Karbala"},{code:"IZ14",name:"Maysan"},{code:"IZ15",name:"Ninawa"},{code:"IZ18",name:"Salah ad-Din"},{code:"IZ16",name:"Wasit"}]},{code:"IE",id:2266,name:"Ireland",states:[{code:"CW",name:"Carlow"},{code:"CN",name:"Cavan"},{code:"CE",name:"Clare"},{code:"C",name:"Connacht"},{code:"CO",name:"Cork"},{code:"DL",name:"Donegal"},{code:"D",name:"Dublin"},{code:"G",name:"Galway"},{code:"KY",name:"Kerry"},{code:"KE",name:"Kildare"},{code:"KK",name:"Kilkenny"},{code:"LS",name:"Laois"},{code:"L",name:"Leinster"},{code:"LM",name:"Leitrim"},{code:"LK",name:"Limerick"},{code:"LD",name:"Longford"},{code:"LH",name:"Louth"},{code:"MO",name:"Mayo"},{code:"MH",name:"Meath"},{code:"MN",name:"Monaghan"},{code:"M",name:"Munster"},{code:"OY",name:"Offaly"},{code:"RN",name:"Roscommon"},{code:"SO",name:"Sligo"},{code:"TA",name:"Tipperary"},{code:"U",name:"Ulster"},{code:"WD",name:"Waterford"},{code:"WH",name:"Westmeath"},{code:"WX",name:"Wexford"},{code:"WW",name:"Wicklow"}]},{code:"IM",id:2445,name:"Isle of Man",states:[]},{code:"IL",id:2267,name:"Israel",states:[{code:"IS01",name:"HaDarom"},{code:"IS02",name:"HaMerkaz"},{code:"IS03",name:"HaZafon"},{code:"IS04",name:"Haifa"},{code:"IS06",name:"Jerusalem"},{code:"IS05",name:"Tel Aviv"}]},{code:"IT",id:2268,name:"Italy",states:[{code:"65",name:"Abruzzo"},{code:"AG",name:"Agrigento"},{code:"AL",name:"Alessandria"},{code:"AN",name:"Ancona"},{code:"AO",name:"Aosta"},{code:"AR",name:"Arezzo"},{code:"AP",name:"Ascoli Piceno"},{code:"AT",name:"Asti"},{code:"AV",name:"Avellino"},{code:"BA",name:"Bari"},{code:"BT",name:"Barletta-Andria-Trani"},{code:"77",name:"Basilicata"},{code:"BL",name:"Belluno"},{code:"BN",name:"Benevento"},{code:"BG",name:"Bergamo"},{code:"BI",name:"Biella"},{code:"BO",name:"Bologna"},{code:"BZ",name:"Bolzano"},{code:"BS",name:"Brescia"},{code:"BR",name:"Brindisi"},{code:"CA",name:"Cagliari"},{code:"78",name:"Calabria"},{code:"CL",name:"Caltanissetta"},{code:"72",name:"Campania"},{code:"CB",name:"Campobasso"},{code:"CI",name:"Carbonia-Iglesias"},{code:"CE",name:"Caserta"},{code:"CT",name:"Catania"},{code:"CZ",name:"Catanzaro"},{code:"CH",name:"Chieti"},{code:"CO",name:"Como"},{code:"CS",name:"Cosenza"},{code:"CR",name:"Cremona"},{code:"KR",name:"Crotone"},{code:"CN",name:"Cuneo"},{code:"45",name:"Emilia-Romagna"},{code:"EN",name:"Enna"},{code:"FM",name:"Fermo"},{code:"FE",name:"Ferrara"},{code:"FI",name:"Firenze"},{code:"FG",name:"Foggia"},{code:"FC",name:"Forli-Cesena"},{code:"36",name:"Friuli-Venezia Giulia"},{code:"FR",name:"Frosinone"},{code:"GE",name:"Genova"},{code:"GO",name:"Gorizia"},{code:"GR",name:"Grosseto"},{code:"IM",name:"Imperia"},{code:"IS",name:"Isernia"},{code:"AQ",name:"L'Aquila"},{code:"SP",name:"La Spezia"},{code:"LT",name:"Latina"},{code:"62",name:"Lazio"},{code:"LE",name:"Lecce"},{code:"LC",name:"Lecco"},{code:"42",name:"Liguria"},{code:"LI",name:"Livorno"},{code:"LO",name:"Lodi"},{code:"25",name:"Lombardia"},{code:"LU",name:"Lucca"},{code:"MC",name:"Macerata"},{code:"MN",name:"Mantova"},{code:"57",name:"Marche"},{code:"MS",name:"Massa-Carrara"},{code:"MT",name:"Matera"},{code:"VS",name:"Medio Campidano"},{code:"ME",name:"Messina"},{code:"MI",name:"Milano"},{code:"MO",name:"Modena"},{code:"67",name:"Molise"},{code:"MB",name:"Monza e Brianza"},{code:"NA",name:"Napoli"},{code:"NO",name:"Novara"},{code:"NU",name:"Nuoro"},{code:"OG",name:"Ogliastra"},{code:"OT",name:"Olbia-Tempio"},{code:"OR",name:"Oristano"},{code:"PD",name:"Padova"},{code:"PA",name:"Palermo"},{code:"PR",name:"Parma"},{code:"PV",name:"Pavia"},{code:"PG",name:"Perugia"},{code:"PU",name:"Pesaro e Urbino"},{code:"PE",name:"Pescara"},{code:"PC",name:"Piacenza"},{code:"21",name:"Piemonte"},{code:"PI",name:"Pisa"},{code:"PT",name:"Pistoia"},{code:"PN",name:"Pordenone"},{code:"PZ",name:"Potenza"},{code:"PO",name:"Prato"},{code:"75",name:"Puglia"},{code:"RG",name:"Ragusa"},{code:"RA",name:"Ravenna"},{code:"RC",name:"Reggio Calabria"},{code:"RE",name:"Reggio Emilia"},{code:"RI",name:"Rieti"},{code:"RN",name:"Rimini"},{code:"RM",name:"Roma"},{code:"RO",name:"Rovigo"},{code:"SA",name:"Salerno"},{code:"88",name:"Sardegna"},{code:"SS",name:"Sassari"},{code:"SV",name:"Savona"},{code:"82",name:"Sicilia"},{code:"SI",name:"Siena"},{code:"SR",name:"Siracusa"},{code:"SO",name:"Sondrio"},{code:"TA",name:"Taranto"},{code:"TE",name:"Teramo"},{code:"TR",name:"Terni"},{code:"TO",name:"Torino"},{code:"52",name:"Toscana"},{code:"TP",name:"Trapani"},{code:"32",name:"Trentino-Alto Adige"},{code:"TN",name:"Trento"},{code:"TV",name:"Treviso"},{code:"TS",name:"Trieste"},{code:"UD",name:"Udine"},{code:"55",name:"Umbria"},{code:"23",name:"Valle d'Aosta"},{code:"VA",name:"Varese"},{code:"34",name:"Veneto"},{code:"VE",name:"Venezia"},{code:"VB",name:"Verbano-Cusio-Ossola"},{code:"VC",name:"Vercelli"},{code:"VR",name:"Verona"},{code:"VV",name:"Vibo Valentia"},{code:"VI",name:"Vicenza"},{code:"VT",name:"Viterbo"}]},{code:"JM",id:2269,name:"Jamaica",states:[{code:"JM01",name:"Clarendon"},{code:"JM02",name:"Hanover"},{code:"JM17",name:"Kingston"},{code:"JM04",name:"Manchester"},{code:"JM07",name:"Portland"},{code:"JM08",name:"Saint Andrew"},{code:"JM09",name:"Saint Ann"},{code:"JM10",name:"Saint Catherine"},{code:"JM11",name:"Saint Elizabeth"},{code:"JM12",name:"Saint James"},{code:"JM13",name:"Saint Mary"},{code:"JM14",name:"Saint Thomas"},{code:"JM15",name:"Trelawny"},{code:"JM16",name:"Westmoreland"}]},{code:"JP",id:2270,name:"Japan",states:[{code:"JP23",name:"Aichi"},{code:"JP05",name:"Akita"},{code:"JP02",name:"Aomori"},{code:"JP12",name:"Chiba"},{code:"JP38",name:"Ehime"},{code:"JP18",name:"Fukui"},{code:"JP40",name:"Fukuoka"},{code:"JP07",name:"Fukushima"},{code:"JP21",name:"Gifu"},{code:"JP10",name:"Gunma"},{code:"JP34",name:"Hiroshima"},{code:"JP01",name:"Hokkaido"},{code:"JP28",name:"Hyogo"},{code:"JP08",name:"Ibaraki"},{code:"JP17",name:"Ishikawa"},{code:"JP03",name:"Iwate"},{code:"JP37",name:"Kagawa"},{code:"JP46",name:"Kagoshima"},{code:"JP14",name:"Kanagawa"},{code:"JP39",name:"Kochi"},{code:"JP43",name:"Kumamoto"},{code:"JP26",name:"Kyoto"},{code:"JP24",name:"Mie"},{code:"JP04",name:"Miyagi"},{code:"JP45",name:"Miyazaki"},{code:"JP20",name:"Nagano"},{code:"JP42",name:"Nagasaki"},{code:"JP29",name:"Nara"},{code:"JP15",name:"Niigata"},{code:"JP44",name:"Oita"},{code:"JP33",name:"Okayama"},{code:"JP47",name:"Okinawa"},{code:"JP27",name:"Osaka"},{code:"JP41",name:"Saga"},{code:"JP11",name:"Saitama"},{code:"JP25",name:"Shiga"},{code:"JP32",name:"Shimane"},{code:"JP22",name:"Shizuoka"},{code:"JP09",name:"Tochigi"},{code:"JP36",name:"Tokushima"},{code:"JP13",name:"Tokyo"},{code:"JP31",name:"Tottori"},{code:"JP16",name:"Toyama"},{code:"JP30",name:"Wakayama"},{code:"JP06",name:"Yamagata"},{code:"JP35",name:"Yamaguchi"},{code:"JP19",name:"Yamanashi"}]},{code:"JE",id:2422,name:"Jersey",states:[]},{code:"JO",id:2271,name:"Jordan",states:[{code:"JO01",name:"Ajlun"},{code:"JO02",name:"Amman"},{code:"JO03",name:"Aqaba"},{code:"JO04",name:"Balqa"},{code:"JO05",name:"Irbid"},{code:"JO06",name:"JarasJ"},{code:"JO07",name:"Karak"},{code:"JO08",name:"Ma'an"},{code:"JO09",name:"Madaba"},{code:"JO10",name:"Mafraq"},{code:"JO11",name:"Tafilah"},{code:"JO12",name:"Zarqa"}]},{code:"KZ",id:2272,name:"Kazakhstan",states:[{code:"KZ01",name:"Almaty"},{code:"KZ02",name:"Almaty (City)"},{code:"KZ03",name:"Aqmola"},{code:"KZ04",name:"Aqtöbe"},{code:"KZ05",name:"Astana"},{code:"KZ06",name:"Atyrau"},{code:"KZ08",name:"Bayqonyr"},{code:"KZ15",name:"East Kazakhstan"},{code:"KZ09",name:"Mangghystau"},{code:"KZ16",name:"North Kazakhstan"},{code:"KZ11",name:"Pavlodar"},{code:"KZ12",name:"Qaraghandy"},{code:"KZ13",name:"Qostanay"},{code:"KZ14",name:"Qyzylorda"},{code:"KZ10",name:"South Kazakhstan"},{code:"KZ07",name:"West Kazakhstan"},{code:"KZ17",name:"Zhambyl"}]},{code:"KE",id:2273,name:"Kenya",states:[{code:"KE10",name:"Baringo"},{code:"KE11",name:"Bomet"},{code:"KE12",name:"Bungoma"},{code:"KE13",name:"Busia"},{code:"KE14",name:"Elgeyo Marakwet"},{code:"KE15",name:"Embu"},{code:"KE16",name:"Garissa"},{code:"KE17",name:"Homa Bay"},{code:"KE18",name:"Isiolo"},{code:"KE19",name:"Kajiado"},{code:"KE20",name:"Kakamega"},{code:"KE21",name:"Kericho"},{code:"KE22",name:"Kiambu"},{code:"KE23",name:"Kilifi"},{code:"KE24",name:"Kirinyaga"},{code:"KE25",name:"Kisii"},{code:"KE26",name:"Kisumu"},{code:"KE27",name:"Kitui"},{code:"KE28",name:"Kwale"},{code:"KE29",name:"Laikipia"},{code:"KE30",name:"Lamu"},{code:"KE31",name:"Machakos"},{code:"KE32",name:"Makueni"},{code:"KE33",name:"Mandera"},{code:"KE34",name:"Marsabit"},{code:"KE35",name:"Meru"},{code:"KE36",name:"Migori"},{code:"KE37",name:"Mombasa"},{code:"KE38",name:"Murang"},{code:"KE05",name:"Nairobi"},{code:"KE39",name:"Nakuru"},{code:"KE40",name:"Nandi"},{code:"KE41",name:"Narok"},{code:"KE42",name:"Nyamira"},{code:"KE43",name:"Nyandarua"},{code:"KE44",name:"Nyeri"},{code:"KE45",name:"Samburu"},{code:"KE46",name:"Siaya"},{code:"KE47",name:"Taita Taveta"},{code:"KE48",name:"Tana River"},{code:"KE49",name:"Tharaka Nithi"},{code:"KE50",name:"Trans Nzoia"},{code:"KE51",name:"Turkana"},{code:"KE52",name:"Uasin Gishu"},{code:"KE53",name:"Vihiga"},{code:"KE54",name:"Wajir"},{code:"KE55",name:"West Pokot"}]},{code:"KI",id:2391,name:"Kiribati",states:[]},{code:"KP",id:2274,name:"Korea; Democratic People's Republic Of (North)",states:[{code:"KN01",name:"Chagang-do"},{code:"KN17",name:"Hamgyong-bukto"},{code:"KN03",name:"Hamgyong-namdo"},{code:"KN07",name:"Hwanghae-bukto"},{code:"KN06",name:"Hwanghae-namdo"},{code:"KN09",name:"Kangwon-do"},{code:"KN18",name:"Najin Sonbong-si"},{code:"KN11",name:"P'yongan-bukto"},{code:"KN15",name:"P'yongan-namdo"},{code:"KN12",name:"P'yongyang-si"},{code:"KN13",name:"Yanggang-do"}]},{code:"KR",id:2275,name:"Korea; Republic Of (South)",states:[{code:"KS10",name:"Busan"},{code:"KS05",name:"Chungcheongbuk-do"},{code:"KS17",name:"Chungcheongnam-do"},{code:"KS15",name:"Daegu"},{code:"KS19",name:"Daejeon"},{code:"KS06",name:"Gangwon-do"},{code:"KS18",name:"Gwangju"},{code:"KS13",name:"Gyeonggi-do"},{code:"KS14",name:"Gyeongsangbuk-do"},{code:"KS20",name:"Gyeongsangnam-do"},{code:"KS12",name:"Incheon"},{code:"KS01",name:"Jeju-do"},{code:"KS03",name:"Jeollabuk-do"},{code:"KS16",name:"Jeollanam-do"},{code:"KS22",name:"Sejong"},{code:"KS11",name:"Seoul"},{code:"KS21",name:"Ulsan"}]},{code:"KV",id:2392,name:"Kosovo",states:[]},{code:"KW",id:2276,name:"Kuwait",states:[{code:"KU04",name:"Al Ahmadi"},{code:"KU07",name:"Al Farwaniyah"},{code:"KU05",name:"Al Jahrah"},{code:"KU02",name:"Al Kuwayt"},{code:"KU08",name:"Hawalli"},{code:"KU09",name:"Mubarak Al-Kabir"}]},{code:"KG",id:2277,name:"Kyrgyzstan",states:[{code:"KG09",name:"Batken"},{code:"KG01",name:"Bishkek"},{code:"KG02",name:"Chüy"},{code:"KG03",name:"Jalal-Abad"},{code:"KG04",name:"Naryn"},{code:"KG10",name:"Osh [City]"},{code:"KG08",name:"Osh"},{code:"KG06",name:"Talas"},{code:"KG07",name:"Ysyk-Köl"}]},{code:"LA",id:2278,name:"Lao People's Democratic Republic",states:[{code:"LA01",name:"Attapu"},{code:"LA22",name:"Bokeo"},{code:"LA23",name:"Bolikhamxai"},{code:"LA02",name:"Champasak"},{code:"LA03",name:"Houaphan"},{code:"LA15",name:"Khammouan"},{code:"LA16",name:"Louang Namtha"},{code:"LA17",name:"Louangphrabang"},{code:"LA07",name:"Oudômxai"},{code:"LA18",name:"Phôngsali"},{code:"LA19",name:"Saravan"},{code:"LA20",name:"Savannakhét"},{code:"LA27",name:"Vientiane"},{code:"LA24",name:"Vientiane [prefecture]"},{code:"LA13",name:"Xaignabouri"},{code:"LA28",name:"Xaisômboun"},{code:"LA26",name:"Xékong"},{code:"LA14",name:"Xiangkhoang"}]},{code:"LV",id:2279,name:"Latvia",states:[{code:"LG34",name:"Adaži"},{code:"LG35",name:"Aglona"},{code:"LG36",name:"Aizkraukle"},{code:"LG37",name:"Aizpute"},{code:"LG38",name:"Akniste"},{code:"LG39",name:"Aloja"},{code:"LG40",name:"Alsunga"},{code:"LG41",name:"Aluksne"},{code:"LG42",name:"Amata"},{code:"LG43",name:"Ape"},{code:"LG44",name:"Auce"},{code:"LG45",name:"Babite"},{code:"LG46",name:"Baldone"},{code:"LG47",name:"Baltinava"},{code:"LG48",name:"Balvi"},{code:"LG49",name:"Bauska"},{code:"LG50",name:"Beverina"},{code:"LG51",name:"Broceni"},{code:"LG52",name:"Burtnieki"},{code:"LG53",name:"Carnikava"},{code:"LG54",name:"Cesis"},{code:"LG55",name:"Cesvaine"},{code:"LG56",name:"Cibla"},{code:"LG57",name:"Dagda"},{code:"LG06",name:"Daugavpils"},{code:"LG58",name:"Daugavpils"},{code:"LG59",name:"Dobele"},{code:"LG60",name:"Dundaga"},{code:"LG61",name:"Durbe"},{code:"LG62",name:"Engure"},{code:"LG63",name:"Ergli"},{code:"LG64",name:"Garkalne"},{code:"LG65",name:"Grobina"},{code:"LG66",name:"Gulbene"},{code:"LG67",name:"Iecava"},{code:"LG68",name:"Ikškile"},{code:"LG69",name:"Ilukste"},{code:"LG70",name:"Incukalns"},{code:"LG71",name:"Jaunjelgava"},{code:"LG72",name:"Jaunpiebalga"},{code:"LG73",name:"Jaunpils"},{code:"LG75",name:"Jekabpils"},{code:"LG74",name:"Jekabpils"},{code:"LG76",name:"Jelgava"},{code:"LG11",name:"Jelgava"},{code:"LG13",name:"Jurmala"},{code:"LG77",name:"Kandava"},{code:"LG78",name:"Karsava"},{code:"LG79",name:"Kegums"},{code:"LG80",name:"Kekava"},{code:"LG81",name:"Kocenu"},{code:"LG82",name:"Koknese"},{code:"LG83",name:"Kraslava"},{code:"LG84",name:"Krimulda"},{code:"LG85",name:"Krustpils"},{code:"LG86",name:"Kuldiga"},{code:"LG87",name:"Lielvarde"},{code:"LG16",name:"Liepaja"},{code:"LG88",name:"Ligatne"},{code:"LG89",name:"Limbaži"},{code:"LG90",name:"Livani"},{code:"LG91",name:"Lubana"},{code:"LG92",name:"Ludza"},{code:"LG93",name:"Madona"},{code:"LG94",name:"Malpils"},{code:"LG95",name:"Marupe"},{code:"LG96",name:"Mazsalaca"},{code:"LGF1",name:"Mersraga"},{code:"LG97",name:"Naukšeni"},{code:"LG98",name:"Nereta"},{code:"LG99",name:"Nica"},{code:"LGA1",name:"Ogre"},{code:"LGA2",name:"Olaine"},{code:"LGA3",name:"Ozolnieki"},{code:"LGA4",name:"Pargauja"},{code:"LGA5",name:"Pavilosta"},{code:"LGA6",name:"Plavinas"},{code:"LGA7",name:"Preili"},{code:"LGA8",name:"Priekule"},{code:"LGA9",name:"Priekuli"},{code:"LGB1",name:"Rauna"},{code:"LGB2",name:"Rezekne"},{code:"LG23",name:"Rezekne"},{code:"LGB3",name:"Riebini"},{code:"LG25",name:"Riga"},{code:"LGB4",name:"Roja"},{code:"LGB5",name:"Ropaži"},{code:"LGB6",name:"Rucava"},{code:"LGB7",name:"Rugaji"},{code:"LGB8",name:"Rujiena"},{code:"LGB9",name:"Rundale"},{code:"LGC1",name:"Salacgriva"},{code:"LGC2",name:"Sala"},{code:"LGC3",name:"Salaspils"},{code:"LGC4",name:"Saldus"},{code:"LGC5",name:"Saulkrasti"},{code:"LGC6",name:"Seja"},{code:"LGC7",name:"Sigulda"},{code:"LGC8",name:"Skriveri"},{code:"LGC9",name:"Skrunda"},{code:"LGD1",name:"Smiltene"},{code:"LGD2",name:"Stopini"},{code:"LGD3",name:"Strenci"},{code:"LGD4",name:"Talsi"},{code:"LGD5",name:"Tervete"},{code:"LGD6",name:"Tukums"},{code:"LGD7",name:"Vainode"},{code:"LGD8",name:"Valka"},{code:"LGD9",name:"Valmiera"},{code:"LGE1",name:"Varaklani"},{code:"LGE2",name:"Varkava"},{code:"LGE3",name:"Vecpiebalga"},{code:"LGE4",name:"Vecumnieki"},{code:"LGE5",name:"Ventspils"},{code:"LG32",name:"Ventspils"},{code:"LGE6",name:"Viesite"},{code:"LGE7",name:"Vilaka"},{code:"LGE8",name:"Vilani"},{code:"LGE9",name:"Zilupe"}]},{code:"LB",id:2280,name:"Lebanon",states:[{code:"LE10",name:"Aakkar"},{code:"LE07",name:"An Nabatiyah"},{code:"LE11",name:"Baalbek-Hermel"},{code:"LE04",name:"Beirut"},{code:"LE08",name:"Beqaa"},{code:"LE05",name:"Mount Lebanon"},{code:"LE09",name:"North Lebanon"},{code:"LE06",name:"South Lebanon"}]},{code:"LS",id:2281,name:"Lesotho",states:[{code:"LT10",name:"Berea"},{code:"LT11",name:"Butha-Buthe"},{code:"LT12",name:"Leribe"},{code:"LT14",name:"Mafeteng"},{code:"LT13",name:"Mafeteng"},{code:"LT15",name:"Mohale's Hoek"},{code:"LT16",name:"Mokhotlong"},{code:"LT17",name:"Qacha's Nek"},{code:"LT18",name:"Quthing"},{code:"LT19",name:"Thaba-Tseka"}]},{code:"LR",id:2282,name:"Liberia",states:[{code:"LI15",name:"Bomi"},{code:"LI01",name:"Bong"},{code:"LI21\t",name:"Gbarpolu"},{code:"LI11",name:"Grand Bassa"},{code:"LI12",name:"Grand Cape Mount"},{code:"LI19",name:"Grand Gedeh"},{code:"LI16",name:"Grand Kru"},{code:"LI20",name:"Lofa"},{code:"LI17",name:"Margibi"},{code:"LI13",name:"Maryland"},{code:"LI14",name:"Montserrado"},{code:"LI09",name:"Nimba"},{code:"LI22",name:"River Gee"},{code:"LI18",name:"Rivercess"},{code:"LI10",name:"Sinoe"}]},{code:"LY",id:2380,name:"Libyan Arab Jamahiriya",states:[]},{code:"LI",id:2284,name:"Liechtenstein",states:[]},{code:"LT",id:2285,name:"Lithuania",states:[{code:"LH56",name:"Alytus"},{code:"LH57",name:"Kaunas"},{code:"LH58",name:"Klaipeda"},{code:"LH59",name:"Marijampole"},{code:"LH60",name:"Panevežys"},{code:"LH61",name:"Siauliai"},{code:"LH62",name:"Taurage"},{code:"LH63",name:"Telšiai"},{code:"LH64",name:"Utena"},{code:"LH65",name:"Vilnius"}]},{code:"LU",id:2286,name:"Luxembourg",states:[{code:"LU01",name:"Diekirch"},{code:"LU02",name:"Grevenmacher"},{code:"LU03",name:"Luxembourg"}]},{code:"MO",id:2287,name:"Macau",states:[]},{code:"MK",id:2288,name:"Macedonia",states:[]},{code:"YU",id:2367,name:"Macedonia; the Former Yugoslav Republic",states:[]},{code:"MG",id:2289,name:"Madagascar",states:[{code:"MA05",name:"Antananarivo"},{code:"MA01",name:"Antsiranana"},{code:"MA02",name:"Fianarantsoa"},{code:"MA03",name:"Mahajanga"},{code:"MA04",name:"Toamasina"},{code:"MA06",name:"Toliara"}]},{code:"MW",id:2290,name:"Malawi",states:[{code:"MI26",name:"Balaka"},{code:"MI24",name:"Blantyre"},{code:"MI02",name:"Chikwawa"},{code:"MI03",name:"Chiradzulu"},{code:"MI04",name:"Chitipa"},{code:"MI06",name:"Dedza"},{code:"MI07",name:"Dowa"},{code:"MI08",name:"Karonga"},{code:"MI09",name:"Kasungu"},{code:"MI27",name:"Likoma"},{code:"MI11",name:"Lilongwe"},{code:"MI28",name:"Machinga"},{code:"MI12",name:"Mangochi"},{code:"MI13",name:"Mchinji"},{code:"MI29",name:"Mulanje"},{code:"MI25",name:"Mwanza"},{code:"MI15",name:"Mzimba"},{code:"MI31",name:"Neno"},{code:"MI17",name:"Nkhata Bay"},{code:"MI18",name:"Nkhotakota"},{code:"MI19",name:"Nsanje"},{code:"MI16",name:"Ntcheu"},{code:"MI20",name:"Ntchisi"},{code:"MI30",name:"Phalombe"},{code:"MI21",name:"Rumphi"},{code:"MI22",name:"Salima"},{code:"MI05",name:"Thyolo"},{code:"MI23",name:"Zomba"}]},{code:"MY",id:2291,name:"Malaysia",states:[{code:"MY01",name:"Johor"},{code:"MY02",name:"Kedah"},{code:"MY03",name:"Kelantan"},{code:"MY04",name:"Melaka"},{code:"MY05",name:"Negeri Sembilan"},{code:"MY06",name:"Pahang"},{code:"MY08",name:"Perak"},{code:"MY09",name:"Perlis"},{code:"MY07",name:"Pulau Pinang"},{code:"MY12",name:"Sabah"},{code:"MY13",name:"Sarawak"},{code:"MY10",name:"Selangor"},{code:"MY11",name:"Terengganu"},{code:"MY14",name:"W.P. Kuala Lumpur"},{code:"MY15",name:"W.P. Labuan"},{code:"MY16",name:"W.P. Putrajaya"}]},{code:"MV",id:2384,name:"Maldives; Republic of",states:[]},{code:"ML",id:2292,name:"Mali",states:[{code:"ML01",name:"Bamako"},{code:"ML09",name:"Gao"},{code:"ML03",name:"Kayes"},{code:"ML10",name:"Kidal"},{code:"ML07",name:"Koulikoro"},{code:"ML.ME",name:"Ménaka"},{code:"ML04",name:"Mopti"},{code:"ML05",name:"Ségou"},{code:"ML06",name:"Sikasso"},{code:"ML.TD",name:"Taoudénit"},{code:"ML08",name:"Timbuktu"}]},{code:"MT",id:2293,name:"Malta",states:[{code:"MT.CE",name:"Central"},{code:"MT.GO",name:"Gozo"},{code:"MT.NO",name:"Northern"},{code:"MT.SE",name:"South Eastern"},{code:"MT.SO",name:"Southern"}]},{code:"RM",id:2394,name:"Marshall Islands",states:[]},{code:"MQ",id:2423,name:"Martinique",states:[]},{code:"MR",id:2294,name:"Mauritania",states:[{code:"MR07",name:"Adrar"},{code:"MR03",name:"Assaba"},{code:"MR05",name:"Brakna"},{code:"MR08",name:"Dakhlet Nouadhibou"},{code:"MR04",name:"Gorgol"},{code:"MR10",name:"Guidimaka"},{code:"MR01",name:"Hodh ech Chargui"},{code:"MR02",name:"Hodh el Gharbi"},{code:"MR12",name:"Inchiri"},{code:"MR.NN",name:"Nouakchott Nord"},{code:"MR13",name:"Nouakchott Ouest"},{code:"MR.NS",name:"Nouakchott Sud"},{code:"MR09",name:"Tagant"},{code:"MR11",name:"Tiris Zemmour"},{code:"MR06",name:"Trarza"}]},{code:"MU",id:2295,name:"Mauritius",states:[{code:"MP21",name:"Agalega Islands"},{code:"MP12",name:"Black River"},{code:"MP22",name:"Cargados Carajos"},{code:"MP13",name:"Flacq"},{code:"MP14",name:"Grand Port"},{code:"MP15",name:"Moka"},{code:"MP16",name:"Pamplemousses"},{code:"MP17",name:"Plaines Wilhems"},{code:"MP18",name:"Port Louis"},{code:"MP19",name:"Rivière du Rempart"},{code:"MP23",name:"Rodrigues"},{code:"MP20",name:"Savanne"}]},{code:"M999",id:2393,name:"Mayotte",states:[]},{code:"MX",id:2296,name:"Mexico",states:[{code:"AGU",name:"Aguascalientes"},{code:"BCS",name:"Baja California Sur"},{code:"BCN",name:"Baja California"},{code:"CAM",name:"Campeche"},{code:"CHP",name:"Chiapas"},{code:"CHH",name:"Chihuahua"},{code:"COA",name:"Coahuila"},{code:"COL",name:"Colima"},{code:"DIF",name:"Distrito Federal"},{code:"DUR",name:"Durango"},{code:"GUA",name:"Guanajuato"},{code:"GRO",name:"Guerrero"},{code:"HID",name:"Hidalgo"},{code:"JAL",name:"Jalisco"},{code:"MEX",name:"México"},{code:"MIC",name:"Michoacán"},{code:"MOR",name:"Morelos"},{code:"NAY",name:"Nayarit"},{code:"NLE",name:"Nuevo León"},{code:"OAX",name:"Oaxaca"},{code:"PUE",name:"Puebla"},{code:"QUE",name:"Querétaro"},{code:"ROO",name:"Quintana Roo"},{code:"SLP",name:"San Luis Potosí"},{code:"SIN",name:"Sinaloa"},{code:"SON",name:"Sonora"},{code:"TAB",name:"Tabasco"},{code:"TAM",name:"Tamaulipas"},{code:"TLA",name:"Tlaxcala"},{code:"VER",name:"Veracruz"},{code:"YUC",name:"Yucatán"},{code:"ZAC",name:"Zacatecas"}]},{code:"FM",id:2297,name:"Micronesia; Federated States of",states:[{code:"FM03",name:"Chuuk"},{code:"FM01",name:"Kosrae"},{code:"FM02",name:"Pohnpei"},{code:"FM04",name:"Yap"}]},{code:"MD",id:2395,name:"Moldova; Republic of",states:[]},{code:"MC",id:2299,name:"Monaco",states:[]},{code:"MN",id:2300,name:"Mongolia",states:[]},{code:"MJ",id:2396,name:"Montenegro",states:[{code:"ME-1",name:"Andrijevica"},{code:"ME-2",name:"Bar"},{code:"ME-3",name:"Berane"},{code:"ME-4",name:"Bijelo Polje"},{code:"ME-5",name:"Budva"},{code:"ME-6",name:"Cetinje"},{code:"ME-7",name:"Danilovgrad"},{code:"ME-8",name:"Herceg Novi"},{code:"ME-9",name:"Kolašin"},{code:"ME-10",name:"Kotor"},{code:"ME-11",name:"Mojkovac"},{code:"ME-12",name:"Nikšic"},{code:"ME-13",name:"Plav"},{code:"ME-14",name:"Pljevlja"},{code:"ME-15",name:"Plužine"},{code:"ME-16",name:"Podgorica"},{code:"ME-17",name:"Rožaje"},{code:"ME-18",name:"Šavnik"},{code:"ME-19",name:"Tivat"},{code:"ME-20",name:"Ulcinj"},{code:"ME-21",name:"Žabljak"}]},{code:"MS",id:2424,name:"Montserrat",states:[]},{code:"MA",id:2301,name:"Morocco",states:[{code:"MA.BK",name:"Béni Mellal-Khénifra"},{code:"MA.CS",name:"Casablanca-Settat"},{code:"MA.OL",name:"Dakhla-Oued Ed-Dahab"},{code:"MA.DT",name:"Drâa-Tafilalet"},{code:"MA.FK",name:"Fès-Meknès"},{code:"MA.GN",name:"Guelmim-Oued Noun"},{code:"MA.OF",name:"L'oriental"},{code:"MA.LS",name:"Laâyoune-Sakia al Hamra"},{code:"MA.MS",name:"Marrakech-Safi"},{code:"MA.RK",name:"Rabat-Salé-Kénitra"},{code:"MA.SS",name:"Souss-Massa"},{code:"MA.TC",name:"Tanger-Tétouan-Al Hoceima"}]},{code:"MZ",id:2302,name:"Mozambique",states:[{code:"MZ01",name:"Cabo Delgado"},{code:"MZ02",name:"Gaza"},{code:"MZ03",name:"Inhambane"},{code:"MZ10",name:"Manica"},{code:"MZ11",name:"Maputo [city]"},{code:"MZ04",name:"Maputo"},{code:"MZ06",name:"Nampula"},{code:"MZ07",name:"Niassa"},{code:"MZ05",name:"Sofala"},{code:"MZ08",name:"Tete"},{code:"MZ09",name:"Zambézia"}]},{code:"MM",id:2303,name:"Myanmar",states:[{code:"MM.AY",name:"Ayeyarwady"},{code:"MM.BA",name:"Bago"},{code:"MM.CH",name:"Chin"},{code:"MM.KC",name:"Kachin"},{code:"MM.KH",name:"Kayah"},{code:"MM.KN",name:"Kayin"},{code:"MM.MG",name:"Magway"},{code:"MM.ML",name:"Mandalay"},{code:"MM.MO",name:"Mon"},{code:"MM.NY",name:"Naypyidaw"},{code:"MM.RA",name:"Rakhine"},{code:"MM.SA",name:"Sagaing"},{code:"MM.SH",name:"Shan"},{code:"MM.TN",name:"Tanintharyi"},{code:"MM.YA",name:"Yangon"}]},{code:"NA",id:2304,name:"Namibia",states:[{code:"WA29",name:"Erongo"},{code:"WA30",name:"Hardap"},{code:"WA31",name:"Karas"},{code:"WA40",name:"Kavango East"},{code:"WA41",name:"Kavango West"},{code:"WA21",name:"Khomas"},{code:"WA32",name:"Kunene"},{code:"WA33",name:"Ohangwena"},{code:"WA35",name:"Omaheke"},{code:"WA36",name:"Omusati"},{code:"WA37",name:"Oshana"},{code:"WA38",name:"Oshikoto"},{code:"WA39",name:"Otjozondjupa"},{code:"WA28",name:"Zambezi"}]},{code:"NR",id:2397,name:"Nauru",states:[]},{code:"NP",id:2305,name:"Nepal",states:[{code:"NP.FI",name:"Five"},{code:"NP.FO",name:"Four"},{code:"NP.ON",name:"One"},{code:"NP.SE",name:"Seven"},{code:"NP.SI",name:"Six"},{code:"NP.TH",name:"Three"},{code:"NP.TW",name:"Two"}]},{code:"NL",id:2306,name:"Netherlands",states:[{code:"DR",name:"Drenthe"},{code:"FL",name:"Flevoland"},{code:"FR",name:"Friesland"},{code:"GE",name:"Gelderland"},{code:"GR",name:"Groningen"},{code:"LI",name:"Limburg"},{code:"NB",name:"Noord-Brabant"},{code:"NH",name:"Noord-Holland"},{code:"OV",name:"Overijssel"},{code:"UT",name:"Utrecht"},{code:"ZE",name:"Zeeland"},{code:"ZH",name:"Zuid-Holland"}]},{code:"AN",id:2425,name:"Netherlands Antilles",states:[]},{code:"NC",id:2426,name:"New Caledonia",states:[]},{code:"NZ",id:2307,name:"New Zealand",states:[{code:"AUK",name:"Auckland"},{code:"BOP",name:"Bay of Plenty"},{code:"CAN",name:"Canterbury"},{code:"CIT",name:"Chatham Islands Territory"},{code:"GIS",name:"Gisborne"},{code:"HKB",name:"Hawke's Bay"},{code:"MWT",name:"Manawatu-Wanganui"},{code:"MBH",name:"Marlborough"},{code:"NSN",name:"Nelson"},{code:"N",name:"North Island"},{code:"NTL",name:"Northland"},{code:"OTA",name:"Otago"},{code:"S",name:"South Island"},{code:"STL",name:"Southland"},{code:"TKI",name:"Taranaki"},{code:"TAS",name:"Tasman District"},{code:"WKO",name:"Waikato"},{code:"WGN",name:"Wellington"},{code:"WTC",name:"West Coast"}]},{code:"NI",id:2308,name:"Nicaragua",states:[{code:"NU01",name:"Boaco"},{code:"NU02",name:"Carazo"},{code:"NU03",name:"Chinandega"},{code:"NU04",name:"Chontales"},{code:"NU05",name:"Estelí"},{code:"NU06",name:"Granada"},{code:"NU07",name:"Jinotega"},{code:"NU08",name:"León"},{code:"NU09",name:"Madriz"},{code:"NU10",name:"Managua"},{code:"NU11",name:"Masaya"},{code:"NU12",name:"Matagalpa"},{code:"NU13",name:"Nueva Segovia"},{code:"NU17",name:"Región Autónoma del Caribe Norte"},{code:"NU18",name:"Región Autónoma del Caribe Sur"},{code:"NU14",name:"Río San Juan"},{code:"NU15",name:"Rivas"}]},{code:"NE",id:2309,name:"Niger",states:[{code:"NG01",name:"Agadez"},{code:"NG02",name:"Diffa"},{code:"NG03",name:"Dosso"},{code:"NG04",name:"Maradi"},{code:"NG08",name:"Niamey"},{code:"NG06",name:"Tahoua"},{code:"NG09",name:"Tillabéri"},{code:"NG07",name:"Zinder"}]},{code:"NG",id:2310,name:"Nigeria",states:[{code:"NI45",name:"Abia"},{code:"NI35",name:"Adamawa"},{code:"NI21",name:"Akwa Ibom"},{code:"NI25",name:"Anambra"},{code:"NI46",name:"Bauchi"},{code:"NI52",name:"Bayelsa"},{code:"NI26",name:"Benue"},{code:"NI27",name:"Borno"},{code:"NI22",name:"Cross River"},{code:"NI36",name:"Delta"},{code:"NI53",name:"Ebonyi"},{code:"NI37",name:"Edo"},{code:"NI54",name:"Ekiti"},{code:"NI47",name:"Enugu"},{code:"NI11",name:"Federal Capital Territory"},{code:"NI55",name:"Gombe"},{code:"NI28",name:"Imo"},{code:"NI39",name:"Jigawa"},{code:"NI23",name:"Kaduna"},{code:"NI29",name:"Kano"},{code:"NI24",name:"Katsina"},{code:"NI40",name:"Kebbi"},{code:"NI41",name:"Kogi"},{code:"NI30",name:"Kwara"},{code:"NI05",name:"Lagos"},{code:"NI56",name:"Nassarawa"},{code:"NI31",name:"Niger"},{code:"NI16",name:"Ogun"},{code:"NI48",name:"Ondo"},{code:"NI42",name:"Osun"},{code:"NI32",name:"Oyo"},{code:"NI49",name:"Plateau"},{code:"NI50",name:"Rivers"},{code:"NI51",name:"Sokoto"},{code:"NI43",name:"Taraba"},{code:"NI44",name:"Yobe"},{code:"NI57",name:"Zamfara"}]},{code:"NU",id:2427,name:"Niue",states:[]},{code:"NF",id:2428,name:"Norfolk Island",states:[]},{code:"MP",id:2429,name:"Northern Mariana Islands",states:[]},{code:"NO",id:2311,name:"Norway",states:[{code:"NO02",name:"Akershus"},{code:"NO09",name:"Aust-Agder"},{code:"NO06",name:"Buskerud"},{code:"NO20",name:"Finnmark"},{code:"NO04",name:"Hedmark"},{code:"NO12",name:"Hordaland"},{code:"NO22",name:"Jan Mayen (Arctic Region)"},{code:"NO15",name:"Møre og Romsdal"},{code:"NO17",name:"Nord-Trøndelag"},{code:"NO18",name:"Nordland"},{code:"NO05",name:"Oppland"},{code:"NO03",name:"Oslo"},{code:"NO01",name:"Østfold"},{code:"NO11",name:"Rogaland"},{code:"NO14",name:"Sogn og Fjordane"},{code:"NO16",name:"Sør-Trøndelag"},{code:"NO21",name:"Svalbard (Arctic Region)"},{code:"NO08",name:"Telemark"},{code:"NO19",name:"Troms"},{code:"NO10",name:"Vest-Agder"},{code:"NO07",name:"Vestfold"}]},{code:"OM",id:2312,name:"Oman",states:[{code:"MU01",name:"Ad Dakhliyah"},{code:"MU09",name:"Adh Dhahirah"},{code:"MU11",name:"Al Batinah North"},{code:"MU02",name:"Al Batinah South"},{code:"MU10",name:"Al Buraymi"},{code:"MU03",name:"Al Wusta"},{code:"MU12",name:"Ash Sharqiyah North"},{code:"MU04",name:"Ash Sharqiyah South"},{code:"MU08",name:"Dhofar"},{code:"MU07",name:"Musandam"},{code:"MU06",name:"Muscat"}]},{code:"PK",id:2313,name:"Pakistan",states:[{code:"PK06",name:"Azad Kashmir"},{code:"PK02",name:"Balochistan"},{code:"PK01",name:"Federally Administered Tribal Areas"},{code:"PK07",name:"Gilgit-Baltistan"},{code:"PK08",name:"Islamabad"},{code:"PK03",name:"Khyber-Pakhtunkhwa"},{code:"PK04",name:"Punjab"},{code:"PK05",name:"Sindh"}]},{code:"PW",id:2314,name:"Palau",states:[]},{code:"PS",id:2430,name:"Palestinian Territory; Occupied",states:[]},{code:"PA",id:2315,name:"Panama",states:[{code:"PM01",name:"Bocas del Toro"},{code:"PM02\t",name:"Chiriquí"},{code:"PM03",name:"Coclé"},{code:"PM04",name:"Coclé"},{code:"PM05",name:"Darién"},{code:"PM11",name:"Emberá"},{code:"PM06",name:"Herrera"},{code:"PM09",name:"Kuna Yala"},{code:"PM07",name:"Los Santos"},{code:"PM12",name:"Ngäbe Buglé"},{code:"PM13",name:"Panamá Oeste"},{code:"PM08",name:"Panamá"},{code:"PM10",name:"Veraguas"}]},{code:"PG",id:2316,name:"Papua New Guinea",states:[{code:"PP07",name:"Bougainville"},{code:"PP01",name:"Central"},{code:"PP08",name:"Chimbu"},{code:"PP10",name:"East New Britain"},{code:"PP11",name:"East Sepik"},{code:"PP09",name:"Eastern Highlands"},{code:"PP19",name:"Enga"},{code:"PP02",name:"Gulf"},{code:"PP21",name:"Hela"},{code:"PP22",name:"Jiwaka"},{code:"PP12",name:"Madang"},{code:"PP13",name:"Manus"},{code:"PP03",name:"Milne Bay"},{code:"PP14",name:"Morobe"},{code:"PP20",name:"National Capital District"},{code:"PP15",name:"New Ireland"},{code:"PP04",name:"Northern"},{code:"PP18",name:"Sandaun"},{code:"PP05",name:"Southern Highlands"},{code:"PP17",name:"West New Britain"},{code:"PP06",name:"Western"},{code:"PP16",name:"Western Highlands"}]},{code:"PY",id:2317,name:"Paraguay",states:[{code:"PA23",name:"Alto Paraguay"},{code:"PA01",name:"Alto Paraná"},{code:"PA02",name:"Amambay"},{code:"PA22",name:"Asunción"},{code:"PA24",name:"Boquerón"},{code:"PA04",name:"Caaguazú"},{code:"PA05",name:"Caazapá"},{code:"PA19",name:"Canindeyú"},{code:"PA06",name:"Central"},{code:"PA07",name:"Concepción"},{code:"PA08",name:"Cordillera"},{code:"PA10",name:"Guairá"},{code:"PA11",name:"Itapúa"},{code:"PA12",name:"Misiones"},{code:"PA15",name:"Paraguarí"},{code:"PA16",name:"Presidente Hayes"},{code:"PA17",name:"San Pedro"},{code:"PA13",name:"Ñeembucú"}]},{code:"PE",id:2318,name:"Peru",states:[{code:"PE01",name:"Amazonas"},{code:"PE02",name:"Ancash"},{code:"PE03",name:"Apurímac"},{code:"PE04",name:"Arequipa"},{code:"PE05",name:"Ayacucho"},{code:"PE06",name:"Cajamarca"},{code:"PE07",name:"Callao"},{code:"PE08",name:"Cusco"},{code:"PE09",name:"Huancavelica"},{code:"PE10",name:"Huánuco"},{code:"PE11",name:"Ica"},{code:"PE12",name:"Junín"},{code:"PE13",name:"La Libertad"},{code:"PE14",name:"Lambayeque"},{code:"PE15",name:"Lima"},{code:"PE26",name:"Lima [Province]"},{code:"PE16",name:"Loreto"},{code:"PE17",name:"Madre de Dios"},{code:"PE18",name:"Moquegua"},{code:"PE19",name:"Pasco"},{code:"PE20",name:"Piura"},{code:"PE21",name:"Puno"},{code:"PE22",name:"San Martín"},{code:"PE23",name:"Tacna"},{code:"PE24",name:"Tumbes"},{code:"PE25",name:"Ucayali"}]},{code:"PH",id:2319,name:"Philippines",states:[{code:"RP01",name:"Abra"},{code:"RP02",name:"Agusan del Norte"},{code:"RP03",name:"Agusan del Sur"},{code:"RP04",name:"Aklan"},{code:"RP05",name:"Albay"},{code:"RP06",name:"Antique"},{code:"RPH6",name:"Apayao"},{code:"RPG8",name:"Aurora"},{code:"RP22",name:"Basilan"},{code:"RP07",name:"Bataan"},{code:"RP08",name:"Batanes"},{code:"RP09",name:"Batangas"},{code:"RP10",name:"Benguet"},{code:"RPH9",name:"Biliran"},{code:"RP11",name:"Bohol"},{code:"RP12",name:"Bukidnon"},{code:"RP13",name:"Bulacan"},{code:"RP14",name:"Cagayan"},{code:"RP15",name:"Camarines Norte"},{code:"RP16",name:"Camarines Sur"},{code:"RP17",name:"Camiguin"},{code:"RP18",name:"Capiz"},{code:"RP19",name:"Catanduanes"},{code:"RP20",name:"Cavite"},{code:"RP21",name:"Cebu"},{code:"RPI6",name:"Compostela Valley"},{code:"RP57",name:"Cotabato"},{code:"RP26",name:"Davao Oriental"},{code:"RPI7",name:"Davao del Norte"},{code:"RP25",name:"Davao del Sur"},{code:"RPI9",name:"Dinagat Islands"},{code:"RP23",name:"Eastern Samar"},{code:"RPJ3",name:"Guimaras"},{code:"RP27",name:"Ifugao"},{code:"RP28",name:"Ilocos Norte"},{code:"RP29",name:"Ilocos Sur"},{code:"RP30",name:"Iloilo"},{code:"RP31",name:"Isabela"},{code:"RPJ7",name:"Kalinga"},{code:"RP36",name:"La Union"},{code:"RP33",name:"Laguna"},{code:"RP34",name:"Lanao del Norte"},{code:"RP35",name:"Lanao del Sur"},{code:"RP37",name:"Leyte"},{code:"RP56",name:"Maguindanao"},{code:"RP38",name:"Marinduque"},{code:"RP39",name:"Masbate"},{code:"RPD9",name:"Metropolitan Manila"},{code:"RP42",name:"Misamis Occidental"},{code:"RP43",name:"Misamis Oriental"},{code:"RP44",name:"Mountain"},{code:"RPH3",name:"Negros Occidental"},{code:"RP46",name:"Negros Oriental"},{code:"RP67",name:"Northern Samar"},{code:"RP47",name:"Nueva Ecija"},{code:"RP48",name:"Nueva Vizcaya"},{code:"RP40",name:"Occidental Mindoro"},{code:"RP41",name:"Oriental Mindoro"},{code:"RP49",name:"Palawan"},{code:"RP50",name:"Pampanga"},{code:"RP51",name:"Pangasinan"},{code:"RPH2",name:"Quezon"},{code:"RP68",name:"Quirino"},{code:"RP53",name:"Rizal"},{code:"RP54",name:"Romblon"},{code:"RP55",name:"Samar"},{code:"PH72",name:"Sarangani"},{code:"RP69",name:"Siquijor"},{code:"RP58",name:"Sorsogon"},{code:"RP70",name:"South Cotabato"},{code:"RP59",name:"Southern Leyte"},{code:"RP71",name:"Sultan Kudarat"},{code:"RP60",name:"Sulu"},{code:"RP61",name:"Surigao del Norte"},{code:"RP62",name:"Surigao del Sur"},{code:"RPO3",name:"Tarlac"},{code:"RPO4",name:"Tawi-Tawi"},{code:"RPP1",name:"Zambales"},{code:"RPG7",name:"Zamboanga del Norte"},{code:"RP65",name:"Zamboanga del Sur"},{code:"RP66",name:"Zamboanga-Sibugay"}]},{code:"PN",id:2431,name:"Pitcairn",states:[]},{code:"PL",id:2320,name:"Poland",states:[{code:"PL-DS",name:"Dolnoslaskie"},{code:"PL-KP",name:"Kujawsko-pomorskie"},{code:"PL-LD",name:"Lódzkie"},{code:"PL-LU",name:"Lubelskie"},{code:"PL-LB",name:"Lubuskie"},{code:"PL-MA",name:"Malopolskie"},{code:"PL-MZ",name:"Mazowieckie"},{code:"PL-OP",name:"Opolskie"},{code:"PL-PK",name:"Podkarpackie"},{code:"PL-PD",name:"Podlaskie"},{code:"PL-PM",name:"Pomorskie"},{code:"PL-SL",name:"Slaskie"},{code:"PL-SK",name:"Swietokrzyskie"},{code:"PL-WN",name:"Warminsko-mazurskie"},{code:"PL-WP",name:"Wielkopolskie"}]},{code:"PT",id:2321,name:"Portugal",states:[{code:"PO23",name:"Acores Autonomous"},{code:"PO02",name:"Aveiro"},{code:"PO03",name:"Beja"},{code:"PO04",name:"Braga"},{code:"PO05",name:"Braganca"},{code:"PO06",name:"Castelo Branco"},{code:"PO07",name:"Coimbra"},{code:"PO08",name:"Evora"},{code:"PO09",name:"Faro"},{code:"PO11",name:"Guarda"},{code:"PO13",name:"Leiria"},{code:"PO14",name:"Lisboa"},{code:"PO10",name:"Madeira Autonomous"},{code:"PO16",name:"Portalegre"},{code:"PO17",name:"Porto"},{code:"PO18",name:"Santarem"},{code:"PO19",name:"Setubal"},{code:"PO20",name:"Viana do Castelo"},{code:"PO21",name:"Vila Real"},{code:"PO22",name:"Viseu"}]},{code:"PR",id:2374,name:"Puerto Rico",states:[{code:"PR.AJ",name:"Adjuntas"},{code:"PR.AD",name:"Aguada"},{code:"PR.AL",name:"Aguadilla"},{code:"PR.AB",name:"Aguas Buenas"},{code:"PR.AI",name:"Aibonito"},{code:"PR.AN",name:"Añasco"},{code:"PR.AC",name:"Arecibo"},{code:"PR.AR",name:"Arroyo"},{code:"PR.BC",name:"Barceloneta"},{code:"PR.BQ",name:"Barranquitas"},{code:"PR.BY",name:"Bayamón"},{code:"PR.CR",name:"Cabo Rojo"},{code:"PR.CG",name:"Caguas"},{code:"PR.CA",name:"Camuy"},{code:"PR.CV",name:"Canóvanas"},{code:"PR.CN",name:"Carolina"},{code:"PR.CT",name:"Cataño"},{code:"PR.CY",name:"Cayey"},{code:"PR.CB",name:"Ceiba"},{code:"PR.CL",name:"Ciales"},{code:"PR.CD",name:"Cidra"},{code:"PR.CO",name:"Coamo"},{code:"PR.CM",name:"Comerío"},{code:"PR.CZ",name:"Corozal"},{code:"PR.CU",name:"Culebra"},{code:"PR.DO",name:"Dorado"},{code:"PR.FJ",name:"Fajardo"},{code:"PR.FL",name:"Florida"},{code:"PR.GC",name:"Guánica"},{code:"PR.GM",name:"Guayama"},{code:"PR.GL",name:"Guayanilla"},{code:"PR.GB",name:"Guaynabo"},{code:"PR.GR",name:"Gurabo"},{code:"PR.HA",name:"Hatillo"},{code:"PR.HO",name:"Hormigueros"},{code:"PR.HU",name:"Humacao"},{code:"PR.IS",name:"Isabela"},{code:"PR.JY",name:"Jayuya"},{code:"PR.JD",name:"Juana Díaz"},{code:"PR.JC",name:"Juncos"},{code:"PR.LJ",name:"Lajas"},{code:"PR.LR",name:"Lares"},{code:"PR.LM",name:"Las Marías"},{code:"PR.LP",name:"Las Piedras"},{code:"PR.LZ",name:"Loíza"},{code:"PR.LQ",name:"Luquillo"},{code:"PR.MT",name:"Manatí"},{code:"PR.MR",name:"Maricao"},{code:"PR.MB",name:"Maunabo"},{code:"PR.MG",name:"Mayagüez"},{code:"PR.MC",name:"Moca"},{code:"PR.MV",name:"Morovis"},{code:"PR.NG",name:"Naguabo"},{code:"PR.NR",name:"Naranjito"},{code:"PR.OR",name:"Orocovis"},{code:"PR.PT",name:"Patillas"},{code:"PR.PN\t",name:"Peñuelas"},{code:"PR.PO",name:"Ponce"},{code:"PR.QB",name:"Quebradillas"},{code:"PR.RC",name:"Rincón"},{code:"PR.RG",name:"Río Grande"},{code:"PR.SB",name:"Sabana Grande"},{code:"PR.SA",name:"Salinas"},{code:"PR.SG",name:"San Germán"},{code:"PR.SJ",name:"San Juan"},{code:"PR.SL",name:"San Lorenzo"},{code:"PR.SS",name:"San Sebastián"},{code:"PR.SI",name:"Santa Isabel"},{code:"PR.TA",name:"Toa Alta"},{code:"PR.TB",name:"Toa Baja"},{code:"PR.TJ",name:"Trujillo Alto"},{code:"PR.UT",name:"Utuado"},{code:"PR.VA",name:"Vega Alta"},{code:"PR.VB",name:"Vega Baja"},{code:"PR.VQ",name:"Vieques"},{code:"PR.VL",name:"Villalba"},{code:"PR.YB",name:"Yabucoa"},{code:"PR.YU",name:"Yauco"}]},{code:"QA",id:2322,name:"Qatar",states:[{code:"QA01",name:"Ad Dawhah"},{code:"QA13",name:"Al Daayen"},{code:"QA04",name:"Al Khawr"},{code:"QA10",name:"Al Wakrah"},{code:"QA14",name:"Al-Shahaniya"},{code:"QA06",name:"Ar Rayyan"},{code:"QA08",name:"Madinat ach Shamal"},{code:"QA09",name:"Umm Salal"}]},{code:"R999",id:2398,name:"Reunion",states:[]},{code:"RO",id:2323,name:"Romania",states:[{code:"RO-AB",name:"Alba"},{code:"RO-AR",name:"Arad"},{code:"RO-AG",name:"Arges"},{code:"RO-BC",name:"Bacau"},{code:"RO-BH",name:"Bihor"},{code:"RO-BN",name:"Bistrita-Nasaud"},{code:"RO-BT",name:"Botosani"},{code:"RO-BR",name:"Braila"},{code:"RO-BV",name:"Brasov"},{code:"RO-B",name:"Bucuresti"},{code:"RO-BZ",name:"Buzau"},{code:"RO-CL",name:"Calarasi"},{code:"RO-CS",name:"Caras-Severin"},{code:"RO-CJ",name:"Cluj"},{code:"RO-CT",name:"Constanta"},{code:"RO-CV",name:"Covasna"},{code:"RO-DB",name:"Dâmbovita"},{code:"RO-DJ",name:"Dolj"},{code:"RO-GL",name:"Galati"},{code:"RO-GR",name:"Giurgiu"},{code:"RO-GJ",name:"Gorj"},{code:"RO-HR",name:"Harghita"},{code:"RO-HD",name:"Hunedoara"},{code:"RO-IL",name:"Ialomita"},{code:"RO-IS",name:"Iasi"},{code:"RO-IF",name:"Ilfov"},{code:"RO-MM",name:"Maramures"},{code:"RO-MH",name:"Mehedinti"},{code:"RO-MS",name:"Mures"},{code:"RO-NT",name:"Neamt"},{code:"RO-OT",name:"Olt"},{code:"RO-PH",name:"Prahova"},{code:"RO-SJ",name:"Salaj"},{code:"RO-SM",name:"Satu Mare"},{code:"RO-SB",name:"Sibiu"},{code:"RO-SV",name:"Suceava"},{code:"RO-TR",name:"Teleorman"},{code:"RO-TM",name:"Timis"},{code:"RO-TL",name:"Tulcea"},{code:"RO-VL",name:"Vâlcea"},{code:"RO-VS",name:"Vaslui"},{code:"RO-VN",name:"Vrancea"}]},{code:"RU",id:2324,name:"Russian Federation",states:[{code:"RS01",name:"Adygeya Republic"},{code:"RS02",name:"Aginskiy Buryatskiy Avtonomnyy Okrug"},{code:"RS03",name:"Altay Republic"},{code:"RS04",name:"Altayskiy Kray"},{code:"RS05",name:"Amurskaya Oblast'"},{code:"RS06",name:"Arkhangel'skaya Oblast'"},{code:"RS07",name:"Astrakhanskaya Oblast'"},{code:"RS08",name:"Bashkortostan Republic"},{code:"RS09",name:"Belgorodskaya Oblast'"},{code:"RS10",name:"Bryanskaya Oblast'"},{code:"RS11",name:"Buryatiya Republic"},{code:"RSCI",name:"Chechnya Republic"},{code:"RS13",name:"Chelyabinskaya Oblast'"},{code:"RS14",name:"Chitinskaya Oblast'"},{code:"RS15",name:"Chukotskiy Avtonomnyy Okrug"},{code:"RS16",name:"Chuvashiya Republic"},{code:"RS17",name:"Dagestan Republic"},{code:"RS18",name:"Evenkiyskiy Avtonomnyy Okrug"},{code:"RS20",name:"Irkutskaya Oblast'"},{code:"RS21",name:"Ivanovskaya Oblast'"},{code:"RS22",name:"Kabardino-Balkariya Republic"},{code:"RS23",name:"Kaliningradskaya Oblast'"},{code:"RS24",name:"Kalmykiya Republic"},{code:"RS25",name:"Kaluzhskaya Oblast'"},{code:"RS26",name:"Kamchatskaya Oblast'"},{code:"RS27",name:"Karachayevo-Cherkesiya Republic"},{code:"RS28",name:"Kareliya Republic"},{code:"RS29",name:"Kemerovskaya Oblast'"},{code:"RS30",name:"Khabarovskiy Kray"},{code:"RS31",name:"Khakasiya Republic"},{code:"RS32",name:"Khanty-Mansiyskiy Avtonomnyy Okrug"},{code:"RS33",name:"Kirovskaya Oblast'"},{code:"RS34",name:"Komi Republic"},{code:"RS36",name:"Koryakskiy Avtonomnyy Okrug"},{code:"RS37",name:"Kostromskaya Oblast'"},{code:"RS38",name:"Krasnodarskiy Kray"},{code:"RS39",name:"Krasnoyarskiy Kray"},{code:"RS40",name:"Kurganskaya Oblast'"},{code:"RS41",name:"Kurskaya Oblast'"},{code:"RS42",name:"Leningradskaya Oblast'"},{code:"RS43",name:"Lipetskaya Oblast'"},{code:"RS44",name:"Magadanskaya Oblast'"},{code:"RS45",name:"Mariy-El Republic"},{code:"RS46",name:"Mordoviya Republic"},{code:"RS47",name:"Moskovskaya Oblast'"},{code:"RS48",name:"Moskva Federal City"},{code:"RS49",name:"Murmanskaya Oblast'"},{code:"RS50",name:"Nenetskiy Avtonomnyy Okrug"},{code:"RS51",name:"Nizhegorodskaya Oblast'"},{code:"RS52",name:"Novgorodskaya Oblast'"},{code:"RS53",name:"Novosibirskaya Oblast'"},{code:"RS54",name:"Omskaya Oblast'"},{code:"RS55",name:"Orenburgskaya Oblast'"},{code:"RS56",name:"Orlovskaya Oblast'"},{code:"RS57",name:"Penzenskaya Oblast'"},{code:"RS90",name:"Permskiy Kray"},{code:"RS59",name:"Primorskiy Kray"},{code:"RS60",name:"Pskovskaya Oblast'"},{code:"RS61",name:"Rostovskaya Oblast'"},{code:"RS62",name:"Ryazanskaya Oblast'"},{code:"RS63",name:"Sakha (Yakutiya) Republic"},{code:"RS64",name:"Sakhalinskaya Oblast'"},{code:"RS65",name:"Samarskaya Oblast'"},{code:"RS66",name:"Sankt-Peterburg Federal City"},{code:"RS67",name:"Saratovskaya Oblast'"},{code:"RS68",name:"Severnaya Osetiya-Alaniya Respublika"},{code:"RS69",name:"Smolenskaya Oblast'"},{code:"RS70",name:"Stavropol'skiy Kray"},{code:"RS71",name:"Sverdlovskaya Oblast'"},{code:"RS72",name:"Tambovskaya Oblast'"},{code:"RS73",name:"Tatarstan Republic"},{code:"RS74",name:"Taymyrskiy (Dolgano-Nenetskiy) Avtonomnyy Okrug"},{code:"RS75",name:"Tomskaya Oblast'"},{code:"RS76",name:"Tul'skaya Oblast'"},{code:"RS77",name:"Tverskaya Oblast'"},{code:"RS78",name:"Tyumenskaya Oblast'"},{code:"RS79",name:"Tyva Republic"},{code:"RS80",name:"Udmurtiya Republic"},{code:"RS81",name:"Ul'yanovskaya Oblast'"},{code:"RS82",name:"Ust'-Ordynskiy Buryatskiy Avtonomnyy Okrug"},{code:"RS83",name:"Vladimirskaya Oblast'"},{code:"RS84",name:"Volgogradskaya Oblast'"},{code:"RS85",name:"Vologodskaya Oblast'"},{code:"RS86",name:"Voronezhskaya Oblast'"},{code:"RS87",name:"Yamalo-Nenetskiy Avtonomnyy Okrug"},{code:"RS88",name:"Yaroslavskaya Oblast'"},{code:"RS89",name:"Yevreyskaya Avtonomnaya Oblast'"}]},{code:"RW",id:2325,name:"Rwanda",states:[{code:"RW11",name:"Eastern"},{code:"RW12",name:"Kigali City"},{code:"RW13",name:"Northern"},{code:"RW15",name:"Southern"},{code:"RW14",name:"Western"}]},{code:"BL",id:2432,name:"Saint Barthélemy",states:[]},{code:"SH",id:2433,name:"Saint Helena; Ascension and Tristan Da Cunha",states:[]},{code:"KN",id:2399,name:"Saint Kitts and Nevis",states:[]},{code:"LC",id:2326,name:"Saint Lucia",states:[]},{code:"MF",id:2434,name:"Saint Martin",states:[{code:"MF.SM",name:"Saint Martin"}]},{code:"PM",id:2435,name:"Saint Pierre And Miquelon",states:[]},{code:"VC",id:2400,name:"Saint Vincent and Grenadines",states:[]},{code:"WS",id:2401,name:"Samoa",states:[{code:"WS01",name:"A'ana"},{code:"WS02",name:"Aiga-i-le-Tai"},{code:"WS03",name:"Atua"},{code:"WS04",name:"Fa'asaleleaga"},{code:"WS05",name:"Gaga'emauga"},{code:"WS07",name:"Gagaifomauga"},{code:"WS08",name:"Palauli"},{code:"WS09",name:"Satupa'itea"},{code:"WS10",name:"Tuamasaga"},{code:"WS06",name:"Va'a-o-Fonoti"},{code:"WS11",name:"Vaisigano"}]},{code:"SM",id:2327,name:"San Marino",states:[]},{code:"TP",id:2403,name:"Sao Tome and Principe",states:[]},{code:"SA",id:2328,name:"Saudi Arabia",states:[{code:"SA02",name:"Al Bahah"},{code:"SA15",name:"Al Hudud ash Shamaliyah"},{code:"SA20",name:"Al Jawf"},{code:"SA05",name:"Al Madinah"},{code:"SA08",name:"Al Qasim"},{code:"SA10",name:"Ar Riyad"},{code:"SA06",name:"Ash Sharqiyah"},{code:"SA11",name:"Asir"},{code:"SA13",name:"Ha'il"},{code:"SA17",name:"Jizan"},{code:"SA14",name:"Makkah"},{code:"SA16",name:"Najran"},{code:"SA19",name:"Tabuk"}]},{code:"SN",id:2329,name:"Senegal",states:[{code:"SG01",name:"Dakar"},{code:"SG03",name:"Diourbel"},{code:"SG09",name:"Fatick"},{code:"SG16",name:"Kaffrine"},{code:"SG10",name:"Kaolack"},{code:"SG17",name:"Kédougou"},{code:"SG11",name:"Kolda"},{code:"SG13",name:"Louga"},{code:"SG15",name:"Matam"},{code:"SG14",name:"Saint-Louis"},{code:"SG18",name:"Sédhiou"},{code:"SG05",name:"Tambacounda"},{code:"SG07",name:"Thiès"},{code:"SG12",name:"Ziguinchor"}]},{code:"RI",id:2402,name:"Serbia",states:[{code:"RS-00",name:"Belgrade"},{code:"RS-14",name:"Borski okrug"},{code:"RS-11",name:"Branicevski okrug"},{code:"RS-23",name:"Jablanicki okrug"},{code:"RS-06",name:"Južnobanatski okrug"},{code:"RS-04",name:"Južnobanatski okrug"},{code:"RS-09",name:"Kolubarski okrug"},{code:"RS-25",name:"Kosovski okrug"},{code:"RS-28",name:"Kosovsko-Mitrovacki okrug"},{code:"RS-29",name:"Kosovsko-Pomoravski okrug"},{code:"RS-08",name:"Macvanski okrug"},{code:"RS-17",name:"Moravicki okrug"},{code:"RS-20",name:"Nišavski okrug"},{code:"RS-24",name:"Pcinjski okrug"},{code:"RS-26",name:"Pecki okrug"},{code:"RS-22",name:"Pirotski okrug"},{code:"RS-10",name:"Podunavski okrug"},{code:"RS-13",name:"Pomoravski okrug"},{code:"RS-27",name:"Prizrenski okrug"},{code:"RS-19",name:"Rasinski okrug"},{code:"RS-18",name:"Raška okrug"},{code:"RS-01",name:"Severnobacki okrug"},{code:"RS-03",name:"Severnobanatski okrug"},{code:"RS-02",name:"Srednjebanatski okrug"},{code:"RS-07",name:"Sremski okrug"},{code:"RS-12",name:"Šumadijski okrug"},{code:"RS-21",name:"Toplièki okrug"},{code:"RS-15",name:"Zajeèarski okrug"},{code:"RS-05",name:"Zapadnobaèki okrug"},{code:"RS-16",name:"Zlatiborski okrug"}]},{code:"SC",id:2331,name:"Seychelles",states:[]},{code:"SL",id:2332,name:"Sierra Leone",states:[{code:"SL01",name:"Eastern"},{code:"SL02",name:"Northern"},{code:"SL03",name:"Southern"},{code:"SL04",name:"Western"}]},{code:"SG",id:2333,name:"Singapore",states:[{code:"SG01",name:"Central Singapore"},{code:"SG02",name:"North East"},{code:"SG03",name:"North West"},{code:"SG04",name:"South East"},{code:"SG05",name:"South West"}]},{code:"SX",id:2448,name:"Sint Maarten",states:[{code:"SX.SM",name:"Sint Maarten"}]},{code:"SK",id:2334,name:"Slovakia",states:[{code:"SK-BC",name:"Banskobystrický kraj"},{code:"SK-BL",name:"Bratislavský kraj"},{code:"SK-KI",name:"Košický kraj"},{code:"SK-NI",name:"Nitriansky kraj"},{code:"SK-PV",name:"Prešovský kraj"},{code:"SK-TC",name:"Trenciansky kraj"},{code:"SK-TA",name:"Trnavský kraj"},{code:"SK-ZI",name:"Žilinský kraj"}]},{code:"SI",id:2335,name:"Slovenia",states:[{code:"SI-001",name:"Ajdovšcina"},{code:"SI-195",name:"Apace"},{code:"SI-002",name:"Beltinci"},{code:"SI-148",name:"Benedikt"},{code:"SI-149",name:"Bistrica ob Sotli"},{code:"SI-003",name:"Bled"},{code:"SI-150",name:"Bloke"},{code:"SI-004",name:"Bohinj"},{code:"SI-005",name:"Borovnica"},{code:"SI-006",name:"Bovec"},{code:"SI-151",name:"Braslovce"},{code:"SI-007",name:"Brda"},{code:"SI-009",name:"Brežice"},{code:"SI-008",name:"Brezovica"},{code:"SI-152",name:"Cankova"},{code:"SI-011",name:"Celje"},{code:"SI-012",name:"Cerklje na Gorenjskem"},{code:"SI-013",name:"Cerknica"},{code:"SI-014",name:"Cerkno"},{code:"SI-153",name:"Cerkvenjak"},{code:"SI-197",name:"Cirkulane"},{code:"SI-015",name:"Crenšovci"},{code:"SI-016",name:"Crna na Koroškem"},{code:"SI-017",name:"Crnomelj"},{code:"SI-018",name:"Destrnik"},{code:"SI-019",name:"Divaca"},{code:"SI-154",name:"Dobje"},{code:"SI-020",name:"Dobrepolje"},{code:"SI-155",name:"Dobrna"},{code:"SI-021",name:"Dobrova-Polhov Gradec"},{code:"SI-156",name:"Dobrovnik/Dobronak"},{code:"SI-022",name:"Dol pri Ljubljani"},{code:"SI-157",name:"Dolenjske Toplice"},{code:"SI-023",name:"Domžale"},{code:"SI-024",name:"Dornava"},{code:"SI-025",name:"Dravograd"},{code:"SI-026",name:"Duplek"},{code:"SI-027",name:"Gorenja vas-Poljane"},{code:"SI-028",name:"Gorišnica"},{code:"SI-207",name:"Gorje"},{code:"SI-029",name:"Gornja Radgona"},{code:"SI-030",name:"Gornji Grad"},{code:"SI-031",name:"Gornji Petrovci"},{code:"SI-158",name:"Grad"},{code:"SI-032",name:"Grosuplje"},{code:"SI-159",name:"Hajdina"},{code:"SI-160",name:"Hoce-Slivnica"},{code:"SI-161",name:"Hodoš/Hodos"},{code:"SI-162",name:"Horjul"},{code:"SI-034",name:"Hrastnik"},{code:"SI-035",name:"Hrpelje-Kozina"},{code:"SI-036",name:"Idrija"},{code:"SI-037",name:"Ig"},{code:"SI-038",name:"Ilirska Bistrica"},{code:"SI-039",name:"Ivancna Gorica"},{code:"SI-040",name:"Izola/Isola"},{code:"SI-041",name:"Jesenice"},{code:"SI-163",name:"Jezersko"},{code:"SI-042",name:"Juršinci"},{code:"SI-043",name:"Kamnik"},{code:"SI-044",name:"Kanal"},{code:"SI-045",name:"Kidricevo"},{code:"SI-046",name:"Kobarid"},{code:"SI-047",name:"Kobilje"},{code:"SI-048",name:"Kocevje"},{code:"SI-049",name:"Komen"},{code:"SI-164",name:"Komenda"},{code:"SI-050",name:"Koper/Capodistria"},{code:"SI-196",name:"Kosanjevica na Krki"},{code:"SI-165",name:"Kostel"},{code:"SI-051",name:"Kozje"},{code:"SI-052",name:"Kranj"},{code:"SI-053",name:"Kranjska Gora"},{code:"SI-166",name:"Križevci"},{code:"SI-054",name:"Krško"},{code:"SI-055",name:"Kungota"},{code:"SI-056",name:"Kuzma"},{code:"SI-057",name:"Laško"},{code:"SI-058",name:"Lenart"},{code:"SI-059",name:"Lendava/Lendva"},{code:"SI-060",name:"Litija"},{code:"SI-061",name:"Ljubljana"},{code:"SI-062",name:"Ljubno"},{code:"SI-063",name:"Ljutomer"},{code:"SI-208",name:"Log-Dragomer"},{code:"SI-064",name:"Logatec"},{code:"SI-065",name:"Loška dolina"},{code:"SI-066",name:"Loški Potok"},{code:"SI-167",name:"Lovrenc na Pohorju"},{code:"SI-067",name:"Luce"},{code:"SI-068",name:"Lukovica"},{code:"SI-069",name:"Majšperk"},{code:"SI-198",name:"Makole"},{code:"SI-070",name:"Maribor"},{code:"SI-168",name:"Markovci"},{code:"SI-071",name:"Medvode"},{code:"SI-072",name:"Mengeš"},{code:"SI-073",name:"Metlika"},{code:"SI-074",name:"Mežica"},{code:"SI-169",name:"Miklavž na Dravskem polju"},{code:"SI-075",name:"Miren-Kostanjevica"},{code:"SI-170",name:"Mirna Pec"},{code:"SI-076",name:"Mislinja"},{code:"SI-199",name:"Mokronog-Trebelno"},{code:"SI-077",name:"Moravce"},{code:"SI-078",name:"Moravske Toplice"},{code:"SI-079",name:"Mozirje"},{code:"SI-080",name:"Murska Sobota"},{code:"SI-081",name:"Muta"},{code:"SI-082",name:"Naklo"},{code:"SI-083",name:"Nazarje"},{code:"SI-084",name:"Nova Gorica"},{code:"SI-085",name:"Novo mesto"},{code:"SI-086",name:"Odranci"},{code:"SI-171",name:"Oplotnica"},{code:"SI-087",name:"Ormož"},{code:"SI-088",name:"Osilnica"},{code:"SI-089",name:"Pesnica"},{code:"SI-090",name:"Piran/Pirano"},{code:"SI-091",name:"Pivka"},{code:"SI-092",name:"Podcetrtek"},{code:"SI-172",name:"Podlehnik"},{code:"SI-093",name:"Podvelka"},{code:"SI-200",name:"Poljcane"},{code:"SI-173",name:"Polzela"},{code:"SI-094",name:"Postojna"},{code:"SI-174",name:"Prebold"},{code:"SI-095",name:"Preddvor"},{code:"SI-175",name:"Prevalje"},{code:"SI-096",name:"Ptuj"},{code:"SI-097",name:"Puconci"},{code:"SI-098",name:"Race-Fram"},{code:"SI-099",name:"Radece"},{code:"SI-100",name:"Radenci"},{code:"SI-101",name:"Radlje ob Dravi"},{code:"SI-102",name:"Radovljica"},{code:"SI-103",name:"Ravne na Koroškem"},{code:"SI-176",name:"Razkrižje"},{code:"SI-209",name:"Recica ob Savinji"},{code:"SI-201",name:"Rence-Vogrsko"},{code:"SI-177",name:"Ribnica na Pohorju"},{code:"SI-104",name:"Ribnica"},{code:"SI-106",name:"Rogaška Slatina"},{code:"SI-105",name:"Rogašovci"},{code:"SI-107",name:"Rogatec"},{code:"SI-108",name:"Ruše"},{code:"SI-033",name:"Šalovci"},{code:"SI-178",name:"Selnica ob Dravi"},{code:"SI-109",name:"Semic"},{code:"SI-183",name:"Šempeter-Vrtojba"},{code:"SI-117",name:"Šencur"},{code:"SI-118",name:"Šentilj"},{code:"SI-119",name:"Šentjernej"},{code:"SI-120",name:"Šentjur pri Celju"},{code:"SI-211",name:"Šentrupert"},{code:"SI-110",name:"Sevnica"},{code:"SI-111",name:"Sežana"},{code:"SI-121",name:"Škocjan"},{code:"SI-122",name:"Škofja Loka"},{code:"SI-123",name:"Škofljica"},{code:"SI-112",name:"Slovenj Gradec"},{code:"SI-113",name:"Slovenska Bistrica"},{code:"SI-114",name:"Slovenske Konjice"},{code:"SI-124",name:"Šmarje pri Jelšah"},{code:"SI-206",name:"Šmarješke Toplice"},{code:"SI-125",name:"Šmartno ob Paki"},{code:"SI-194",name:"Šmartno pri Litiji"},{code:"SI-194",name:"Šmartno pri Litiji"},{code:"SI-179",name:"Sodražica"},{code:"SI-180",name:"Solcava"},{code:"SI-126",name:"Šoštanj"},{code:"SI-202",name:"Središce ob Dravi"},{code:"SI-115",name:"Starše"},{code:"SI-127",name:"Štore"},{code:"SI-203",name:"Straža"},{code:"SI-181",name:"Sveta Ana"},{code:"SI-204",name:"Sveta Trojica v Slovenskih Goricah"},{code:"SI-182",name:"Sveti Andraž v Slovenskih goricah"},{code:"SI-116",name:"Sveti Jurij"},{code:"SI-210",name:"Sveti Jurij v Slovenskih Goricah"},{code:"SI-205",name:"Sveti Tomaž"},{code:"SI-184",name:"Tabor"},{code:"SI-010",name:"Tišina"},{code:"SI-128",name:"Tolmin"},{code:"SI-129",name:"Trbovlje"},{code:"SI-130",name:"Trebnje"},{code:"SI-185",name:"Trnovska vas"},{code:"SI-131",name:"Tržic"},{code:"SI-186",name:"Trzin"},{code:"SI-132",name:"Turnišce"},{code:"SI-133",name:"Velenje"},{code:"SI-187",name:"Velika Polana"},{code:"SI-134",name:"Velike Lašce"},{code:"SI-188",name:"Veržej"},{code:"SI-135",name:"Videm"},{code:"SI-136",name:"Vipava"},{code:"SI-137",name:"Vitanje"},{code:"SI-138",name:"Vodice"},{code:"SI-139",name:"Vojnik"},{code:"SI-189",name:"Vransko"},{code:"SI-140",name:"Vrhnika"},{code:"SI-141",name:"Vuzenica"},{code:"SI-142",name:"Zagorje ob Savi"},{code:"SI-190",name:"Žalec"},{code:"SI-143",name:"Zavrc"},{code:"SI-146",name:"Železniki"},{code:"SI-191",name:"Žetale"},{code:"SI-147",name:"Žiri"},{code:"SI-192",name:"Žirovnica"},{code:"SI-144",name:"Zrece"},{code:"SI-193",name:"Žužemberk"}]},{code:"SB",id:2336,name:"Solomon Islands",states:[]},{code:"SO",id:2337,name:"Somalia",states:[{code:"SO21",name:"Awdal"},{code:"SO01",name:"Bakool"},{code:"SO02",name:"Banaadir"},{code:"SO03",name:"Bari"},{code:"SO04",name:"Bay"},{code:"SO05",name:"Galguduud"},{code:"SO06",name:"Gedo"},{code:"SO07",name:"Hiiraan"},{code:"SO08",name:"Jubbada Dhexe"},{code:"SO09",name:"Jubbada Hoose"},{code:"SO10",name:"Mudug"},{code:"SO18",name:"Nugaal"},{code:"SO12",name:"Sanaag"},{code:"SO13",name:"Shabeellaha Dhexe"},{code:"SO14",name:"Shabeellaha Hoose"},{code:"SO22",name:"Sool"},{code:"SO19",name:"Togdheer"},{code:"SO20",name:"Woqooyi Galbeed"}]},{code:"ZA",id:2338,name:"South Africa",states:[{code:"SF01",name:"Cape Province"},{code:"SF05",name:"Eastern Cape"},{code:"SF03",name:"Free State"},{code:"SF06",name:"Gauteng"},{code:"SF02",name:"KwaZulu-Natal"},{code:"SF09",name:"Limpopo"},{code:"SF07",name:"Mpumalanga"},{code:"SF10",name:"North-West"},{code:"SF08",name:"Northern Cape"},{code:"SF04",name:"Transvaal"},{code:"SF11",name:"Western Cape"}]},{code:"GS",id:2436,name:"South Georgia and the South Sandwich Islands",states:[]},{code:"SS",id:2447,name:"South Sudan",states:[{code:"OD01",name:"Central Equatoria"},{code:"OD02",name:"East Equatoria"},{code:"OD03",name:"Jungoli"},{code:"OD04",name:"Lakes"},{code:"OD05",name:"North Bahr-al-Ghazal"},{code:"OD06",name:"Unity"},{code:"OD07",name:"Upper Nile"},{code:"OD08",name:"Warap"},{code:"OD09",name:"West Bahr-al-Ghazal"},{code:"OD10",name:"West Equatoria"}]},{code:"ES",id:2339,name:"Spain",states:[{code:"SP23",name:"A Coruña"},{code:"SP01",name:"Alava"},{code:"SP02",name:"Albacete"},{code:"SP03",name:"Alicante"},{code:"SP04",name:"Almeria"},{code:"SP51",name:"Andalucia"},{code:"SP52",name:"Aragon"},{code:"SP34",name:"Asturias"},{code:"SP05",name:"Avila"},{code:"SP06",name:"Badajoz"},{code:"SP08",name:"Barcelona"},{code:"SP09",name:"Burgos"},{code:"SP10",name:"Caceres"},{code:"SP11",name:"Cadiz"},{code:"SP53",name:"Canarias"},{code:"SP39",name:"Cantabria"},{code:"SP12",name:"Castellon"},{code:"SP55",name:"Castilla y Leon"},{code:"SP54",name:"Castilla-La Mancha"},{code:"SP56",name:"Cataluna"},{code:"SP13",name:"Ciudad Real"},{code:"SP14",name:"Cordoba"},{code:"SP15",name:"Cuenca"},{code:"SP57",name:"Extremadura"},{code:"SP58",name:"Galicia"},{code:"SP16",name:"Gerona"},{code:"SP17",name:"Granada"},{code:"SP18",name:"Guadalajara"},{code:"SP19",name:"Guipuzcoa"},{code:"SP20",name:"Huelva"},{code:"SP21",name:"Huesca"},{code:"SP07",name:"Islas Baleares"},{code:"SP22",name:"Jaen"},{code:"SP23",name:"La Coruna"},{code:"SP27",name:"La Rioja"},{code:"SP24",name:"Las Palmas"},{code:"SP25",name:"Leon"},{code:"SP26",name:"Lerida"},{code:"SP28",name:"Lugo"},{code:"SP29",name:"Madrid"},{code:"SP30",name:"Malaga"},{code:"SP31",name:"Murcia"},{code:"SP32",name:"Navarra"},{code:"SP33",name:"Orense"},{code:"SP59",name:"Pais Vasco"},{code:"SP35",name:"Palencia"},{code:"SP36",name:"Pontevedra"},{code:"SP37",name:"Salamanca"},{code:"SP38",name:"Santa Cruz de Tenerife"},{code:"SP40",name:"Segovia"},{code:"SP41",name:"Sevilla"},{code:"SP42",name:"Soria"},{code:"SP43",name:"Tarragona"},{code:"SP44",name:"Teruel"},{code:"SP45",name:"Toledo"},{code:"SP46",name:"Valencia"},{code:"SP60",name:"Valenciana"},{code:"SP47",name:"Valladolid"},{code:"SP48",name:"Vizcaya"},{code:"SP49",name:"Zamora"},{code:"SP50",name:"Zaragoza"}]},{code:"LK",id:2340,name:"Sri Lanka",states:[]},{code:"SD",id:2341,name:"Sudan",states:[{code:"SU42",name:"Blue Nile"},{code:"SU61",name:"Central Darfur"},{code:"SU60",name:"East Darfur"},{code:"SU39",name:"Gedarif"},{code:"SU38",name:"Gezira"},{code:"SU52",name:"Kassala"},{code:"SU29",name:"Khartoum"},{code:"SU55",name:"North Darfur"},{code:"SU56",name:"North Kordofan"},{code:"SU43",name:"Northern"},{code:"SU36",name:"Red Sea"},{code:"SU53",name:"River Nile"},{code:"SU58",name:"Sennar"},{code:"SU49",name:"South Darfur"},{code:"SU50",name:"South Kordofan"},{code:"SU47",name:"West Darfur"},{code:"SU62",name:"West Kordofan"},{code:"SU41",name:"White Nile"}]},{code:"SR",id:2342,name:"Suriname",states:[{code:"NS10",name:"Brokopondo"},{code:"NS11",name:"Commewijne"},{code:"NS12",name:"Coronie"},{code:"NS13",name:"Marowijne"},{code:"NS14",name:"Nickerie"},{code:"NS16",name:"Paramaribo"},{code:"NS15",name:"Para"},{code:"NS17",name:"Saramacca"},{code:"NS18",name:"Sipaliwini"},{code:"NS19",name:"Wanica"}]},{code:"SJ",id:2437,name:"Svalbard And Jan Mayen",states:[]},{code:"SZ",id:2343,name:"Swaziland",states:[{code:"WZ01",name:"Hhohho"},{code:"WZ02",name:"Lubombo"},{code:"WZ03",name:"Manzini"},{code:"WZ04",name:"Shiselweni"}]},{code:"SE",id:2344,name:"Sweden",states:[{code:"SE-K",name:"Blekinge län"},{code:"SE-W",name:"Dalarnas län"},{code:"SE-X",name:"Gävleborgs län"},{code:"SE-I",name:"Gotlands län"},{code:"SE-N",name:"Hallands län"},{code:"SE-Z",name:"Jämtlands län"},{code:"SE-F",name:"Jönköpings län"},{code:"SE-H",name:"Kalmar län"},{code:"SE-G",name:"Kronobergs län"},{code:"SE-BD",name:"Norrbottens län"},{code:"SE-M",name:"Skåne län"},{code:"SE-D",name:"Södermanlands län"},{code:"SE-AB",name:"Stockholms län"},{code:"SE-C",name:"Uppsala län"},{code:"SE-S",name:"Värmlands län"},{code:"SE-AC",name:"Västerbottens län"},{code:"SE-Y",name:"Västernorrlands län"},{code:"SE-U",name:"Västmanlands län"},{code:"SE-O",name:"Västra Götalands län"},{code:"SE-T",name:"Örebro län"},{code:"SE-E",name:"Östergötlands län"}]},{code:"CH",id:2345,name:"Switzerland",states:[{code:"AG",name:"Aargau"},{code:"AR",name:"Appenzell Ausserrhoden"},{code:"AI",name:"Appenzell Innerrhoden"},{code:"BL",name:"Basel-Landschaft"},{code:"BS",name:"Basel-Stadt"},{code:"BE",name:"Bern"},{code:"FR",name:"Fribourg"},{code:"GE",name:"Genève"},{code:"GL",name:"Glarus"},{code:"GR",name:"Graubünden"},{code:"JU",name:"Jura"},{code:"LU",name:"Luzern"},{code:"NE",name:"Neuchâtel"},{code:"NW",name:"Nidwalden"},{code:"OW",name:"Obwalden"},{code:"SG",name:"Sankt Gallen"},{code:"SH",name:"Schaffhausen"},{code:"SZ",name:"Schwyz"},{code:"SO",name:"Solothurn"},{code:"TG",name:"Thurgau"},{code:"TI",name:"Ticino"},{code:"UR",name:"Uri"},{code:"VS",name:"Valais"},{code:"VD",name:"Vaud"},{code:"ZG",name:"Zug"},{code:"ZH",name:"Zürich"}]},{code:"SY",id:2381,name:"Syrian Arab Republic",states:[{code:"SY01",name:"Al Hasakah"},{code:"SY09",name:"Aleppo"},{code:"SY04",name:"Ar Raqqah"},{code:"SY05",name:"As Suwayda'"},{code:"SY13",name:"Damascus"},{code:"SY06",name:"Dar`a"},{code:"SY07",name:"Dayr az Zawr"},{code:"SY10",name:"Hama"},{code:"SY11",name:"Hims"},{code:"SY12",name:"Idlib"},{code:"SY02",name:"Latakia"},{code:"SY03",name:"Quneitra"},{code:"SY08",name:"Rif Dimashq"},{code:"SY14",name:"Tartus"}]},{code:"TW",id:2375,name:"Taiwan",states:[{code:"TW02",name:"Kaohsiung"},{code:"TW03",name:"Taipei"}]},{code:"TJ",id:2348,name:"Tajikistan",states:[{code:"TI01",name:"Badakhshoni Kuni"},{code:"TI04",name:"Dushanbe"},{code:"TI02",name:"Khatlon"},{code:"TI05",name:"Regions of Republican Subordination"},{code:"TI03",name:"Sogd"}]},{code:"TZ",id:2349,name:"Tanzania",states:[{code:"TZ26",name:"Arusha"},{code:"TZ23",name:"Dar es Salaam"},{code:"TZ03",name:"Dodoma"},{code:"TZ28",name:"Geita"},{code:"TZ04",name:"Iringa"},{code:"TZ19",name:"Kagera"},{code:"TZ29",name:"Katavi"},{code:"TZ05",name:"Kigoma"},{code:"TZ06",name:"Kilimanjaro"},{code:"TZ07",name:"Lindi"},{code:"TZ27",name:"Manyara"},{code:"TZ08",name:"Mara"},{code:"TZ09",name:"Mbeya"},{code:"TZ10",name:"Morogoro"},{code:"TZ11",name:"Mtwara"},{code:"TZ12",name:"Mwanza"},{code:"TZ30",name:"Njombe"},{code:"TZ13",name:"Pemba North"},{code:"TZ20",name:"Pemba South"},{code:"TZ02",name:"Pwani"},{code:"TZ24",name:"Rukwa"},{code:"TZ14",name:"Ruvuma"},{code:"TZ15",name:"Shinyanga"},{code:"TZ31",name:"Simiyu"},{code:"TZ16",name:"Singida"},{code:"TZ17",name:"Tabora"},{code:"TZ18",name:"Tanga"},{code:"TZ22",name:"Zanzibar North"},{code:"TZ21",name:"Zanzibar South and Central"},{code:"TZ25",name:"Zanzibar West"}]},{code:"TH",id:2350,name:"Thailand",states:[{code:"TH77",name:"Amnat Charoen"},{code:"TH35",name:"Ang Thong"},{code:"TH40",name:"Bangkok Metropolis"},{code:"TH81",name:"Bueng Kan"},{code:"TH28",name:"Buri Ram"},{code:"TH44",name:"Chachoengsao"},{code:"TH32",name:"Chai Nat"},{code:"TH26",name:"Chaiyaphum"},{code:"TH48",name:"Chanthaburi"},{code:"TH02",name:"Chiang Mai"},{code:"TH03",name:"Chiang Rai"},{code:"TH46",name:"Chon Buri"},{code:"TH58",name:"Chumphon"},{code:"TH23",name:"Kalasin"},{code:"TH11",name:"Kamphaeng Phet"},{code:"TH50",name:"Kanchanaburi"},{code:"TH22",name:"Khon Kaen"},{code:"TH63",name:"Krabi"},{code:"TH06",name:"Lampang"},{code:"TH05",name:"Lamphun"},{code:"TH18",name:"Loei"},{code:"TH34",name:"Lop Buri"},{code:"TH01",name:"Mae Hong Son"},{code:"TH24",name:"Maha Sarakham"},{code:"TH78",name:"Mukdahan"},{code:"TH43",name:"Nakhon Nayok"},{code:"TH53",name:"Nakhon Pathom"},{code:"TH73",name:"Nakhon Phanom"},{code:"TH27",name:"Nakhon Ratchasima"},{code:"TH16",name:"Nakhon Sawan"},{code:"TH64",name:"Nakhon Si Thammarat"},{code:"TH04",name:"Nan"},{code:"TH31",name:"Narathiwat"},{code:"TH79",name:"Nong Bua Lam Phu"},{code:"TH17",name:"Nong Khai"},{code:"TH38",name:"Nonthaburi"},{code:"TH39",name:"Pathum Thani"},{code:"TH69",name:"Pattani"},{code:"TH61",name:"Phangnga"},{code:"TH66",name:"Phatthalung"},{code:"TH41",name:"Phayao"},{code:"TH14",name:"Phetchabun"},{code:"TH56",name:"Phetchaburi"},{code:"TH13",name:"Phichit"},{code:"TH12",name:"Phitsanulok"},{code:"TH36",name:"Phra Nakhon Si Ayutthaya"},{code:"TH07",name:"Phrae"},{code:"TH62",name:"Phuket"},{code:"TH74",name:"Prachin Buri"},{code:"TH57",name:"Prachuap Khiri Khan"},{code:"TH59",name:"Ranong"},{code:"TH52",name:"Ratchaburi"},{code:"TH47",name:"Rayong"},{code:"TH25",name:"Roi Et"},{code:"TH80",name:"Sa Kaeo"},{code:"TH20",name:"Sakon Nakhon"},{code:"TH42",name:"Samut Prakan"},{code:"TH55",name:"Samut Sakhon"},{code:"TH54",name:"Samut Songkhram"},{code:"TH37",name:"Saraburi"},{code:"TH67",name:"Satun"},{code:"TH30",name:"Si Sa Ket"},{code:"TH33",name:"Sing Buri"},{code:"TH68",name:"Songkhla"},{code:"TH09",name:"Sukhothai"},{code:"TH51",name:"Suphan Buri"},{code:"TH60",name:"Surat Thani"},{code:"TH29",name:"Surin"},{code:"TH08",name:"Tak"},{code:"TH65",name:"Trang"},{code:"TH49",name:"Trat"},{code:"TH75",name:"Ubon Ratchathani"},{code:"TH76",name:"Udon Thani"},{code:"TH15",name:"Uthai Thani"},{code:"TH10",name:"Uttaradit"},{code:"TH70",name:"Yala"},{code:"TH72",name:"Yasothon"}]},{code:"TL",id:2404,name:"Timor-Leste",states:[]},{code:"TG",id:2351,name:"Togo",states:[{code:"TO22",name:"Centrale"},{code:"TO23",name:"Kara"},{code:"TO24",name:"Maritime"},{code:"TO25",name:"Plateaux"},{code:"TO26",name:"Savanes"}]},{code:"TK",id:2438,name:"Tokelau",states:[]},{code:"TO",id:2405,name:"Tonga",states:[]},{code:"TT",id:2352,name:"Trinidad and Tobago",states:[{code:"TD01",name:"Arima"},{code:"TD13",name:"Chaguanas"},{code:"TD14",name:"Couva/Tabaquite/Talparo"},{code:"TD15",name:"Diego Martin"},{code:"TD11",name:"Eastern Tobago"},{code:"TD16",name:"Mayaro/Rio Claro"},{code:"TD17",name:"Penal/Debe"},{code:"TD18",name:"Point Fortin"},{code:"TD05",name:"Port of Spain"},{code:"TD19",name:"Princes Town"},{code:"TD10",name:"San Fernando"},{code:"TD20",name:"San Juan/Laventille"},{code:"TD21",name:"Sangre Grande"},{code:"TD22",name:"Siparia"},{code:"TD23",name:"Tunapuna/Piarco"},{code:"TD11",name:"Western Tobago"}]},{code:"TN",id:2353,name:"Tunisia",states:[{code:"TS38",name:"Ariana"},{code:"TS17",name:"Béja"},{code:"TS27",name:"Ben Arous"},{code:"TS18",name:"Bizerte"},{code:"TS29",name:"Gabès"},{code:"TS30",name:"Gafsa"},{code:"TS06",name:"Jendouba"},{code:"TS03",name:"Kairouan"},{code:"TS02",name:"Kassérine"},{code:"TS31",name:"Kebili"},{code:"TS14",name:"Le Kef"},{code:"TS15",name:"Mahdia"},{code:"TS39",name:"Manouba"},{code:"TS28",name:"Médenine"},{code:"TS16",name:"Monastir"},{code:"TS19",name:"Nabeul"},{code:"TS32",name:"Sfax"},{code:"TS33",name:"Sidi Bou Zid"},{code:"TS22",name:"Siliana"},{code:"TS23",name:"Sousse"},{code:"TS34",name:"Tataouine"},{code:"TS35",name:"Tozeur"},{code:"TS36",name:"Tunis"},{code:"TS37",name:"Zaghouan"}]},{code:"TR",id:2354,name:"Turkey",states:[{code:"TU81",name:"Adana"},{code:"TU02",name:"Adiyaman"},{code:"TU03",name:"Afyonkarahisar"},{code:"TU04",name:"Agri"},{code:"TU75",name:"Aksaray"},{code:"TU05",name:"Amasya"},{code:"TU68",name:"Ankara"},{code:"TU07",name:"Antalya"},{code:"TU86",name:"Ardahan"},{code:"TU08",name:"Artvin"},{code:"TU09",name:"Aydin"},{code:"TU10",name:"Balikesir"},{code:"TU87",name:"Bartin"},{code:"TU76",name:"Batman"},{code:"TU77",name:"Bayburt"},{code:"TU11",name:"Bilecik"},{code:"TU12",name:"Bingöl"},{code:"TU13",name:"Bitlis"},{code:"TU14",name:"Bolu"},{code:"TU15",name:"Burdur"},{code:"TU16",name:"Bursa"},{code:"TU17",name:"Çanakkale"},{code:"TU82",name:"Çankiri"},{code:"TU19",name:"Çorum"},{code:"TU20",name:"Denizli"},{code:"TU21",name:"Diyarbakir"},{code:"TU93",name:"Düzce"},{code:"TU22",name:"Edirne"},{code:"TU23",name:"Elazig"},{code:"TU24",name:"Erzincan"},{code:"TU25",name:"Erzurum"},{code:"TU26",name:"Eskisehir"},{code:"TU83",name:"Gaziantep"},{code:"TU28",name:"Giresun"},{code:"TU69",name:"Gümüshane"},{code:"TU70",name:"Hakkari"},{code:"TU31",name:"Hatay"},{code:"TU88",name:"Igdir"},{code:"TU33",name:"Isparta"},{code:"TU34",name:"Istanbul"},{code:"TU35",name:"Izmir"},{code:"TU46",name:"Kahramanmaras"},{code:"TU89",name:"Karabük"},{code:"TU78",name:"Karaman"},{code:"TU84",name:"Kars"},{code:"TU37",name:"Kastamonu"},{code:"TU38",name:"Kayseri"},{code:"TU90",name:"Kilis"},{code:"TU79",name:"Kirikkale"},{code:"TU39",name:"Kirklareli"},{code:"TU40",name:"Kirsehir"},{code:"TU41",name:"Kocaeli"},{code:"TU71",name:"Konya"},{code:"TU43",name:"Kütahya"},{code:"TU44",name:"Malatya"},{code:"TU45",name:"Manisa"},{code:"TU72",name:"Mardin"},{code:"TU32",name:"Mersin"},{code:"TU48",name:"Mugla"},{code:"TU49",name:"Mus"},{code:"TU50",name:"Nevsehir"},{code:"TU73",name:"Nigde"},{code:"TU52",name:"Ordu"},{code:"TU91",name:"Osmaniye"},{code:"TU53",name:"Rize"},{code:"TU54",name:"Sakarya"},{code:"TU55",name:"Samsun"},{code:"TU63",name:"Sanliurfa"},{code:"TU74",name:"Siirt"},{code:"TU57",name:"Sinop"},{code:"TU80",name:"Sirnak"},{code:"TU58",name:"Sivas"},{code:"TU59",name:"Tekirdag"},{code:"TU60",name:"Tokat"},{code:"TU61",name:"Trabzon"},{code:"TU62",name:"Tunceli"},{code:"TU64",name:"Usak"},{code:"TU65",name:"Van"},{code:"TU92",name:"Yalova"},{code:"TU66",name:"Yozgat"},{code:"TU85",name:"Zonguldak"}]},{code:"TM",id:2355,name:"Turkmenistan",states:[{code:"TX01",name:"Ahal"},{code:"TM.AB",name:"Ashgabat"},{code:"TX02",name:"Balkan"},{code:"TX03",name:"Dashoguz"},{code:"TX04",name:"Lebap"},{code:"TX05",name:"Mary"}]},{code:"TC",id:2439,name:"Turks and Caicos Islands",states:[]},{code:"TV",id:2440,name:"Tuvalu",states:[]},{code:"UG",id:2356,name:"Uganda",states:[{code:"UG.AI",name:"Abim"},{code:"UG.AD",name:"Adjumani"},{code:"UG.AG",name:"Agago"},{code:"UG.AL",name:"Alebtong"},{code:"UG.AT",name:"Amolatar"},{code:"UG.AZ",name:"Amudat"},{code:"UG.AM",name:"Amuria"},{code:"UG.AY",name:"Amuru"},{code:"UG.AQ",name:"Apac"},{code:"UG.AX",name:"Arua"},{code:"UG.BD",name:"Budaka"},{code:"UG.BA",name:"Bududa"},{code:"UG.BI",name:"Bugiri"},{code:"UG.BH",name:"Buhweju"},{code:"UG.BZ",name:"Buikwe"},{code:"UG.BE",name:"Bukedea"},{code:"UG.BM",name:"Bukomansimbi"},{code:"UG.BW",name:"Bukwo"},{code:"UG.BB",name:"Bulambuli"},{code:"UG.BL",name:"Buliisa"},{code:"UG.BX",name:"Bundibugyo"},{code:"UG.BC",name:"Bushenyi"},{code:"UG.BU",name:"Busia"},{code:"UG.BJ",name:"Butaleja"},{code:"UG.BT",name:"Butambala"},{code:"UG.BV",name:"Buvuma"},{code:"UG.BY",name:"Buyende"},{code:"UG.DO",name:"Dokolo"},{code:"UG.GM",name:"Gomba"},{code:"UG.GL",name:"Gulu"},{code:"UG.HO",name:"Hoima"},{code:"UG.IB",name:"Ibanda"},{code:"UG.IC",name:"Iganga"},{code:"UG.NG",name:"Isingiro"},{code:"UG.JI",name:"Jinja"},{code:"UG.AB",name:"Kaabong"},{code:"UG.KA",name:"Kabale"},{code:"UG.BR",name:"Kabarole"},{code:"UG.KD",name:"Kaberamaido"},{code:"UG.KN",name:"Kalangala"},{code:"UG.RO",name:"Kaliro"},{code:"UG.QA",name:"Kalungu"},{code:"UG.KM",name:"Kampala"},{code:"UG.QU",name:"Kamuli"},{code:"UG.KE",name:"Kamwenge"},{code:"UG.UU",name:"Kanungu"},{code:"UG.QP",name:"Kapchorwa"},{code:"UG.KS",name:"Kasese"},{code:"UG.KK",name:"Katakwi"},{code:"UG.KY",name:"Kayunga"},{code:"UG.KI",name:"Kibaale"},{code:"UG.QO",name:"Kiboga"},{code:"UG.QB",name:"Kibuku"},{code:"UG.KH",name:"Kiruhuura"},{code:"UG.QD",name:"Kiryandongo"},{code:"UG.KR",name:"Kisoro"},{code:"UG.QT",name:"Kitgum"},{code:"UG.OK",name:"Koboko"},{code:"UG.QL",name:"Kole"},{code:"UG.KF",name:"Kotido"},{code:"UG.QM",name:"Kumi"},{code:"UG.QW",name:"Kween"},{code:"UG.QZ",name:"Kyankwanzi"},{code:"UG.QG",name:"Kyegegwa"},{code:"UG.QJ",name:"Kyenjojo"},{code:"UG.LM",name:"Lamwo"},{code:"UG.LL",name:"Lira"},{code:"UG.LK",name:"Luuka"},{code:"UG.LW",name:"Luwero"},{code:"UG.LE",name:"Lwengo"},{code:"UG.LY",name:"Lyantonde"},{code:"UG.MW",name:"Manafwa"},{code:"UG.MQ",name:"Masaka"},{code:"UG.MZ",name:"Masindi"},{code:"UG.MG",name:"Mayuge"},{code:"UG.ME",name:"Mbale"},{code:"UG.RR",name:"Mbarara"},{code:"UG.MM",name:"Mitoma"},{code:"UG.TY",name:"Mityana"},{code:"UG.MX",name:"Moroto"},{code:"UG.MY",name:"Moyo"},{code:"UG.MJ",name:"Mpigi"},{code:"UG.MD",name:"Mubende"},{code:"UG.MV",name:"Mukono"},{code:"UG.NI",name:"Nakapiripirit"},{code:"UG.NK",name:"Nakaseke"},{code:"UG.NA",name:"Nakasongola"},{code:"UG.NY",name:"Namayingo"},{code:"UG.BK",name:"Namutumba"},{code:"UG.NQ",name:"Napak"},{code:"UG.NB",name:"Nebbi"},{code:"UG.NR",name:"Ngora"},{code:"UG.NO",name:"Ntoroko"},{code:"UG.NT",name:"Ntungamo"},{code:"UG.NW",name:"Nwoya"},{code:"UG.MH",name:"Nyadri"},{code:"UG.OT",name:"Otuke"},{code:"UG.OY",name:"Oyam"},{code:"UG.PR",name:"Pader"},{code:"UG.PS",name:"Pallisa"},{code:"UG.RI",name:"Rakai"},{code:"UG.RZ",name:"Rubirizi"},{code:"UG.RK",name:"Rukungiri"},{code:"UG.SE",name:"Sembabule"},{code:"UG.SX",name:"Serere"},{code:"UG.SH",name:"Sheema"},{code:"UG.SK",name:"Sironko"},{code:"UG.ST",name:"Soroti"},{code:"UG.TR",name:"Tororo"},{code:"UG.WA",name:"Wakiso"},{code:"UG.YU",name:"Yumbe"},{code:"UG.ZO",name:"Zombo"}]},{code:"UA",id:2357,name:"Ukraine",states:[{code:"UP01",name:"Cherkasy"},{code:"UP02",name:"Chernihiv"},{code:"UP03",name:"Chernivtsi"},{code:"UP11",name:"Crimea"},{code:"UP04",name:"Dnipropetrovs'k"},{code:"UP05",name:"Donets'k"},{code:"UP06",name:"Ivano-Frankivs'k"},{code:"UP07",name:"Kharkiv"},{code:"UP08",name:"Kherson"},{code:"UP09",name:"Khmel'nyts'kyy"},{code:"UP13",name:"Kiev"},{code:"UP12",name:"Kiev City"},{code:"UP10",name:"Kirovohrad"},{code:"UP15",name:"L'viv"},{code:"UP14",name:"Luhans'k"},{code:"UP16",name:"Mykolayiv"},{code:"UP17",name:"Odessa"},{code:"UP18",name:"Poltava"},{code:"UP19",name:"Rivne"},{code:"UP20",name:"Sevastopol' City"},{code:"UP21",name:"Sumy"},{code:"UP22",name:"Ternopil'"},{code:"UP25",name:"Transcarpathia"},{code:"UP23",name:"Vinnytsya"},{code:"UP24",name:"Volyn"},{code:"UP26",name:"Zaporizhzhya"},{code:"UP27",name:"Zhytomyr"}]},{code:"AE",id:2358,name:"United Arab Emirates",states:[{code:"AE02",name:"'Ajman"},{code:"AE01",name:"Abu Dhabi"},{code:"AE04",name:"Al Fujayrah"},{code:"AE03",name:"Dubai"},{code:"AE05",name:"Ra's al Khaymah"},{code:"AE06",name:"Sharjah"},{code:"AE07",name:"Umm al Qaywayn"}]},{code:"UM",id:2441,name:"United States Minor Outlying Islands",states:[]},{code:"UY",id:2360,name:"Uruguay",states:[]},{code:"UZ",id:2361,name:"Uzbekistan",states:[{code:"UZ01",name:"Andijon"},{code:"UZ02",name:"Buxoro"},{code:"UZ03",name:"Farg`ona"},{code:"UZ15",name:"Jizzax"},{code:"UZ09",name:"Karakalpakstan"},{code:"UZ08",name:"Kashkadarya"},{code:"UZ06",name:"Namangan"},{code:"UZ07",name:"Navoi"},{code:"UZ10",name:"Samarkand"},{code:"UZ16",name:"Sirdaryo"},{code:"UZ12",name:"Surxondaryo"},{code:"UZ13",name:"Tashkent City"},{code:"UZ14",name:"Tashkent"},{code:"UZ05",name:"Xorazm"}]},{code:"NH",id:2406,name:"Vanuatu",states:[]},{code:"VE",id:2363,name:"Venezuela; Bolivarian Republic of",states:[{code:"VE01",name:"Amazonas"},{code:"VE02",name:"Anzoátegui"},{code:"VE03",name:"Apure"},{code:"VE04",name:"Aragua"},{code:"VE05",name:"Barinas"},{code:"VE06",name:"Bolívar"},{code:"VE07",name:"Carabobo"},{code:"VE08",name:"Cojedes"},{code:"VE09",name:"Delta Amacuro"},{code:"VE24",name:"Dependencias Federales"},{code:"VE25",name:"Distrito Capital"},{code:"VE11",name:"Falcón"},{code:"VE12",name:"Guárico"},{code:"VE13",name:"Lara"},{code:"VE14",name:"Mérida"},{code:"VE15",name:"Miranda"},{code:"VE16",name:"Monagas"},{code:"VE17",name:"Nueva Esparta"},{code:"VE18",name:"Portuguesa"},{code:"VE19",name:"Sucre"},{code:"VE20",name:"Táchira"},{code:"VE21",name:"Trujillo"},{code:"VE26",name:"Vargas"},{code:"VE22",name:"Yaracuy"},{code:"VE23",name:"Zulia"}]},{code:"VN",id:2364,name:"Vietnam",states:[{code:"VM01",name:"An Giang"},{code:"VM45",name:"Ba Ria-Vung Tau"},{code:"VM72",name:"Bac Can"},{code:"VM71",name:"Bac Giang"},{code:"VM73",name:"Bac Lieu"},{code:"VM74",name:"Bac Ninh"},{code:"VM03",name:"Ben Tre"},{code:"VM46",name:"Binh Dinh"},{code:"VM75",name:"Binh Duong"},{code:"VM76",name:"Binh Phuoc"},{code:"VM47",name:"Binh Thuan"},{code:"VM77",name:"Ca Mau"},{code:"VM87",name:"Can Tho"},{code:"VM05",name:"Cao Bang"},{code:"VM78",name:"Da Nang"},{code:"VM88",name:"Dac Lac"},{code:"VM91",name:"Dac Nong"},{code:"VM92",name:"Dien Bien"},{code:"VM43",name:"Dong Nai"},{code:"VM09",name:"Dong Thap"},{code:"VM49",name:"Gia Lai"},{code:"VM50",name:"Ha Giang"},{code:"VM80",name:"Ha Nam"},{code:"VM52",name:"Ha Tinh"},{code:"VM79",name:"Hai Duong"},{code:"VM13",name:"Haiphong"},{code:"VM44",name:"Hanoi"},{code:"VM93",name:"Hau Giang"},{code:"VM20",name:"Ho Chi Minh"},{code:"VM53",name:"Hoa Binh"},{code:"VM81",name:"Hung Yen"},{code:"VM54",name:"Khanh Hoa"},{code:"VM21",name:"Kien Giang"},{code:"VM55",name:"Kon Tum"},{code:"VM89",name:"Lai Chau"},{code:"VM23",name:"Lam Dong"},{code:"VM39",name:"Lang Son"},{code:"VM90",name:"Lao Cai"},{code:"VM24",name:"Long An"},{code:"VM82",name:"Nam Dinh"},{code:"VM58",name:"Nghe An"},{code:"VM59",name:"Ninh Binh"},{code:"VM60",name:"Ninh Thuan"},{code:"VM83",name:"Phu Tho"},{code:"VM61",name:"Phu Yen"},{code:"VM62",name:"Quang Binh"},{code:"VM84",name:"Quang Nam"},{code:"VM63",name:"Quang Ngai"},{code:"VM30",name:"Quang Ninh"},{code:"VM64",name:"Quang Tri"},{code:"VM65",name:"Soc Trang"},{code:"VM32",name:"Son La"},{code:"VM33",name:"Tay Ninh"},{code:"VM35",name:"Thai Binh"},{code:"VM85",name:"Thai Nguyen"},{code:"VM34",name:"Thanh Hoa"},{code:"VM66",name:"Thua Thien-Hue"},{code:"VM37",name:"Tien Giang"},{code:"VM67",name:"Tra Vinh"},{code:"VM68",name:"Tuyen Quang"},{code:"VM69",name:"Vinh Long"},{code:"VM86",name:"Vinh Phuc"},{code:"VM70",name:"Yen Bai"}]},{code:"VG",id:2446,name:"Virgin Islands; British",states:[{code:"VG.VI",name:"British Virgin Islands"}]},{code:"VI",id:2442,name:"Virgin Islands; U.S.",states:[{code:"010",name:"Saint Croix"},{code:"020",name:"Saint John"},{code:"030",name:"Saint Thomas"}]},{code:"WF",id:2443,name:"Wallis and Futuna",states:[]},{code:"EH",id:2444,name:"Western Sahara",states:[]},{code:"YE",id:2382,name:"Yemen",states:[{code:"YM01",name:"Abyan"},{code:"YM20",name:"Al Bayda'"},{code:"YM18",name:"Al Dali'"},{code:"YM08",name:"Al Hudaydah"},{code:"YM21",name:"Al Jawf"},{code:"YM03",name:"Al Mahrah"},{code:"YM10",name:"Al Mahwit"},{code:"YM19",name:"Amran"},{code:"YM11",name:"Dhamar"},{code:"YM04",name:"Hadramawt"},{code:"YM22",name:"Hajjah"},{code:"YM23",name:"Ibb"},{code:"YM24",name:"Lahij"},{code:"YM14",name:"Ma'rib"},{code:"YM27",name:"Raymah"},{code:"YM15",name:"Sa`dah"},{code:"YM16",name:"San`a'"},{code:"YM26",name:"San`a' [City]"},{code:"YM05",name:"Shabwah"},{code:"YM28",name:"Socotra"},{code:"YM25",name:"Ta`izz"},{code:"YM02",name:"`Adan"}]},{code:"ZM",id:2369,name:"Zambia",states:[{code:"ZA02",name:"Central"},{code:"ZA08",name:"Copperbelt"},{code:"ZA03",name:"Eastern"},{code:"ZA04",name:"Luapula"},{code:"ZA09",name:"Lusaka"},{code:"ZA10",name:"Muchinga"},{code:"ZA06",name:"North-Western"},{code:"ZA05",name:"Northern"},{code:"ZA07",name:"Southern"},{code:"ZA01",name:"Western"}]},{code:"ZW",id:2370,name:"Zimbabwe",states:[{code:"ZI09",name:"Bulawayo"},{code:"ZI10",name:"Harare"},{code:"ZI01",name:"Manicaland"},{code:"ZI03",name:"Mashonaland Central"},{code:"ZI04",name:"Mashonaland East"},{code:"ZI05",name:"Mashonaland West"},{code:"ZI08",name:"Masvingo"},{code:"ZI06",name:"Matabeleland North"},{code:"ZI07",name:"Matabeleland South"},{code:"ZI02",name:"Midlands"}]},{code:"NONE",id:2378,name:"- None Specified -",states:[]}];function gn(e){return hn.find((function(t){return t.id===e}))}function fn(e){if(e){var t=hn.find((function(t){return t.name===e.trim()}));return t&&t.states||[]}return[]}function yn(e){return fn(e).map((function(e){return e.name}))}var vn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return bn})),multi:!0},bn=function(){function e(e){this.labels=e,this._readOnly=!1,this.states=[],this.fieldList=["address1","address2","city","state","zip","countryID"],this.onModelChange=function(){},this.onModelTouched=function(){},this.focused={},this.invalid={},this.disabled={},this.invalidMaxlength={},this.valid={},this.tooltip={},this.initComplete=!1,this.change=new t.EventEmitter,this.focus=new t.EventEmitter,this.blur=new t.EventEmitter,this.validityChange=new t.EventEmitter}return Object.defineProperty(e.prototype,"readOnly",{get:function(){return this._readOnly},set:function(e){var t=this;this._readOnly=e,this.fieldList.forEach((function(e){t.disabled[e]=t._readOnly})),this.model&&this.updateStates()},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.config||(this.config={}),this.model?(this.writeValue(this.model),this.updateControl()):this.model||(this.model={}),this.initConfig(),R.isBlank(this.model.countryID)&&this.updateStates()},e.prototype.initConfig=function(){var e=this;this.fieldList.forEach((function(t){e.config.hasOwnProperty(t)||(e.config[t]={hidden:!0}),e.config[t].hasOwnProperty("label")||(e.config[t].label=e.labels[t]),e.config.required&&(e.config[t].required=!0),(e.config[t].readOnly||e.config.readOnly)&&(e.config[t].readOnly=!0,e.disabled[t]=!0),"countryID"===t&&(e.config[t].pickerConfig||(e.config.countryID.pickerConfig=e.getDefaultCountryConfig()),e.config[t].pickerConfig.defaultOptions=e.config.countryID.pickerConfig.options),"state"===t&&(e.config[t].pickerConfig||(e.config.state.pickerConfig=e.getDefaultStateConfig(),e.config[t].pickerConfig.defaultOptions=e.config[t].pickerConfig.options),e.stateOptions=e.config[t].pickerConfig.options,e.config[t].pickerConfig.options=function(t){return void 0===t&&(t=""),e.stateOptions(t,e.model.countryID)},e.config[t].pickerConfig.defaultOptions=e.stateOptions)}))},e.prototype.isValid=function(e){var t=!0;(!this.config[e].required||!R.isBlank(this.model[e])&&!R.isEmpty(this.model[e]))&&this.config[e].required||"countryID"===e&&this.config[e].required&&!R.isBlank(this.model.countryID)||"state"===e&&this.config[e].required&&(!R.isEmpty(this.model.state)||(R.isBlank(this.model.state)||R.isEmpty(this.model.state))&&!R.isBlank(this.model.countryName)&&this.config.state.pickerConfig&&this.config.state.pickerConfig.defaultOptions&&0===this.config.state.pickerConfig.defaultOptions.length)?!R.isEmpty(this.model[e])&&!R.isBlank(this.config[e].maxlength)&&this.config[e].maxlength<this.model[e].length&&(t=!1):t=!1,this.valid[e]=t},e.prototype.isInvalid=function(e){var t=!1,n=!1;"countryID"!==e&&"state"!==e&&this.config[e].required&&R.isEmpty(this.model[e])&&!R.isBlank(this.model[e])||"countryID"===e&&this.config[e].required&&R.isBlank(this.model.countryName)&&this.config[e].updated||"state"===e&&this.config[e].required&&(R.isBlank(this.model.state)||R.isEmpty(this.model.state))&&!R.isBlank(this.model.countryID)&&this.config[e].updated&&this.config.state.pickerConfig&&this.config.state.pickerConfig.defaultOptions&&this.config.state.pickerConfig.defaultOptions.length>0?t=!0:!R.isEmpty(this.model[e])&&!R.isBlank(this.config[e].maxlength)&&this.config[e].maxlength<this.model[e].length&&(t=!0,n=!0),this.invalid[e]=t,this.invalidMaxlength[e]=n},e.prototype.onInput=function(e,t){this.isInvalid(t),this.isValid(t),e&&this.change.emit({value:this.model[t],field:t})},e.prototype.isFocused=function(e,t){this.focused[t]=!0,this.focus.emit({event:e,field:t})},e.prototype.isBlurred=function(e,t){this.focused[t]=!1,this.blur.emit({event:e,field:t})},e.prototype.onCountryChange=function(e){var t,n=e&&e.rawValue?e.rawValue:null,o=!1;this.config.countryID.updated=!0,this.config.countryID.pickerConfig&&(t=this.config.countryID.pickerConfig.field),n&&t&&!R.isBlank(n[t])&&this.model.countryID!==n[t]?(this.model.countryID=n[t],this.model.countryName=R.interpolate(this.config.countryID.pickerConfig.format,n),this.disabled.state=!1,this.tooltip.state=void 0,o=!0):(R.isBlank(n)||R.isBlank(n[t]))&&(this.model.countryID=void 0,this.model.countryName=void 0,this.disabled.state=!0,this.tooltip.state=this.labels.selectCountryFirst,this.invalid.state=!1,o=!0),o&&(this.model.state=void 0,this.updateStates()),this.updateControl(),this.onInput(null,"countryID"),this.onInput(null,"state")},e.prototype.onStateChange=function(e){var t=e&&e.value?e.value:null;this.config.state.updated=!0,this.model.state=t,this.updateControl(),this.onInput(null,"state")},e.prototype.setStateLabel=function(e){var t=e.state;R.isBlank(t)?(this.model.state=void 0,this.config.state.required&&(this.valid.state=!1)):(this.config.state.required&&(this.valid.state=!0),this.model.state=t)},e.prototype.updateStates=function(){var e=this;this.config.state.pickerConfig.options&&!R.isBlank(this.model.countryID)?(this.config.state.pickerConfig.options=function(t){return void 0===t&&(t=""),e.stateOptions(t,e.model.countryID)},this.stateOptions("",this.model.countryID).then((function(t){e.config.state.pickerConfig.defaultOptions=t,t.length?(e.tooltip.state=void 0,e.disabled.state=e._readOnly,e.setStateLabel(e.model)):(e.disabled.state=!0,e.tooltip.state=e.labels.noStatesForCountry,e.config.state.required&&(e.valid.state=!0)),e.validityChange.emit(),e.onInput(null,"state")}))):(this.config.state.pickerConfig.defaultOptions=[],this.disabled.state=!0,this.tooltip.state=this.labels.selectCountryFirst,this.config.state.required&&(this.valid.state=!1))},e.prototype.getStateOptions=function(e,t){if(void 0===e&&(e=""),t){var n=yn(gn(t).name);return e?n.filter((function(t){return new RegExp(""+e,"gi").test(t)})):n}return[]},e.prototype.updateControl=function(){this.onModelChange(this.model),this.onInput(null,"countryID"),this.onInput(null,"state")},e.prototype.writeValue=function(e){var t=this,n=!1;if(e){var o;if(e.countryName&&e.countryID)o=e.countryName;else if(e.countryID&&this.config.countryID.pickerConfig&&this.config.countryID.pickerConfig.getLabels&&R.isFunction(this.config.countryID.pickerConfig.getLabels)){var a=this.config.countryID.pickerConfig.getLabels(e.countryID);n=!0,a.then&&a.then((function(a){n=!1,o=R.interpolateWithFallback(t.config.countryID.pickerConfig.format,a),t.model=Object.assign(e,{countryName:o}),t.updateStates()}))}o?(o=o.trim(),e.state=e.state||"",this.model=Object.assign(e,{countryName:o})):this.model=e,n||R.isBlank(this.model.countryID)||this.updateStates()}this.fieldList.forEach((function(e){t.onInput(null,e)}))},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.getDefaultStateConfig=function(){var e=this;return{field:"value",format:"$label",options:function(t,n){return void 0===t&&(t=""),Promise.resolve(e.getStateOptions(t,n))},getLabels:function(e){return Promise.resolve(e)}}},e.prototype.getDefaultCountryConfig=function(){return{field:"value",format:"$label",options:function(e){return void 0===e&&(e=""),new Promise((function(t){var n=hn;return e&&(n=n.filter((function(t){return new RegExp(""+e,"gi").test(t.name)}))),t(n.map((function(e){return{value:e.id,label:e.name}})))}))},getLabels:function(e){return new Promise((function(t){var n=gn(e);t(n?{value:n.id,label:n.name}:"")}))}}},e}();bn.decorators=[{type:t.Component,args:[{selector:"novo-address",providers:[vn],template:'\n <span\n *ngIf="!config?.address1?.hidden"\n class="street-address"\n [class.invalid]="invalid.address1"\n [class.focus]="focused.address1"\n [class.disabled]="disabled.address1"\n >\n <i\n *ngIf="config.address1.required"\n class="required-indicator address1"\n [ngClass]="{ \'bhi-circle\': !valid.address1, \'bhi-check\': valid.address1 }"\n >\n </i>\n <input\n [class.maxlength-error]="invalidMaxlength.address1"\n type="text"\n id="address1"\n name="address1"\n [placeholder]="config.address1.label"\n [maxlength]="config?.address1?.maxlength"\n autocomplete="shipping street-address address-line-1"\n [(ngModel)]="model.address1"\n (ngModelChange)="updateControl()"\n (focus)="isFocused($event, \'address1\')"\n (blur)="isBlurred($event, \'address1\')"\n (input)="onInput($event, \'address1\')"\n [disabled]="disabled.address1"\n />\n </span>\n <span\n *ngIf="!config?.address2?.hidden"\n class="apt suite"\n [class.invalid]="invalid.address2"\n [class.focus]="focused.address2"\n [class.disabled]="disabled.address2"\n >\n <i\n *ngIf="config.address2.required"\n class="required-indicator address2"\n [ngClass]="{ \'bhi-circle\': !valid.address2, \'bhi-check\': valid.address2 }"\n >\n </i>\n <input\n [class.maxlength-error]="invalidMaxlength.address2"\n type="text"\n id="address2"\n name="address2"\n [placeholder]="config.address2.label"\n [maxlength]="config?.address2?.maxlength"\n autocomplete="shipping address-line-2"\n [(ngModel)]="model.address2"\n (ngModelChange)="updateControl()"\n (focus)="isFocused($event, \'address2\')"\n (blur)="isBlurred($event, \'address2\')"\n (input)="onInput($event, \'address2\')"\n [disabled]="disabled.address2"\n />\n </span>\n <span\n *ngIf="!config?.city?.hidden"\n class="city locality"\n [class.invalid]="invalid.city"\n [class.focus]="focused.city"\n [class.disabled]="disabled.city"\n >\n <i *ngIf="config.city.required" class="required-indicator" [ngClass]="{ \'bhi-circle\': !valid.city, \'bhi-check\': valid.city }"> </i>\n <input\n [class.maxlength-error]="invalidMaxlength.city"\n type="text"\n id="city"\n name="city"\n [placeholder]="config.city.label"\n autocomplete="shipping city locality"\n [maxlength]="config?.city?.maxlength"\n [(ngModel)]="model.city"\n (ngModelChange)="updateControl()"\n (focus)="isFocused($event, \'city\')"\n (blur)="isBlurred($event, \'city\')"\n (input)="onInput($event, \'city\')"\n [disabled]="disabled.city"\n />\n </span>\n <span\n *ngIf="!config?.state?.hidden"\n class="state region"\n [class.invalid]="invalid.state"\n [class.focus]="focused.state"\n [class.disabled]="disabled.state"\n [tooltip]="tooltip.state"\n >\n <i *ngIf="config.state.required" class="required-indicator" [ngClass]="{ \'bhi-circle\': !valid.state, \'bhi-check\': valid.state }"> </i>\n <novo-picker\n [config]="config?.state?.pickerConfig"\n [placeholder]="config?.state?.label"\n (changed)="onStateChange($event)"\n autocomplete="shipping region"\n [(ngModel)]="model.state"\n [disablePickerInput]="disabled.state"\n ></novo-picker>\n </span>\n <span\n *ngIf="!config?.zip?.hidden"\n class="zip postal-code"\n [class.invalid]="invalid.zip"\n [class.focus]="focused.zip"\n [class.disabled]="disabled.zip"\n >\n <i *ngIf="config.zip.required" class="required-indicator" [ngClass]="{ \'bhi-circle\': !valid.zip, \'bhi-check\': valid.zip }"> </i>\n <input\n [class.maxlength-error]="invalidMaxlength.zip"\n type="text"\n id="zip"\n name="zip"\n [placeholder]="config.zip.label"\n autocomplete="shipping postal-code"\n [maxlength]="config?.zip?.maxlength"\n [(ngModel)]="model.zip"\n (ngModelChange)="updateControl()"\n (focus)="isFocused($event, \'zip\')"\n (blur)="isBlurred($event, \'zip\')"\n (input)="onInput($event, \'zip\')"\n [disabled]="disabled.zip"\n />\n </span>\n <span\n *ngIf="!config?.countryID?.hidden"\n class="country-name"\n [class.invalid]="invalid.countryID"\n [class.focus]="focused.countryID"\n [class.disabled]="disabled.countryID"\n >\n <i\n *ngIf="config.countryID.required"\n class="required-indicator"\n [ngClass]="{ \'bhi-circle\': !valid.countryID, \'bhi-check\': valid.countryID }"\n >\n </i>\n <novo-picker\n [config]="config?.countryID?.pickerConfig"\n [placeholder]="config.countryID.label"\n (changed)="onCountryChange($event)"\n autocomplete="shipping country"\n [(ngModel)]="model.countryID"\n [disablePickerInput]="disabled.countryID"\n ></novo-picker>\n </span>\n '}]}],bn.ctorParameters=function(){return[{type:Ne}]},bn.propDecorators={config:[{type:t.Input}],readOnly:[{type:t.Input}],change:[{type:t.Output}],focus:[{type:t.Output}],blur:[{type:t.Output}],validityChange:[{type:t.Output}]};var Cn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return kn})),multi:!0},Sn={iconStyle:"box"},kn=function(){function e(e){this.ref=e,this.indeterminate=!1,this.disabled=!1,this.onSelect=new t.EventEmitter,this.boxIcon=!0,this.onModelChange=function(){},this.onModelTouched=function(){}}return e.prototype.ngOnInit=function(){this.layoutOptions=Object.assign({},Sn,this.layoutOptions),this.boxIcon="box"===this.layoutOptions.iconStyle},e.prototype.select=function(e){R.swallowEvent(e),this.disabled||(this.model=!this.model,this.onModelChange(this.model),this.onSelect.emit({originalEvent:e,value:this.model}))},e.prototype.writeValue=function(e){this.model=e,this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();kn.decorators=[{type:t.Component,args:[{selector:"novo-checkbox",providers:[Cn],template:'\n <div class="check-box-group" [class.checked]="model" [class.disabled]="disabled">\n <input [name]="name" type="checkbox" [(ngModel)]="model" [attr.id]="name" [disabled]="disabled">\n <label [attr.for]="name" (click)="select($event)" [class.disabled]="disabled">\n <i [class.bhi-checkbox-empty]="!model && !indeterminate && boxIcon"\n [class.bhi-checkbox-filled]="model && !indeterminate && boxIcon"\n [class.bhi-checkbox-indeterminate]="indeterminate && boxIcon"\n [class.bhi-circle-o]="!model && !indeterminate && !boxIcon"\n [class.bhi-check]="model && !indeterminate && !boxIcon"\n [class.bhi-circle]="indeterminate && !boxIcon"></i>\n <span *ngIf="label">{{ label }}</span>\n </label>\n </div>\n '}]}],kn.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},kn.propDecorators={name:[{type:t.Input}],label:[{type:t.Input}],indeterminate:[{type:t.Input}],disabled:[{type:t.Input}],layoutOptions:[{type:t.Input}],onSelect:[{type:t.Output}]};var In={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return En})),multi:!0},En=function(){function e(){this.onSelect=new t.EventEmitter,this.onModelChange=function(){},this.onModelTouched=function(){}}return e.prototype.ngOnInit=function(){this.setModel(),this.setupOptions()},e.prototype.select=function(e,t){R.swallowEvent(e),this.disabled||(t.checked=!t.checked,this.model=this._options.filter((function(e){return e.checked})).map((function(e){return e.value})),this.onModelChange(this.model.length>0?this.model:""),this.onSelect.emit({selected:this.model}))},e.prototype.setupOptions=function(){var e=this;this.options=this.options||[],this._options=[],this.options.length&&!this.options[0].value?this.options.forEach((function(t){var n={value:t,label:t,checked:e.model&&e.model.length&&-1!==e.model.indexOf(t.value)};e._options.push(n)})):this.options.forEach((function(t){var n=t;n.checked=e.model&&e.model.length&&-1!==e.model.indexOf(t.value),e._options.push(n)}))},e.prototype.setModel=function(){var e=this.options.filter((function(e){return e.checked})).map((function(e){return e.value}));this.writeValue(e)},e.prototype.writeValue=function(e){this.model=e||[],e&&this.setupOptions()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();En.decorators=[{type:t.Component,args:[{selector:"novo-check-list",providers:[In],template:'\n <div\n class="check-box-group"\n *ngFor="let option of _options; let i = index"\n [ngClass]="{ checked: option.checked }"\n [class.disabled]="disabled"\n [attr.data-automation-id]="option.label"\n >\n <input\n [name]="name"\n type="checkbox"\n [ngModel]="option.checked"\n [attr.id]="name + i"\n [value]="option.checked"\n (change)="select($event, option)"\n [disabled]="disabled"\n />\n <label [attr.for]="name + i" (click)="select($event, option)">\n <i [ngClass]="{ \'bhi-checkbox-empty\': !option.checked, \'bhi-checkbox-filled\': option.checked }"></i>\n <span>{{ option.label }}</span>\n </label>\n </div>\n '}]}],En.propDecorators={name:[{type:t.Input}],options:[{type:t.Input}],disabled:[{type:t.Input}],onSelect:[{type:t.Output}]};var wn=function(){function e(e){var t=this;this.name="",this.contentType="",this.lastModified=0,this.size=0,this.loaded=!1,this.reader=new FileReader,this.name=""+encodeURIComponent(e.name||""),this.contentType=e.type,this.lastModified=e.lastModified,this.size=e.size,this.file=e,this.reader.onload=function(e){t.fileContents=e.target.result.split(",")[1],t.dataURL=e.target.result,t.loaded=!0,t.readPromise&&t.readPromise(t)}}return e.prototype.read=function(){var e=this;return new Promise((function(t){e.readPromise=t,e.reader.readAsDataURL(e.file)}))},e.prototype.toJSON=function(){return{name:this.name,contentType:this.type,lastModified:this.lastModified,size:this.size,fileContents:this.fileContents}},e}(),Tn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Pn})),multi:!0},On={order:"default",download:!0,removable:!0,labelStyle:"default",draggable:!1},Pn=function(){function e(e,n,o){this.element=e,this.labels=n,this.dragula=o,this.multiple=!1,this.disabled=!1,this.value=[],this.edit=new t.EventEmitter,this.save=new t.EventEmitter,this.delete=new t.EventEmitter,this.upload=new t.EventEmitter,this.elements=[],this.files=[],this.active=!1,this.onModelChange=function(){},this.onModelTouched=function(){},this.commands={dragenter:this.dragEnterHandler.bind(this),dragleave:this.dragLeaveHandler.bind(this),dragover:this.dragOverHandler.bind(this),drop:this.dropHandler.bind(this)}}return e.prototype.ngOnInit=function(){var e=this;["dragenter","dragleave","dragover","drop"].forEach((function(t){e.element.nativeElement.addEventListener(t,e.commands[t])})),this.updateLayout(),this.initializeDragula(),this.setInitialFileList(),this.dataFeatureId=this.dataFeatureId?this.dataFeatureId:this.name},e.prototype.ngOnDestroy=function(){var e=this;["dragenter","dragleave","dragover","drop"].forEach((function(t){e.element.nativeElement.removeEventListener(t,e.commands[t])})),this.dragula.bags.length>0&&this.dragula.bags.filter((function(t){return t.name===e.fileOutputBag})).length>0&&this.dragula.destroy(this.fileOutputBag)},e.prototype.ngOnChanges=function(e){this.onModelChange(this.model)},e.prototype.updateLayout=function(){this.layoutOptions=Object.assign({},On,this.layoutOptions),this.insertTemplatesBasedOnLayout()},e.prototype.insertTemplatesBasedOnLayout=function(){var e,t=this;switch(this.layoutOptions.order){case"displayFilesBelow":e=["fileInput","fileOutput"];break;default:e=["fileOutput","fileInput"]}return e.forEach((function(e){t.container.createEmbeddedView(t[e],0)})),e},e.prototype.initializeDragula=function(){var e=this;this.fileOutputBag="file-output-"+this.dragula.bags.length,this.dragula.setOptions(this.fileOutputBag,{moves:function(t,n,o){return e.layoutOptions.draggable}})},e.prototype.setInitialFileList=function(){this.value&&(this.files=this.value)},e.prototype.dragEnterHandler=function(e){e.preventDefault(),e.dataTransfer.dropEffect="copy",this.target=e.target,this.active=!0},e.prototype.dragLeaveHandler=function(e){e.preventDefault(),this.target===e.target&&(this.active=!1)},e.prototype.dragOverHandler=function(e){e.preventDefault()},e.prototype.dropHandler=function(e){if(e.preventDefault(),this.visible=!1,"Files"===e.dataTransfer.types[0]){var t=this.layoutOptions,n=Array.from(e.dataTransfer.files);t.customActions?this.upload.emit(this.multiple?n:[n[0]]):this.process(this.multiple?n:[n[0]]),this.active=!1}},e.prototype.writeValue=function(e){this.model=e},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.check=function(e){this.process(Array.from(e.target.files))},e.prototype.validate=function(e){var t=!0;return this.layoutOptions.customValidation&&this.layoutOptions.customValidation.filter((function(e){return"upload"===e.action})).forEach((function(n){t=n.fn(e)&&t})),t},e.prototype.process=function(e){var t=this;this.validate(e)&&Promise.all(e.map((function(e){return t.readFile(e)}))).then((function(e){var n;t.multiple?(n=t.files).push.apply(n,ae(e)):t.files=e,t.model=t.files,t.onModelChange(t.model)}))},e.prototype.download=function(e){window.open(e.dataURL,"_blank")},e.prototype.remove=function(e){this.files.splice(this.files.findIndex((function(t){return t.name===e.name&&t.size===e.size})),1),this.model=this.files,this.onModelChange(this.model)},e.prototype.readFile=function(e){return new wn(e).read()},e.prototype.customEdit=function(e){this.edit.emit(e)},e.prototype.customSave=function(e){this.save.emit(e)},e.prototype.customDelete=function(e){this.delete.emit(e)},e.prototype.customCheck=function(e){this.upload.emit(e)},e.prototype.setDisabledState=function(e){this.disabled=e},e}();Pn.decorators=[{type:t.Component,args:[{selector:"novo-file-input",providers:[Tn],template:'\n <div #container></div>\n <ng-template #fileInput>\n <div class="file-input-group" [class.disabled]="disabled" [class.active]="active">\n <input\n *ngIf="!layoutOptions.customActions"\n type="file"\n [name]="name"\n [attr.id]="name"\n (change)="check($event)"\n [attr.multiple]="multiple"\n tabindex="-1"\n [attr.data-feature-id]="dataFeatureId"\n />\n <input\n *ngIf="layoutOptions.customActions"\n type="file"\n [name]="name"\n [attr.id]="name"\n (change)="customCheck($event)"\n [attr.multiple]="multiple"\n tabindex="-1"\n [attr.data-feature-id]="dataFeatureId"\n />\n <section [ngSwitch]="layoutOptions.labelStyle">\n <label *ngSwitchCase="\'no-box\'" [attr.for]="name" class="no-box">\n <div>\n <i class="bhi-dropzone"></i>{{ placeholder || labels.chooseAFile }} {{ labels.or }}\n <strong class="link">{{ labels.clickToBrowse }}</strong>\n </div>\n </label>\n <label *ngSwitchDefault [attr.for]="name" class="boxed">\n <span>{{ placeholder || labels.chooseAFile }}</span>\n <small\n >{{ labels.or }} <strong class="link">{{ labels.clickToBrowse }}</strong></small\n >\n </label>\n </section>\n </div>\n </ng-template>\n <ng-template #fileOutput>\n <div class="file-output-group" [dragula]="fileOutputBag" [dragulaModel]="files">\n <div class="file-item" *ngFor="let file of files" [class.disabled]="disabled">\n <i *ngIf="layoutOptions.draggable" class="bhi-move"></i>\n <label *ngIf="file.link"\n ><span\n ><a href="{{ file.link }}" target="_blank">{{ file.name | decodeURI }}</a></span\n ><span *ngIf="file.description">||</span><span>{{ file.description }}</span></label\n >\n <label *ngIf="!file.link">{{ file.name | decodeURI }}</label>\n <div class="actions" [attr.data-automation-id]="\'file-actions\'" *ngIf="file.loaded">\n <div *ngIf="!layoutOptions.customActions">\n <button\n *ngIf="layoutOptions.download"\n type="button"\n theme="icon"\n icon="save"\n (click)="download(file)"\n [attr.data-automation-id]="\'file-download\'"\n tabindex="-1"\n ></button>\n <button\n *ngIf="!disabled && (layoutOptions.removable || (!layoutOptions.removable && layoutOptions.removableWhenNew && !file.link))"\n type="button"\n theme="icon"\n icon="close"\n (click)="remove(file)"\n [attr.data-automation-id]="\'file-remove\'"\n tabindex="-1"\n ></button>\n </div>\n <div *ngIf="layoutOptions.customActions">\n <button\n *ngIf="layoutOptions.edit && !disabled"\n type="button"\n theme="icon"\n icon="edit"\n (click)="customEdit(file)"\n [attr.data-automation-id]="\'file-edit\'"\n tabindex="-1"\n ></button>\n <button\n *ngIf="layoutOptions.download"\n type="button"\n theme="icon"\n icon="save"\n (click)="customSave(file)"\n [attr.data-automation-id]="\'file-download\'"\n tabindex="-1"\n ></button>\n <button\n *ngIf="!disabled"\n type="button"\n theme="icon"\n icon="close"\n (click)="customDelete(file)"\n [attr.data-automation-id]="\'file-remove\'"\n tabindex="-1"\n ></button>\n </div>\n </div>\n <novo-loading *ngIf="!file.loaded"></novo-loading>\n </div>\n </div>\n </ng-template>\n '}]}],Pn.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:dn}]},Pn.propDecorators={fileInput:[{type:t.ViewChild,args:["fileInput",{static:!0}]}],fileOutput:[{type:t.ViewChild,args:["fileOutput",{static:!0}]}],container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef,static:!0}]}],name:[{type:t.Input}],multiple:[{type:t.Input}],disabled:[{type:t.Input}],placeholder:[{type:t.Input}],layoutOptions:[{type:t.Input}],value:[{type:t.Input}],dataFeatureId:[{type:t.Input}],edit:[{type:t.Output}],save:[{type:t.Output}],delete:[{type:t.Output}],upload:[{type:t.Output}]};var An=function(){};An.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,re,_,ln,Nt,ze,mn,U],declarations:[bn,kn,En,Pn],exports:[bn,kn,En,Pn]}]}];var Dn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return xn})),multi:!0},xn=function(){function e(e,n){this.element=e,this.ref=n,this.name=(new Date).getTime().toString(),this.disabled=!1,this.onChange=new t.EventEmitter,this.onSelectedOptionClick=new t.EventEmitter,this.onDisabledOptionClick=new t.EventEmitter,this._options=[],this.activeTile=null,this.focused=!1,this.onModelChange=function(){},this.onModelTouched=function(){}}return e.prototype.setFocus=function(e){this.focused=e},e.prototype.ngAfterContentInit=function(){this.name=this.name||"",this.setupOptions()},e.prototype.ngOnChanges=function(e){e.options&&e.options.currentValue&&!e.options.firstChange&&(this.name=this.name||"",this._options=[],this.setupOptions())},e.prototype.setupOptions=function(){var e=this;this.options&&this.options.length&&(void 0===this.options[0].value||null===this.options[0].value)?this._options=this.options.map((function(t){var n={value:t,label:t,checked:e.model===t};return n.checked&&e.setTile(n),n})):this._options=this.options.map((function(t){return t.checked=e.model===t.value||e.model&&e.model.id===t.value,t.checked&&e.setTile(t),t})),this.ref.markForCheck()},e.prototype.select=function(e,t){var n,o;if(e&&(e.stopPropagation(),e.preventDefault()),t.disabled)this.onDisabledOptionClick.emit(t);else{if(t.checked)return void this.onSelectedOptionClick.emit(t);try{for(var a=ne(this._options),i=a.next();!i.done;i=a.next()){i.value.checked=!1}}catch(e){n={error:e}}finally{try{i&&!i.done&&(o=a.return)&&o.call(a)}finally{if(n)throw n.error}}t.checked=!t.checked,this.onChange.emit(t.value),this.onModelChange(t.value),this.setTile(t),this.model=t.value}this.ref.markForCheck()},e.prototype.setTile=function(e){e&&(this.activeTile=e.value,this.ref.markForCheck())},e.prototype.writeValue=function(e){this.model=e,R.isBlank(e)||this.setupOptions()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();xn.decorators=[{type:t.Component,args:[{selector:"novo-tiles",providers:[Dn],template:'\n <div class="tile-container" [class.active]="focused" [class.disabled]="disabled">\n <div\n class="tile"\n *ngFor="let option of _options; let i = index"\n [ngClass]="{ active: option.checked, disabled: option.disabled }"\n (click)="select($event, option)"\n [attr.data-automation-id]="option.label || option"\n >\n <input\n class="tiles-input"\n [name]="name"\n type="radio"\n [value]="option.checked || option.value || option"\n [attr.id]="name + i"\n (change)="select($event, option)"\n (focus)="setFocus(true)"\n (blur)="setFocus(false)"\n [disabled]="disabled"\n />\n <label [attr.for]="name + i" [attr.data-automation-id]="option.label || option">\n {{ option.label || option }}\n </label>\n </div>\n </div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],xn.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},xn.propDecorators={name:[{type:t.Input}],options:[{type:t.Input}],required:[{type:t.Input}],disabled:[{type:t.Input,args:["controlDisabled"]}],onChange:[{type:t.Output}],onSelectedOptionClick:[{type:t.Output}],onDisabledOptionClick:[{type:t.Output}]};var Rn=function(){};Rn.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.ReactiveFormsModule],declarations:[xn],exports:[xn]}]}];var Mn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Fn})),multi:!0},Fn=function(){function e(e,n,o,a){this.element=e,this.labels=n,this._changeDetectorRef=o,this._zone=a,this.icon="search",this.placeholder="Search...",this.alwaysOpen=!1,this.theme="positive",this.closeOnSelect=!0,this.searchChanged=new t.EventEmitter,this.focused=!1,this._onChange=function(){},this._onTouched=function(){}}return e.prototype.showSearch=function(e,t){var n=this;void 0===t&&(t=!1),this.panelOpen||setTimeout((function(){var e=n.input.nativeElement;e&&e.focus()}),10)},e.prototype.onFocus=function(){var e=this;this._zone.run((function(){e.focused=!0,e.openPanel()}))},e.prototype.onBlur=function(){this.focused=!1},e.prototype.openPanel=function(){this.overlay.openPanel()},e.prototype.closePanel=function(){this.overlay.closePanel()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"active",{get:function(){return this.panelOpen||this.alwaysOpen},enumerable:!1,configurable:!0}),e.prototype._handleKeydown=function(e){e.keyCode!==C.ESCAPE&&e.keyCode!==C.ENTER&&e.keyCode!==C.TAB||!this.panelOpen||(this.closePanel(),e.stopPropagation())},e.prototype._handleInput=function(e){var t=this;document.activeElement===e.target&&(this._onChange(e.target.value),this.debounceSearchChange&&clearTimeout(this.debounceSearchChange),this.debounceSearchChange=setTimeout((function(){t.searchChanged.emit(e.target.value)}),400))},e.prototype.writeValue=function(e){this._setValue(e)},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype._setValue=function(e){this.value=e;var t=e;e&&this.displayField&&(t=e.hasOwnProperty(this.displayField)?e[this.displayField]:e),this.displayValue=t||"",this.input.nativeElement.value=this.displayValue,this._changeDetectorRef.markForCheck()},e.prototype.setValueAndClose=function(e){e&&e.value&&(this._setValue(e.value),this._onChange(e.value)),this.closePanel()},e.prototype.clearValue=function(e){this.writeValue(null),this._onChange(null)},e}();Fn.decorators=[{type:t.Component,args:[{selector:"novo-search",providers:[Mn],changeDetection:t.ChangeDetectionStrategy.OnPush,template:'\n \x3c!-- SEARCH ICON --\x3e\n <button\n theme="fab"\n [color]="theme"\n [icon]="icon"\n (click)="showSearch()"\n [tooltip]="hint"\n tooltipPosition="bottom"\n data-automation-id="novo-search-fab"\n ></button>\n \x3c!-- SEARCH INPUT --\x3e\n <input\n type="text"\n [attr.name]="name"\n [attr.value]="displayValue"\n [attr.placeholder]="placeholder"\n (focus)="onFocus()"\n (blur)="onBlur()"\n (keydown)="_handleKeydown($event)"\n (input)="_handleInput($event)"\n #input\n data-automation-id="novo-search-input"\n />\n \x3c!-- SEARCH OVERLAY --\x3e\n <novo-overlay-template\n [parent]="element"\n [closeOnSelect]="closeOnSelect"\n position="above-below"\n (select)="closePanel()"\n (closing)="onBlur()"\n >\n <ng-content></ng-content>\n </novo-overlay-template>\n '}]}],Fn.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef},{type:t.NgZone}]},Fn.propDecorators={name:[{type:t.Input}],icon:[{type:t.Input}],placeholder:[{type:t.Input}],alwaysOpen:[{type:t.Input}],theme:[{type:t.Input}],closeOnSelect:[{type:t.Input}],displayField:[{type:t.Input}],displayValue:[{type:t.Input}],hint:[{type:t.Input}],searchChanged:[{type:t.Output}],focused:[{type:t.HostBinding,args:["class.focused"]}],overlay:[{type:t.ViewChild,args:[yt]}],input:[{type:t.ViewChild,args:["input",{static:!0}]}],active:[{type:t.HostBinding,args:["class.active"]}]};var Ln=function(){};Ln.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_,Nt,U,vt],declarations:[Fn],exports:[Fn]}]}];var Nn={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Bn})),multi:!0},Bn=function(){function e(e,n){this.labels=e,this.element=n,this.weekStart=0,this.onSelect=new t.EventEmitter(!1),this.weekdays=[],this.months=[],this.years=[],this.view="days",this.rangeSelectMode="startDate",this._onChange=function(){},this._onTouched=function(){}}return e.prototype.ngOnInit=function(){for(var e=new Date,t=this.minYear?Number(this.minYear):e.getFullYear()-100,n=this.maxYear?Number(this.maxYear):e.getFullYear()+10,o=t;o<=n;o++)this.years.push(o);this.weekdays=this.setupWeekdays(),this.months=this.labels.getMonths(),this.selectedLabel=this.labels.startDate,this.selected2Label=this.labels.endDate,this.updateView(this.model,!1,!0)},e.prototype.ngOnChanges=function(e){var t=e.weekRangeSelect;t&&t.currentValue!==t.previousValue&&!t.firstChange&&this.clearRange();var n=e.weekStart;n&&n.currentValue!==n.previousValue&&!n.firstChange&&(this.weekdays=this.setupWeekdays(),this.updateView(this.model,!1,!1))},e.prototype.setupWeekdays=function(){var e=this.labels.getWeekdays();if(!R.isBlank(this.weekStart)&&this.weekStart>0&&this.weekStart<=6){var t=e.splice(this.weekStart);e=ae(t,e)}return e},e.prototype.isSelectingRange=function(e,t,n,o,a,i,r){if(e&&!r){var s="endDate"===i&&n&&o&&p.isAfter(t,o)&&p.isBefore(t,a),l="startDate"===i&&n&&o&&p.isBefore(t,n)&&p.isAfter(t,a),c=!n&&o&&p.isBefore(t,o)&&p.isAfter(t,a);return n&&!o&&p.isAfter(t,n)&&p.isBefore(t,a)||c||l||s}return!1},e.prototype.isEndFill=function(e,t,n,o){return!!(e&&o&&n)&&(!p.isSameDay(n,o)&&p.isSameDay(t,o)&&p.isAfter(t,n))},e.prototype.isStartFill=function(e,t,n,o){return!!(e&&o&&n)&&(!p.isSameDay(n,o)&&p.isSameDay(t,n)&&p.isBefore(t,o))},e.prototype.isFiller=function(e,t,n,o){return!!(e&&o&&n)&&(p.isAfter(t,n)&&p.isBefore(t,o)||p.isSameDay(t,n)||p.isSameDay(t,o))},e.prototype.isSelected=function(e,t,n,o){return e?t&&(n&&t.getDate()===n.getDate()&&t.getMonth()===n.getMonth()&&t.getFullYear()===n.getFullYear()||o&&t.getDate()===o.getDate()&&t.getMonth()===o.getMonth()&&t.getFullYear()===o.getFullYear()):t.getDate()===n.getDate()&&t.getMonth()===n.getMonth()&&t.getFullYear()===n.getFullYear()},e.prototype.isDisabled=function(e,t,n){return p.isBefore(e,t)||p.isAfter(e,n)},e.prototype.updateView=function(e,t,n){if(e&&null===e.startDate)this.clearRange();else{e||this.clearRange();var o=e?new Date(e):new Date;o=this.removeTime(o),this.month=new Date(o),this.monthLabel=this.labels.formatDateWithFormat(this.month,{month:"short"});var a=new Date(o.getTime());a.setDate(1),this.removeTime(a.setDate(1)),this.buildMonth(a,this.month),n&&this.select(null,{date:o},t)}},e.prototype.setToday=function(){var e=new Date;this.updateView(e,!0,!0),this.open(null,"days")},e.prototype.clearRange=function(){this.selected=null,this.selectedLabel=this.labels.startDate,this.selected2=null,this.selected2Label=this.labels.endDate},e.prototype.setMonth=function(e){var t=this.month?this.month:new Date,n=p.setMonth(t,e);this.updateView(n,!0,!1),this.open(null,"days")},e.prototype.setYear=function(e){var t=this.month?this.month:new Date,n=p.setYear(t,e);this.updateView(n,!0,!1),this.open(null,"days")},e.prototype.select=function(e,t,n){R.swallowEvent(e),this.range?this.weekRangeSelect?(this.selected=p.startOfWeek(t.date,{weekStartsOn:this.weekStart}),this.selected2=p.endOfWeek(t.date,{weekStartsOn:this.weekStart}),this.selectedLabel=this.labels.formatDateWithFormat(this.selected,{month:"short",day:"2-digit",year:"numeric"}),this.selected2Label=this.labels.formatDateWithFormat(this.selected2,{month:"short",day:"2-digit",year:"numeric"}),!n&&this.weekRangeSelect&&this.fireRangeSelect()):"startDate"===this.rangeSelectMode?(this.selected=p.startOfDay(t.date),this.selectedLabel=this.labels.formatDateWithFormat(this.selected,{month:"short",day:"2-digit",year:"numeric"}),this.selected2&&p.isAfter(t.date,this.selected2)&&(this.selected2=null,this.selected2Label=this.labels.endDate),e&&(this.rangeSelectMode="endDate")):"endDate"===this.rangeSelectMode&&(this.selected2=p.endOfDay(t.date),this.selected2Label=this.labels.formatDateWithFormat(this.selected2,{month:"short",day:"2-digit",year:"numeric"}),this.selected&&p.isBefore(t.date,this.selected)&&(this.selected=null,this.selectedLabel=this.labels.startDate),e&&(this.rangeSelectMode="startDate")):(this.selected=t.date,this.selectedLabel=this.labels.formatDateWithFormat(this.selected,{month:"short",day:"2-digit",year:"numeric"}),this.updateHeading()),n&&this.selected&&(this.range&&this.selected&&this.selected2&&(this.fireRangeSelect(),this._onChange({startDate:this.selected,endDate:this.selected2?this.selected2:null}),this.model={startDate:this.selected,endDate:this.selected2?this.selected2:null}),this.range||(this.onSelect.next({month:this.labels.formatDateWithFormat(this.selected,{month:"long"}),year:this.selected.getFullYear(),day:this.labels.formatDateWithFormat(this.selected,{weekday:"long"}),date:this.selected}),this._onChange(this.selected),this.model=this.selected))},e.prototype.fireRangeSelect=function(){p.isBefore(this.selected,this.selected2)&&this.onSelect.next({startDate:{month:this.labels.formatDateWithFormat(this.selected,{month:"long"}),year:this.selected.getFullYear(),day:this.labels.formatDateWithFormat(this.selected,{weekday:"long"}),date:this.selected},endDate:{month:this.labels.formatDateWithFormat(this.selected2,{month:"long"}),year:this.selected2.getFullYear(),day:this.labels.formatDateWithFormat(this.selected2,{weekday:"long"}),date:this.selected2}})},e.prototype.open=function(e,t){var n=this;R.swallowEvent(e),t===this.view?this.view="days":this.view=t,"years"!==this.view&&"months"!==this.view||setTimeout((function(){var e=n.element.nativeElement.querySelector(".calendar-content."+n.view),t=n.element.nativeElement.querySelector(".calendar-content."+n.view+" ."+("years"===n.view?"year":"month")+".selected");e&&t&&(e.scrollTop=t.offsetTop-100)})),this.updateHeading()},e.prototype.prevMonth=function(e){R.swallowEvent(e);var t=p.subMonths(this.month,1);this.updateView(t,!1,!1)},e.prototype.nextMonth=function(e){R.swallowEvent(e);var t=p.addMonths(this.month,1);this.updateView(t,!1,!1)},e.prototype.updateHeading=function(){this.selected&&(this.heading={month:this.labels.formatDateWithFormat(this.selected,{month:"long"}),year:this.selected.getFullYear(),day:this.labels.formatDateWithFormat(this.selected,{weekday:"long"}),date:this.selected.getDate()})},e.prototype.removeTime=function(e){var t=new Date(e);return t.setHours(12),t.setSeconds(0),t.setMilliseconds(0),t},e.prototype.buildMonth=function(e,t){this.weeks=[];for(var n=!1,o=p.startOfWeek(e,{weekStartsOn:this.weekStart}),a=o.getMonth(),i=0;!n;)this.weeks.push({days:this.buildWeek(new Date(o.getTime()),t)}),o=p.addDays(o,7),n=i++>2&&a!==o.getMonth(),a=o.getMonth()},e.prototype.buildWeek=function(e,t){for(var n=[],o=0;o<7;o++)n.push({name:this.weekdays[o],number:e.getDate(),isToday:p.isToday(e),date:e}),e=p.addDays(e,1);return n},e.prototype.toggleRangeSelect=function(e){this.rangeSelectMode=e},e.prototype.rangeHover=function(e,t){this.hoverDay=t.date},e.prototype.writeValue=function(e){this.model=e,R.isDate(e)&&this.updateView(e,!1,!0)},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e}();Bn.decorators=[{type:t.Component,args:[{selector:"novo-date-picker",providers:[Nn],animations:[d.trigger("startDateTextState",[d.state("startDate",d.style({opacity:"1.0"})),d.state("endDate",d.style({opacity:"0.6"})),d.transition("startDate <=> endDate",d.animate("200ms ease-in"))]),d.trigger("endDateTextState",[d.state("startDate",d.style({opacity:"0.6"})),d.state("endDate",d.style({opacity:"1.0"})),d.transition("startDate <=> endDate",d.animate("200ms ease-in"))]),d.trigger("indicatorState",[d.state("startDate",d.style({transform:"translateX(0%)"})),d.state("endDate",d.style({transform:"translateX(100%)"})),d.transition("startDate <=> endDate",d.animate("200ms ease-in"))])],template:'\n <div class="calendar">\n <div class="calendar-top" *ngIf="!inline && !range">\n <h4 class="day" [attr.data-automation-id]="heading?.day">{{heading?.day}}</h4>\n <h2 class="month" [attr.data-automation-id]="heading?.month">{{heading?.month}}</h2>\n <h1 class="date" [attr.data-automation-id]="heading?.date">{{heading?.date}}</h1>\n <h3 class="year" [attr.data-automation-id]="heading?.year">{{heading?.year}}</h3>\n </div>\n <div class="date-range-tabs" *ngIf="range" [class.week-select-mode]="weekRangeSelect">\n <span class="range-tab" (click)="toggleRangeSelect(\'startDate\')" [@startDateTextState]="rangeSelectMode" data-automation-id="calendar-start-date">{{selectedLabel}}</span>\n <span class="range-tab" (click)="toggleRangeSelect(\'endDate\')" [@endDateTextState]="rangeSelectMode" data-automation-id="calendar-end-date">{{selected2Label}}</span>\n <i class="indicator" [@indicatorState]="rangeSelectMode"></i>\n </div>\n <div class="calendar-header">\n <span class="previous" (click)="prevMonth($event)" data-automation-id="calendar-previous"></span>\n <span class="heading">\n <span class="month" (click)="open($event, \'months\')" data-automation-id="header-month">{{monthLabel}}</span>\n <span class="year" (click)="open($event, \'years\')" data-automation-id="header-year">{{month?.getFullYear()}}</span>\n </span>\n <span class="next" (click)="nextMonth($event)" data-automation-id="calendar-next"></span>\n </div>\n <table class="calendar-content days" cellspacing="0" cellpadding="0" [hidden]="!(view==\'days\')">\n <thead>\n <tr>\n <th *ngFor="let day of weekdays" title="{{day}}" class="weekday" [attr.data-automation-id]="day.substr(0, 2)">{{day.substr(0, 2)}}</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor="let week of weeks">\n <td *ngFor="let day of week.days" [ngClass]="{\n today: day.isToday,\n \'notinmonth\': day.date.getMonth() !== this.month.getMonth(),\n selected: isSelected(range, day.date, selected, selected2),\n filler: isFiller(range, day.date, selected, selected2),\n startfill: isStartFill(range, day.date, selected, selected2),\n endfill: isEndFill(range, day.date, selected, selected2),\n \'selecting-range\': isSelectingRange(range, day.date, selected, selected2, hoverDay, rangeSelectMode, weekRangeSelect)\n }" (mouseover)="rangeHover($event, day)" [attr.data-automation-id]="day.number">\n <button [title]="isDisabled(day.date, start, end) ? disabledDateMessage : \'\'" class="day" [attr.data-automation-id]="day.number" [disabled]="isDisabled(day.date, start, end)" (click)="select($event, day, true)">{{day.number}}</button>\n </td>\n </tr>\n </tbody>\n </table>\n <section class="calendar-content months" [hidden]="view !== \'months\'">\n <div *ngFor="let month of months;let i = index" (click)="setMonth(i)">\n <div class="month" [ngClass]="{selected: i === selected?.getMonth()}" [attr.data-automation-id]="month">{{month}}</div>\n </div>\n </section>\n <section class="calendar-content years" [hidden]="view !== \'years\'">\n <div *ngFor="let year of years" (click)="setYear(year)">\n <div class="year" [ngClass]="{selected: year == selected?.getFullYear()}" [attr.data-automation-id]="year">{{year}}</div>\n </div>\n </section>\n <div class="calendar-footer">\n <span (click)="setToday()" class="today" data-automation-id="calendar-today">{{ labels.today }}</span>\n </div>\n </div>\n '}]}],Bn.ctorParameters=function(){return[{type:Ne},{type:t.ElementRef}]},Bn.propDecorators={minYear:[{type:t.Input}],maxYear:[{type:t.Input}],start:[{type:t.Input}],end:[{type:t.Input}],inline:[{type:t.Input}],range:[{type:t.Input}],weekRangeSelect:[{type:t.Input}],weekStart:[{type:t.Input}],disabledDateMessage:[{type:t.Input}],onSelect:[{type:t.Output}]};var Hn=function(){function e(e){this.labels=e}return e.prototype.getTimeMask=function(e){var t,n,o=[/\d/,/\d/,/:/,/\d/,/\d/],a=[],i=this.labels.timeFormatPlaceholderAM.toLowerCase();if(e)return o;if((a=i.split("hh:mm"))&&a.length){o=[];try{for(var r=ne(a),s=r.next();!s.done;s=r.next()){var l=s.value;if(""===l)o=o.concat([/\d/,/\d|:/,/:|\d/,/\d|\w|\s/,/\d|\s|\w/]);else if(l.length)for(var c=0;c<l.length;c++)o.push(/\s|\w|\d|\./)}}catch(e){t={error:e}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(t)throw t.error}}}return o},e.prototype.getDateMask=function(){return[/\d/,/\d|\/|\.|\-/,/\/|\.|\-|\d/,/\d|\/|\.|\-/,/\d|\/|\.|\-/,/\d|\/|\.|\-/,/\d|\/|\.|\-/,/\d|\/|\.|\-/,/\d/,/\d/]},e.prototype.getDateTimeMask=function(e){return void 0===e&&(e=!1),ae(this.getDateMask(),[/\,?/,/\s/],this.getTimeMask(e))},e.prototype.getTimePlaceHolder=function(e){return e?this.labels.timeFormatPlaceholder24Hour:this.labels.timeFormatPlaceholderAM},e.prototype.parseDateString=function(e){var t,n,o,a,i,r=this.labels.dateFormatString(),s=new Date,l=!0;if(r=R.isEmpty(r)?"mm/dd/yyyy":r.toLowerCase(),t=/(\w+)[\/|\.|\-](\w+)[\/|\.|\-](\w+)/gi.exec(r),n=/(\d+)[\/|\.|\-](\d+)[\/|\.|\-](\d+)/gi.exec(e),t&&4===t.length&&n&&4===n.length){for(var c=1;c<4;c++)t[c].includes("m")?a=parseInt(n[c],10)-1:t[c].includes("d")?i=parseInt(n[c],10):o=parseInt(n[c],10);a>=0&&a<=11&&o>1900&&i>0&&i<=31&&(s=new Date(o,a,i),l=!1)}else if(t&&4===t.length&&e.length>=1){var d=/\d{1,4}(\/|\.|\-)(\d{1,2})/.exec(e),p=/^(\d{1,4})$/.exec(e),u=/\w+(\/|\.|\-)\w+[\/|\.|\-]\w+/gi.exec(r),m=e[e.length-1].match(/\/|\.|\-/);(d&&3===d.length&&this.isValidDatePart(d[2],t[2])&&!m||p&&2===p.length&&this.isValidDatePart(p[1],t[1])&&!m)&&(e=""+e+u[1])}return[s,e,l]},e.prototype.parseTimeString=function(e,t){var n,o,a,i=new Date,r=this.labels.timeFormatAM,s=this.labels.timeFormatPM;if(!e||!e.includes(":"))return[i,e];if(!t&&r&&s){var l=[],c=!1;if(r=this.labels.timeFormatAM.toLowerCase(),s=this.labels.timeFormatPM.toLowerCase(),(e=e.toLowerCase()).includes(r)?l=e.split(r):e.includes(s)&&(l=e.split(s),c=!0),l&&l.length)try{for(var d=ne(l),p=d.next();!p.done;p=d.next()){var u=p.value;u&&u.trim().includes(":")&&(a=u.trim().split(":"))}}catch(e){n={error:e}}finally{try{p&&!p.done&&(o=d.return)&&o.call(d)}finally{if(n)throw n.error}}if(a&&a.length&&2===a.length){var m=parseInt(a[0],10);12===m&&c?m=12:c?m+=12:12===m&&(m=0),i.setHours(m),i.setMinutes(parseInt(a[1],10)),i.setSeconds(0)}}else(a=/(\d{1,2}):(\d{2})/.exec(e))&&a.length&&3===a.length&&(i.setHours(parseInt(a[1],10)),i.setMinutes(parseInt(a[2],10)),i.setSeconds(0));return[i,e]},e.prototype.parseString=function(e,t,n){switch(n){case"datetime":var o=e.replace(/-/g,"/").split(" "),a=oe(this.parseDateString(o[0]),2),i=a[0],r=a[1];if(o.length>1){var s=oe(this.parseTimeString(o[1],t),2),l=s[0],c=s[1];return[new Date(i.setHours(l.getHours(),l.getMinutes())),r+" "+c]}return[i,r];case"date":return this.parseDateString(e);case"time":return this.parseTimeString(e,t);default:return}},e.prototype.isValidDatePart=function(e,t){var n=parseInt(e,10);return!(!t.includes("m")||!(n>=2||2===e.length))||(!(!t.includes("d")||!(n>=4||2===e.length))||!!(t.includes("y")&&n>=1e3))},e}();Hn.decorators=[{type:t.Injectable}],Hn.ctorParameters=function(){return[{type:Ne}]};var _n={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Gn})),multi:!0},Gn=function(){function e(e,n,o,a){this.element=e,this.labels=n,this._changeDetectorRef=o,this.dateFormatService=a,this.formattedValue="",this.invalidDateErrorMessage="",this._onChange=function(){},this._onTouched=function(){},this.textMaskEnabled=!0,this.allowInvalidDate=!1,this.disabled=!1,this.weekStart=0,this.blurEvent=new t.EventEmitter,this.focusEvent=new t.EventEmitter,this.changeEvent=new t.EventEmitter,this.placeholder=this.labels.dateFormatString().toUpperCase()||this.labels.dateFormatPlaceholder}return e.prototype.ngOnInit=function(){this.userDefinedFormat=!!this.format&&!this.format.match(/^(DD\/MM\/YYYY|MM\/DD\/YYYY)$/g),this.userDefinedFormat||!this.textMaskEnabled||this.allowInvalidDate?this.maskOptions={mask:!1}:this.maskOptions=this.maskOptions||{mask:this.dateFormatService.getDateMask(),pipe:x.default(this.format||this.labels.dateFormatString().toLowerCase()),keepCharPositions:!1,guide:!0},this.setupInvalidDateErrorMessage()},e.prototype.openPanel=function(){this.disabled||this.overlay.openPanel()},e.prototype.closePanel=function(){this.overlay.closePanel()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),e.prototype._handleKeydown=function(e){e.keyCode!==C.ESCAPE&&e.keyCode!==C.ENTER&&e.keyCode!==C.TAB||!this.panelOpen||(this._handleEvent(e,!0),this.closePanel(),e.stopPropagation())},e.prototype._handleInput=function(e){document.activeElement===e.target&&this._handleEvent(e,!1)},e.prototype._handleBlur=function(e){this.handleInvalidDate(),this.blurEvent.emit(e)},e.prototype._handleFocus=function(e){this.showInvalidDateError=!1,this.openPanel(),this.focusEvent.emit(e)},e.prototype._handleEvent=function(e,t){var n=e.target.value;""===n?(this.clearValue(),this.closePanel()):(this.formatDate(n,t),this.openPanel())},e.prototype.formatDate=function(e,t){try{var n=oe(this.dateFormatService.parseString(e,!1,"date"),3),o=n[0],a=(n[1],n[2]);if(this.isInvalidDate=a,isNaN(o.getUTCDate()))this.dispatchOnChange(null,t);else{var i=new Date(o);this.dispatchOnChange(i,t)}}catch(e){}},e.prototype.writeValue=function(e){var t=this;Promise.resolve(null).then((function(){return t._setTriggerValue(e)}))},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e.prototype.handleInvalidDate=function(){this.isInvalidDate&&this.value&&(this.showInvalidDateError=!0,this.clearValue(),this.closePanel())},e.prototype.setupInvalidDateErrorMessage=function(){var e=this.labels.dateFormatString();e=R.isEmpty(e)?"mm/dd/yyyy":e.toLowerCase(),this.invalidDateErrorMessage="Invalid date field entered. Date format of "+e+" is required."},e.prototype.dispatchOnChange=function(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1),e!==this.value&&(this._onChange(e),this.changeEvent.emit(e),t?!n&&this.writeValue(e):!n&&this._setCalendarValue(e))},e.prototype._setTriggerValue=function(e){this._setCalendarValue(e),this._setFormValue(e),this._changeDetectorRef.markForCheck()},e.prototype._setCalendarValue=function(e){e instanceof Date&&this.value instanceof Date&&(e=new Date(e).setHours(0,0,0,0)),this.value=e},e.prototype._setFormValue=function(e){if(this.value){var t=this.formatDateValue(this.value);this.formattedValue=t}else this.formattedValue=""},e.prototype.setValueAndClose=function(e){e&&e.date&&this.dispatchOnChange(e.date,!0),this.closePanel()},e.prototype.clearValue=function(){this.formattedValue="",this.dispatchOnChange(null)},e.prototype.formatDateValue=function(e){var t=e;try{return e?this.userDefinedFormat&&p.isValid(e)?p.format(e,this.format):(e instanceof Date||(e=new Date(e)),isNaN(e.valueOf())&&this.allowInvalidDate?t:this.labels.formatDateWithFormat(e,{month:"2-digit",day:"2-digit",year:"numeric"})):""}catch(e){return""}},Object.defineProperty(e.prototype,"hasValue",{get:function(){return!R.isEmpty(this.value)},enumerable:!1,configurable:!0}),e}();Gn.decorators=[{type:t.Component,args:[{selector:"novo-date-picker-input",providers:[_n],template:'\n <input\n type="text"\n [name]="name"\n [(ngModel)]="formattedValue"\n [textMask]="maskOptions"\n [placeholder]="placeholder"\n (focus)="_handleFocus($event)"\n (keydown)="_handleKeydown($event)"\n (input)="_handleInput($event)"\n (blur)="_handleBlur($event)"\n #input\n data-automation-id="date-input"\n [disabled]="disabled"\n />\n <span class="error-text" *ngIf="showInvalidDateError">{{invalidDateErrorMessage}}</span>\n <i *ngIf="!hasValue" (click)="openPanel()" class="bhi-calendar"></i>\n <i *ngIf="hasValue" (click)="clearValue()" class="bhi-times"></i>\n <novo-overlay-template [parent]="element" position="above-below">\n <novo-date-picker\n [start]="start"\n [end]="end"\n inline="true"\n (onSelect)="setValueAndClose($event)"\n [disabledDateMessage]="disabledDateMessage"\n [ngModel]="value"\n [weekStart]="weekStart"\n ></novo-date-picker>\n </novo-overlay-template>\n '}]}],Gn.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef},{type:Hn}]},Gn.propDecorators={name:[{type:t.Input}],start:[{type:t.Input}],end:[{type:t.Input}],placeholder:[{type:t.Input}],maskOptions:[{type:t.Input}],format:[{type:t.Input}],textMaskEnabled:[{type:t.Input}],allowInvalidDate:[{type:t.Input}],disabledDateMessage:[{type:t.Input}],disabled:[{type:t.HostBinding,args:["class.disabled"]},{type:t.Input}],weekStart:[{type:t.Input}],blurEvent:[{type:t.Output}],focusEvent:[{type:t.Output}],changeEvent:[{type:t.Output}],overlay:[{type:t.ViewChild,args:[yt]}]};var Vn=function(){};Vn.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,vt,S.TextMaskModule],declarations:[Bn,Gn],exports:[Bn,Gn]}]}];var Un=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.elementRef=n,a.renderer=o,a.role="gridcell",a.subscriptions=[],o.setAttribute(n.nativeElement,"data-automation-id","novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-cell"),a}return te(t,e),t.prototype.ngOnInit=function(){var e=this;this.column.cellClass&&this.renderer.addClass(this.elementRef.nativeElement,this.column.cellClass(this.row)),this.column.rightAlignCellContent&&this.renderer.addClass(this.elementRef.nativeElement,"novo-data-table-cell-align-right"),this.calculateWidths(),this.subscriptions.push(this.resized.subscribe((function(t){t===e.column&&e.calculateWidths()})))},t.prototype.ngOnDestroy=function(){this.subscriptions.forEach((function(e){e.unsubscribe()}))},t.prototype.calculateWidths=function(){this.column.width&&(this.renderer.setStyle(this.elementRef.nativeElement,"min-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"max-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"width",this.column.width+"px"))},t}(y.CdkCell);Un.decorators=[{type:t.Component,args:[{selector:"novo-data-table-cell",template:'\n <ng-container *ngTemplateOutlet="template; context: {$implicit: row, col: column}"></ng-container>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Un.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},Un.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],template:[{type:t.Input}],column:[{type:t.Input}],resized:[{type:t.Input}]};var Kn=function(e){function t(t,n,o,a,i){var r=e.call(this,t,n)||this;return r.columnDef=t,r.dataTable=a,r.ref=i,r.role="gridcell",r.maxSelected=void 0,r.checked=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-checkbox-cell"),r.selectionSubscription=r.dataTable.state.selectionSource.subscribe((function(){r.checked=r.dataTable.isSelected(r.row),r.ref.markForCheck()})),r.resetSubscription=r.dataTable.state.resetSource.subscribe((function(){r.checked=!1,r.ref.markForCheck()})),r}return te(t,e),Object.defineProperty(t.prototype,"isAtLimit",{get:function(){return this.maxSelected&&this.dataTable.state.selectedRows.size>=this.maxSelected&&!this.checked},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){this.checked=this.dataTable.isSelected(this.row)},t.prototype.onClick=function(){this.isAtLimit||this.dataTable.selectRow(this.row)},t.prototype.getTooltip=function(){return this.isAtLimit?"More than "+this.maxSelected+" items are not able to be selected at one time":""},t.prototype.ngOnDestroy=function(){this.selectionSubscription&&this.selectionSubscription.unsubscribe(),this.resetSubscription&&this.resetSubscription.unsubscribe()},t}(y.CdkCell);Kn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-checkbox-cell",template:'\n <div class="data-table-checkbox" (click)="onClick()" [tooltip]="getTooltip()" tooltipPosition="right">\n <input type="checkbox" [checked]="checked">\n <label>\n <i [class.bhi-checkbox-disabled]="isAtLimit"\n [class.bhi-checkbox-empty]="!checked"\n [class.bhi-checkbox-filled]="checked"></i>\n </label>\n </div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Kn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:on},{type:t.ChangeDetectorRef}]},Kn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],maxSelected:[{type:t.Input}]};var zn=function(e){function t(t,n,o,a,i){var r=e.call(this,t,n)||this;return r.columnDef=t,r.dataTable=a,r.ref=i,r.role="gridcell",r.expanded=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-expand-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-expand-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-expand-cell"),r.expandSubscription=r.dataTable.state.expandSource.subscribe((function(){r.expanded=r.dataTable.isExpanded(r.row),r.ref.markForCheck()})),r}return te(t,e),t.prototype.ngOnInit=function(){this.expanded=this.dataTable.isExpanded(this.row)},t.prototype.onClick=function(){this.dataTable.expandRow(this.row)},t.prototype.ngOnDestroy=function(){this.expandSubscription&&this.expandSubscription.unsubscribe()},t}(y.CdkCell);zn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-expand-cell",template:'\n <i class="bhi-next data-table-icon" novo-data-table-expander="true" [class.expanded]="expanded"></i>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],zn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:on},{type:t.ChangeDetectorRef}]},zn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}]};var jn=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t.rowClass="novo-data-table-header-row",t.fixedHeader=!1,t.role="row",t}return te(t,e),t}(y.CdkHeaderRow);jn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-header-row",template:y.CDK_ROW_TEMPLATE,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],jn.propDecorators={rowClass:[{type:t.HostBinding,args:["class"]}],fixedHeader:[{type:t.HostBinding,args:["class.fixed-header"]},{type:t.Input}],role:[{type:t.HostBinding,args:["attr.role"]}]};var $n=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t.rowClass="novo-data-table-row",t.role="row",t}return te(t,e),t}(y.CdkRow);$n.decorators=[{type:t.Component,args:[{selector:"novo-data-table-row",template:y.CDK_ROW_TEMPLATE,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],$n.propDecorators={rowClass:[{type:t.HostBinding,args:["class"]}],role:[{type:t.HostBinding,args:["attr.role"]}],id:[{type:t.HostBinding,args:["attr.id"]},{type:t.Input}],dataAutomationId:[{type:t.HostBinding,args:["attr.data-automation-id"]},{type:t.Input}]};var Wn=function(e){function t(t,n,o,a,i){var r=e.call(this,t,n)||this;return r.dataTable=a,r.ref=i,r.role="columnheader",r.expanded=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-expand-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-expand-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-expand-header-cell"),r.expandSubscription=r.dataTable.state.expandSource.subscribe((function(){r.expanded=r.dataTable.allCurrentRowsExpanded(),r.ref.markForCheck()})),r}return te(t,e),t.prototype.ngOnDestroy=function(){this.expandSubscription&&this.expandSubscription.unsubscribe()},t.prototype.expandAll=function(){this.dataTable.expandRows(!this.expanded)},t}(y.CdkHeaderCell);Wn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-expand-header-cell",template:'\n <i class="bhi-next data-table-icon" novo-data-table-expander="true" (click)="expandAll()" [class.expanded]="expanded"></i>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Wn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:on},{type:t.ChangeDetectorRef}]},Wn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}]};var Zn=function(){function e(e){this.sanitizer=e,this.theme="danger",this.icon="caution",this.hasDialogue=!1,this.isCloseable=!1,this.closed=new t.EventEmitter,this.show=!1,this.animate=!1,this.parent=null,this.launched=!1}return Object.defineProperty(e.prototype,"message",{set:function(e){this._message=this.sanitizer.bypassSecurityTrustHtml(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.launched||(this.position=null,this.time=null,this.iconClass="bhi-"+this.icon,this.alertTheme=this.theme+" toast-container embedded",this.hasDialogue&&(this.alertTheme+=" dialogue"))},e.prototype.ngOnChanges=function(e){this.iconClass="bhi-"+this.icon,this.alertTheme=this.theme+" toast-container embedded",this.hasDialogue&&(this.alertTheme+=" dialogue")},e.prototype.clickHandler=function(e){this.isCloseable||(e&&(e.stopPropagation(),e.preventDefault()),this.parent?this.parent.hide(this):this.closed.emit({closed:!0}))},e.prototype.close=function(e){e&&(e.stopPropagation(),e.preventDefault()),this.parent?this.parent.hide(this):this.closed.emit({closed:!0})},e}();Zn.decorators=[{type:t.Component,args:[{selector:"novo-toast",host:{"[class]":"alertTheme","[class.show]":"show","[class.animate]":"animate","[class.embedded]":"embedded","(click)":"!isCloseable && clickHandler($event)"},template:'\n <div class="toast-icon">\n <i [ngClass]="iconClass"></i>\n </div>\n <div class="toast-content">\n <h5 *ngIf="title">{{title}}</h5>\n <p *ngIf="_message" [class.message-only]="!title" [innerHtml]="_message"></p>\n <div *ngIf="link" class="link-generated">\n <input type="text" [value]="link" onfocus="this.select();"/>\n </div>\n <div class="dialogue">\n <ng-content></ng-content>\n </div>\n </div>\n <div class="close-icon" *ngIf="isCloseable" (click)="close($event)">\n <i class="bhi-times"></i>\n </div>\n '}]}],Zn.ctorParameters=function(){return[{type:f.DomSanitizer}]},Zn.propDecorators={theme:[{type:t.Input}],icon:[{type:t.Input}],title:[{type:t.Input}],hasDialogue:[{type:t.Input}],link:[{type:t.Input}],isCloseable:[{type:t.Input}],message:[{type:t.Input}],closed:[{type:t.Output}]};var Yn=function(){function e(e){this.componentUtils=e,this.references=[],this.icons={default:"bell",success:"check",info:"info",warning:"warning",danger:"remove"},this.defaults={hideDelay:3500,position:"growlTopRight",theme:"default"}}return Object.defineProperty(e.prototype,"parentViewContainer",{set:function(e){this._parentViewContainer=e},enumerable:!1,configurable:!0}),e.prototype.alert=function(e,t){var n=this;return void 0===t&&(t=Zn),new Promise((function(o){if(n._parentViewContainer){var a=n.componentUtils.append(t,n._parentViewContainer);n.references.push(a),n.handleAlert(a.instance,e),o(a)}else console.error("No parent view container specified for the ToastService. Set it inside your main application. \nthis.toastService.parentViewContainer = view (ViewContainerRef)")}))},e.prototype.isVisible=function(e){return e.show},e.prototype.hide=function(e){var t=this;e.animate=!1,setTimeout((function(){e.show=!1;var n=t.references.filter((function(t){return t.instance===e}))[0];n&&(t.references.splice(t.references.indexOf(n),1),n.destroy())}),300)},e.prototype.handleAlert=function(e,t){var n=this;this.setToastOnSession(e,t),setTimeout((function(){n.show(e)}),20),e.isCloseable||this.toastTimer(e)},e.prototype.setToastOnSession=function(e,t){var n="object"==typeof t?t:{};e.parent=this,e.title=n.title||"",e.message=n.message||"",e.hideDelay=n.hideDelay||this.defaults.hideDelay,e.link=n.link||"",e.isCloseable=n.isCloseable||!1;var o=n.customClass||"",a=n.theme||this.defaults.theme,i=n.position||this.defaults.position,r=n.icon||this.icons.default;e.iconClass="bhi-"+r,e.launched=!0,e.alertTheme=a+" "+i+" "+o+" toast-container launched"},e.prototype.show=function(e){e.show=!0,setTimeout((function(){e.animate=!0}),25)},e.prototype.toastTimer=function(e){var t=this;e.hideDelay<0||setTimeout((function(){t.hide(e)}),e.hideDelay)},e}();Yn.decorators=[{type:t.Injectable}],Yn.ctorParameters=function(){return[{type:mt}]};var qn=function(e){function t(t,n,o,a,i,r){var s=e.call(this,t,n)||this;return s.dataTable=a,s.ref=i,s.toaster=r,s.role="columnheader",s.maxSelected=void 0,s.canSelectAll=!1,s.checked=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-checkbox-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-checkbox-header-cell"),s.selectionSubscription=s.dataTable.state.selectionSource.subscribe((function(){s.checked=s.dataTable.allCurrentRowsSelected(),s.canSelectAll&&s.selectAllChanged(),s.ref.markForCheck()})),s.paginationSubscription=s.dataTable.state.paginationSource.subscribe((function(e){e.isPageSizeChange?(s.checked=!1,s.canSelectAll&&s.selectAllChanged(),s.dataTable.selectRows(!1),s.dataTable.state.checkRetainment("pageSize"),s.dataTable.state.reset(!1,!0)):(s.checked=s.dataTable.allCurrentRowsSelected(),s.canSelectAll&&s.selectAllChanged()),s.ref.markForCheck()})),s.resetSubscription=s.dataTable.state.resetSource.subscribe((function(){s.checked=!1,s.canSelectAll&&s.selectAllChanged(),s.ref.markForCheck()})),s}return te(t,e),Object.defineProperty(t.prototype,"isAtLimit",{get:function(){return this.maxSelected&&this.dataTable.state.selectedRows.size+this.dataTable.dataSource.data.length>this.maxSelected&&!this.checked},enumerable:!1,configurable:!0}),t.prototype.ngOnDestroy=function(){this.selectionSubscription&&this.selectionSubscription.unsubscribe(),this.paginationSubscription&&this.paginationSubscription.unsubscribe(),this.resetSubscription&&this.resetSubscription.unsubscribe()},t.prototype.onClick=function(){this.isAtLimit?this.toaster.alert({theme:"danger",position:"fixedTop",message:"Error, more than 500 items are not able to be selected at one time",icon:"caution"}):this.dataTable.selectRows(!this.checked),this.canSelectAll&&this.selectAllChanged()},t.prototype.selectAllChanged=function(){var e,t,n,o={allSelected:this.checked,selectedCount:null===(n=null===(t=null===(e=this.dataTable)||void 0===e?void 0:e.state)||void 0===t?void 0:t.selected)||void 0===n?void 0:n.length};this.dataTable.allSelected.emit(o)},t}(y.CdkHeaderCell);qn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-checkbox-header-cell",template:'\n <div class="data-table-checkbox" (click)="onClick()">\n <input type="checkbox" [checked]="checked">\n <label>\n <i [class.bhi-checkbox-empty]="!checked"\n [class.bhi-checkbox-filled]="checked"></i>\n </label>\n </div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],qn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:on},{type:t.ChangeDetectorRef},{type:Yn}]},qn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],maxSelected:[{type:t.Input}],canSelectAll:[{type:t.Input}]};var Jn=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.elementRef=n,a.renderer=o,a.role="columnheader",o.setAttribute(n.nativeElement,"data-automation-id","novo-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-data-table-header-cell"),a}return te(t,e),t.prototype.ngOnInit=function(){this.column.width&&(this.renderer.setStyle(this.elementRef.nativeElement,"min-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"max-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"width",this.column.width+"px"))},t}(y.CdkHeaderCell);Jn.decorators=[{type:t.Directive,args:[{selector:"novo-data-table-header-cell"}]}],Jn.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},Jn.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],column:[{type:t.Input}]};var Xn=function(){function e(e,n,o){var a=this;this.changeDetectorRef=e,this.labels=n,this.state=o,this.theme="standard",this._page=0,this._pageSizeOptions=[],this._length=0,this.pageChange=new t.EventEmitter,this.resetSubscription=this.state.resetSource.subscribe((function(){a.page=0,a.changeDetectorRef.markForCheck()}))}return Object.defineProperty(e.prototype,"page",{get:function(){return this._page},set:function(e){this._page=e,this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.state.page=this._page},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageSize",{get:function(){return this._pageSize},set:function(e){this._pageSize=e,this.updateDisplayedPageSizeOptions(),this.state.pageSize=this._pageSize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageSizeOptions",{get:function(){return this._pageSizeOptions},set:function(e){this._pageSizeOptions=e,this.updateDisplayedPageSizeOptions()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"length",{get:function(){return this._length},set:function(e){this._length=e,this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this._initialized=!0,this.updateDisplayedPageSizeOptions()},e.prototype.ngOnDestroy=function(){this.resetSubscription.unsubscribe()},e.prototype.selectPage=function(e){this.state.checkRetainment("page"),this.page=e,this.emitPageEvent()},e.prototype.nextPage=function(){this.state.checkRetainment("page"),this.hasNextPage()&&(this.page++,this.pages=this.getPages(this.page,this.totalPages),this.emitPageEvent())},e.prototype.previousPage=function(){this.state.checkRetainment("page"),this.hasPreviousPage()&&(this.page--,this.pages=this.getPages(this.page,this.totalPages),this.emitPageEvent())},e.prototype.hasPreviousPage=function(){return this.page>=1&&0!==this.pageSize},e.prototype.hasNextPage=function(){var e=Math.ceil(this.length/this.pageSize)-1;return this.page<e&&0!==this.pageSize},e.prototype.changePageSize=function(e){this.page=0,this.pageSize=e,this.emitPageEvent(!0)},e.prototype.updateDisplayedPageSizeOptions=function(){var e=this;this._initialized&&(this.displayedPageSizeOptions||(this.displayedPageSizeOptions=[],this.pageSizeOptions.forEach((function(t){t.hasOwnProperty("value")?e.displayedPageSizeOptions.push(t):e.displayedPageSizeOptions.push({value:t,label:t})}))),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.changeDetectorRef.detectChanges())},e.prototype.emitPageEvent=function(e){void 0===e&&(e=!1);var t={page:this.page,pageSize:this.pageSize,length:this.length,filter:this.state.filter,sort:this.state.sort};this.pageChange.next(t),this.state.page=this.page,this.state.pageSize=this.pageSize,this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.state.updates.next(t),this.state.onPaginationChange(e,this.pageSize)},e.prototype.calculateTotalPages=function(){var e=this.pageSize<1?1:Math.ceil(this.length/this.pageSize);return Math.max(e||0,1)},e.prototype.makePage=function(e,t,n){return{number:e,text:t,active:n}},e.prototype.getPages=function(e,t){var n=[],o=1,a=t;5<t&&(a=(o=Math.max(e-Math.floor(2.5),1))+5-1)>t&&(o=(a=t)-5+1);for(var i=o;i<=a;i++){var r=this.makePage(i,i.toString(),i===e);n.push(r)}return n},e}();function Qn(e,t){return t.format?R.interpolateWithFallback(t.format,e):e}Xn.decorators=[{type:t.Component,args:[{selector:"novo-data-table-pagination",template:'\n <ng-container *ngIf="theme === \'basic\' || theme === \'basic-wide\'">\n <div class="novo-data-table-pagination-size">\n <novo-tiles *ngIf="displayedPageSizeOptions.length > 1"\n [(ngModel)]="pageSize"\n [options]="displayedPageSizeOptions"\n (onChange)="changePageSize($event)"\n data-automation-id="novo-data-table-pagination-tiles">\n </novo-tiles>\n <div *ngIf="displayedPageSizeOptions.length <= 1">{{ pageSize }}</div>\n </div>\n\n <div class="novo-data-table-range-label-long" data-automation-id="novo-data-table-pagination-range-label-long">\n {{ longRangeLabel }}\n </div>\n <div class="novo-data-table-range-label-short" data-automation-id="novo-data-table-pagination-range-label-short">\n {{ shortRangeLabel }}\n </div>\n <span class="spacer novo-data-table-spacer" *ngIf="theme === \'basic-wide\'"></span>\n <button theme="dialogue" type="button"\n class="novo-data-table-pagination-navigation-previous"\n (click)="previousPage()"\n icon="previous"\n side="left"\n [disabled]="!hasPreviousPage()"\n data-automation-id="novo-data-table-pagination-previous">\n <span>{{ labels.previous }}</span>\n </button>\n <button theme="dialogue" type="button"\n class="novo-data-table-pagination-navigation-next"\n (click)="nextPage()"\n icon="next"\n side="right"\n [disabled]="!hasNextPage()"\n data-automation-id="novo-data-table-pagination-next">\n <span>{{ labels.next }}</span>\n </button>\n </ng-container>\n <ng-container *ngIf="theme === \'standard\'">\n <h5 class="rows">{{ labels.itemsPerPage }}</h5>\n <novo-select\n [options]="displayedPageSizeOptions"\n [placeholder]="labels.select"\n [(ngModel)]="pageSize"\n (onSelect)="changePageSize($event.selected)"\n data-automation-id="pager-select"\n [attr.data-feature-id]="dataFeatureId">\n </novo-select>\n <span class="spacer"></span>\n <ul class="pager" data-automation-id="pager">\n <li class="page" (click)="selectPage(page - 1)" [ngClass]="{ \'disabled\': page === 0 }"><i class="bhi-previous" data-automation-id="pager-previous"></i></li>\n <li class="page" [ngClass]="{active: p.number === page + 1}" *ngFor="let p of pages" (click)="selectPage(p.number - 1)">{{ p.text }}</li>\n <li class="page" (click)="selectPage(page + 1)" [ngClass]="{ \'disabled\': page + 1 === totalPages }"><i class="bhi-next" data-automation-id="pager-next"></i></li>\n </ul>\n </ng-container>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Xn.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:Ne},{type:Wt}]},Xn.propDecorators={theme:[{type:t.HostBinding,args:["class"]},{type:t.Input}],page:[{type:t.Input}],pageSize:[{type:t.Input}],dataFeatureId:[{type:t.Input}],pageSizeOptions:[{type:t.Input}],length:[{type:t.Input}],pageChange:[{type:t.Output}]};var eo=function(){function e(){}return e.prototype.transform=function(e,t){return R.isEmpty(e)?"":Qn(e,t)},e}();eo.decorators=[{type:t.Pipe,args:[{name:"dataTableInterpolate",pure:!0}]}];var to=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){return R.isEmpty(e)?"":t.format?e:this.labels.formatDate(Qn(e,t))},e}();to.decorators=[{type:t.Pipe,args:[{name:"dataTableDateRenderer",pure:!0}]}],to.ctorParameters=function(){return[{type:Ne}]};var no=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){return R.isEmpty(e)?"":t.format?e:this.labels.formatDateShort(Qn(e,t))},e}();no.decorators=[{type:t.Pipe,args:[{name:"dataTableDateTimeRenderer",pure:!0}]}],no.ctorParameters=function(){return[{type:Ne}]};var oo=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){return R.isEmpty(e)?"":t.format?e:this.labels.formatTime(Qn(e,t))},e}();oo.decorators=[{type:t.Pipe,args:[{name:"dataTableTimeRenderer",pure:!0}]}],oo.ctorParameters=function(){return[{type:Ne}]};var ao=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t,n){if(void 0===n&&(n=!1),!R.isEmpty(e)){var o=Qn(e,t);return n&&R.isNumber(o)&&(o=""+100*Number(o)),this.labels.formatNumber(o)+(n?"%":"")}return""},e}();ao.decorators=[{type:t.Pipe,args:[{name:"dataTableNumberRenderer",pure:!0}]}],ao.ctorParameters=function(){return[{type:Ne}]};var io=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){if(!R.isEmpty(e)){var n=Qn(e,t);return this.labels.formatBigDecimal(Number(n),t.configuration)}return""},e}();io.decorators=[{type:t.Pipe,args:[{name:"dataTableBigDecimalRenderer",pure:!0}]}],io.ctorParameters=function(){return[{type:Ne}]};var ro=function(){function e(e){this.labels=e}return e.prototype.transform=function(e,t){if(!R.isEmpty(e)){var n=Qn(e,t);return this.labels.formatCurrency(Number(n))}return""},e}();ro.decorators=[{type:t.Pipe,args:[{name:"dataTableCurrencyRenderer",pure:!0}]}],ro.ctorParameters=function(){return[{type:Ne}]};var so=function(){function e(e,t,n){var o=this;this.vcRef=e,this.state=t,this.dataTable=n,this.shouldExpandAllRows=function(e){return void 0===e},this.shouldExpandOneRow=function(e){return e===o.row.id},this.subscription=this.state.expandSource.subscribe((function(e){(o.shouldExpandAllRows(e)||o.shouldExpandOneRow(e))&&(n.isExpanded(o.row)?o.render():o.clear())}))}return e.prototype.ngOnDestroy=function(){this.subscription.unsubscribe()},e.prototype.onClick=function(e){e.target.hasAttribute("novo-data-table-expander")&&(R.swallowEvent(e),this.dataTable.expandRow(this.row))},e.prototype.clear=function(){this.vcRef.clear()},e.prototype.render=function(){this.vcRef.clear(),this.template&&this.row&&this.vcRef.createEmbeddedView(this.template,{$implicit:this.row})},e}();so.decorators=[{type:t.Directive,args:[{selector:"[novoDataTableExpand]"}]}],so.ctorParameters=function(){return[{type:t.ViewContainerRef},{type:Wt},{type:on}]},so.propDecorators={row:[{type:t.Input}],template:[{type:t.Input,args:["novoDataTableExpand"]}],onClick:[{type:t.HostListener,args:["click",["$event"]]}]};var lo=function(){};lo.decorators=[{type:t.NgModule,args:[{imports:[Vn,y.CdkTableModule,s.CommonModule,n.FormsModule,_,an,An,ze,Rn,Ln,jt,ln,U],declarations:[eo,to,ro,no,ao,oo,io,nn,tn,Jn,Un,jn,$n,Xn,Kn,qn,zn,Wn,on,so,Zt],providers:[Wt],exports:[on,eo,to,ro,no,ao,oo,io,Zt]}]}];var co=function(){},po={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return uo})),multi:!0},uo=function(){function e(e,n){this.labels=e,this.element=n,this.weekStart=0,this.onSelect=new t.EventEmitter(!1),this.componentTabState="date",this.datePickerValue=new Date,this.timePickerValue=new Date,this._onChange=function(){},this._onTouched=function(){}}return e.prototype.toggleView=function(e){this.componentTabState=e},e.prototype.setDateLabels=function(e){this.selectedLabel=this.labels.formatDateWithFormat(e,{month:"short",day:"2-digit",year:"numeric"})},e.prototype.setTimeLabels=function(e){var t=e.getHours(),n=e.getMinutes();this.meridian=e.toLocaleTimeString().slice(-2),this.military||(t="PM"===this.meridian&&t>12?t-12:t,("PM"===this.meridian&&24===t||"AM"===this.meridian&&0===t)&&(t=12)),this.hours=t.toString(),this.minutes=1===n.toString().length?"0"+n.toString():n.toString()},e.prototype.onDateSelected=function(e){this.datePickerValue=e.date,this.model=this.createFullDateValue(this.datePickerValue,this.timePickerValue),this.setDateLabels(this.model),this.onSelect.emit({date:this.model}),this._onChange(this.model),this.toggleView("time")},e.prototype.onTimeSelected=function(e){this.timePickerValue=e.date,this.model=this.createFullDateValue(this.model,this.timePickerValue),this.setTimeLabels(this.model),this.onSelect.emit({date:this.model}),this._onChange(this.model)},e.prototype.createFullDateValue=function(e,t){return p.setMilliseconds(p.setSeconds(p.setMinutes(p.setHours(e,p.getHours(t)),p.getMinutes(t)),p.getSeconds(t)),p.getMilliseconds(t))},e.prototype.writeValue=function(e){this.model=e,R.isEmpty(e)?this.model=new Date:isNaN(e)||(this.model=new Date(e)),this.datePickerValue=this.model,this.timePickerValue=this.model,R.isDate(this.model)&&(this.setDateLabels(this.model),this.setTimeLabels(this.model))},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e}();uo.decorators=[{type:t.Component,args:[{selector:"novo-date-time-picker",providers:[po],animations:[d.trigger("dateTextState",[d.state("date",d.style({opacity:"1.0"})),d.state("time",d.style({opacity:"0.6"})),d.transition("date <=> time",d.animate("200ms ease-in"))]),d.trigger("timeTextState",[d.state("date",d.style({opacity:"0.6"})),d.state("time",d.style({opacity:"1.0"})),d.transition("date <=> time",d.animate("200ms ease-in"))]),d.trigger("indicatorState",[d.state("date",d.style({transform:"translateX(0%)"})),d.state("time",d.style({transform:"translateX(100%)"})),d.transition("date <=> time",d.animate("200ms ease-in"))]),d.trigger("containerState",[d.state("date",d.style({transform:"translateX(0%)"})),d.state("time",d.style({transform:"translateX(-100%)"})),d.transition("date <=> time",d.animate("200ms ease-in"))])],template:'\n <div class="date-time-container">\n <div class="date-time-tabs">\n <span\n class="date-tab"\n (click)="toggleView(\'date\')"\n [@dateTextState]="componentTabState"\n data-automation-id="novo-date-time-date-tab"\n >{{ selectedLabel }}</span\n >\n <span\n class="time-tab"\n (click)="toggleView(\'time\')"\n [@timeTextState]="componentTabState"\n data-automation-id="novo-date-time-time-tab"\n >\n <span class="hours" data-automation-id="novo-time-picker-hours">{{ hours }}</span\n >:<span class="minutes" data-automation-id="novo-time-picker-minutes">{{ minutes }}</span>\n <span *ngIf="!military" class="meridian"> {{ meridian }}</span>\n </span>\n <i class="date-time-indicator" [@indicatorState]="componentTabState"></i>\n </div>\n <div class="view-container" [@containerState]="componentTabState">\n <div class="calendar">\n <novo-date-picker\n (onSelect)="onDateSelected($event)"\n [(ngModel)]="model"\n inline="true"\n [minYear]="minYear"\n [maxYear]="maxYear"\n [start]="start"\n [end]="end"\n [disabledDateMessage]="disabledDateMessage"\n [weekStart]="weekStart"\n ></novo-date-picker>\n </div>\n <div class="time-picker">\n <novo-time-picker (onSelect)="onTimeSelected($event)" [(ngModel)]="model" [military]="military" inline="true"></novo-time-picker>\n </div>\n </div>\n </div>\n '}]}],uo.ctorParameters=function(){return[{type:Ne},{type:t.ElementRef}]},uo.propDecorators={minYear:[{type:t.Input}],maxYear:[{type:t.Input}],start:[{type:t.Input}],end:[{type:t.Input}],military:[{type:t.Input}],weekStart:[{type:t.Input}],disabledDateMessage:[{type:t.Input}],onSelect:[{type:t.Output}]};var mo={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return ho})),multi:!0},ho=function(){function e(e,n,o){this.element=e,this.labels=n,this._changeDetectorRef=o,this._onChange=function(){},this._onTouched=function(){},this.military=!1,this.disabled=!1,this.weekStart=0,this.blurEvent=new t.EventEmitter,this.focusEvent=new t.EventEmitter,this.changeEvent=new t.EventEmitter}return e.prototype.writeValue=function(e){var t=this;this.datePart=p.isDate(e)?p.parse(e):e,this.timePart=p.isDate(e)?p.parse(e):e,Promise.resolve(null).then((function(){return t._setTriggerValue(e)}))},e.prototype.updateDate=function(e){this.datePart=e,this.checkParts()},e.prototype.updateTime=function(e){this.timePart=e,this.checkParts()},e.prototype.handleBlur=function(e){this.blurEvent.emit(e),this.changeEvent.emit(e)},e.prototype.handleFocus=function(e){this.focusEvent.emit(e)},e.prototype.checkParts=function(){try{this.datePart instanceof Date&&this.timePart instanceof Date?this.dispatchOnChange(new Date(this.datePart.getFullYear(),this.datePart.getMonth(),this.datePart.getDate(),this.timePart.getHours(),this.timePart.getMinutes())):this.datePart instanceof Date?(this.timePart=new Date(this.datePart.getFullYear(),this.datePart.getMonth(),this.datePart.getDate(),12,0),this.dispatchOnChange(new Date(this.datePart.getFullYear(),this.datePart.getMonth(),this.datePart.getDate(),this.timePart.getHours(),this.timePart.getMinutes()))):this.dispatchOnChange(null)}catch(e){this.dispatchOnChange(null)}},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e.prototype.dispatchOnChange=function(e){e!==this.value&&(this._onChange(e),this._setTriggerValue(e))},e.prototype._setTriggerValue=function(e){this.value=e,this._changeDetectorRef.markForCheck()},e.prototype.setValue=function(e){e&&e.date&&this.dispatchOnChange(e.date)},e.prototype.setValueAndClose=function(e){this.setValue(e)},e.prototype.clearValue=function(){this.dispatchOnChange(null)},Object.defineProperty(e.prototype,"hasValue",{get:function(){return!R.isEmpty(this.value)},enumerable:!1,configurable:!0}),e}();ho.decorators=[{type:t.Component,args:[{selector:"novo-date-time-picker-input",providers:[mo],template:'\n <novo-date-picker-input\n [ngModel]="datePart"\n (ngModelChange)="updateDate($event)"\n [start]="start"\n [end]="end"\n [disabledDateMessage]="disabledDateMessage"\n [maskOptions]="maskOptions"\n (blurEvent)="handleBlur($event)"\n (focusEvent)="handleFocus($event)"\n [disabled]="disabled"\n [weekStart]="weekStart"\n ></novo-date-picker-input>\n <novo-time-picker-input\n [ngModel]="timePart"\n (ngModelChange)="updateTime($event)"\n [military]="military"\n (blurEvent)="handleBlur($event)"\n (focusEvent)="handleFocus($event)"\n [disabled]="disabled"\n ></novo-time-picker-input>\n '}]}],ho.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]},ho.propDecorators={name:[{type:t.Input}],start:[{type:t.Input}],end:[{type:t.Input}],placeholder:[{type:t.Input}],maskOptions:[{type:t.Input}],military:[{type:t.Input}],disabled:[{type:t.Input}],format:[{type:t.Input}],weekStart:[{type:t.Input}],disabledDateMessage:[{type:t.Input}],blurEvent:[{type:t.Output}],focusEvent:[{type:t.Output}],changeEvent:[{type:t.Output}]};var go={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return fo})),multi:!0},fo=function(){function e(){this.military=!1,this.analog=!1,this.inline=!1,this.onSelect=new t.EventEmitter,this.hours=12,this.minutes=0,this.value=null,this.increments=[],this.MERIDIANS=["am","pm"],this.MINUTES=["05","10","15","20","25","30","35","40","45","50","55","00"],this.HOURS=["1","2","3","4","5","6","7","8","9","10","11","12"],this._onChange=function(){},this._onTouched=function(){}}return e.prototype.flatten=function(e){var t;return(t=Array.prototype).concat.apply(t,ae(e))},e.prototype.ngOnInit=function(){if(this.military)this.HOURS=ae(["0"],this.HOURS,["13","14","15","16","17","18","19","20","21","22","23"]),this.increments=this.flatten(ae(this.HOURS.map((function(e){return[e+":00",e+":15",e+":30",e+":45"]}))));else{var e=["12","1","2","3","4","5","6","7","8","9","10","11"];this.increments=this.flatten(ae(e.map((function(e){return[e+":00 AM",e+":15 AM",e+":30 AM",e+":45 AM"]})),e.map((function(e){return[e+":00 PM",e+":15 PM",e+":30 PM",e+":45 PM"]}))))}this.ngOnChanges()},e.prototype.ngOnChanges=function(e){this.model?this.init(this.model,!1):(this.selected=null,this.init(new Date,!1))},e.prototype.init=function(e,t){var n=new Date(e),o=n.getHours(),a=n.getMinutes();this.military||(this.meridian=o>=12?"pm":"am",o=(o%=12)||12),a=a<10?"0"+a:a,this.setHours(null,o,t),this.setMinutes(null,a,t),this.checkBetween(a)},e.prototype.checkBetween=function(e){this.inBetween=this.MINUTES.indexOf(String(e))<0},e.prototype.setValue=function(e,t){R.swallowEvent(e),this.selected=t;var n=oe(t.split(" "),2),o=n[0],a=n[1],i=oe(o.split(":"),2),r=i[0],s=i[1];this.hours=r,this.minutes=s,this.meridian=a,this.dispatchChange()},e.prototype.setHours=function(e,t,n){R.swallowEvent(e),this.hours=t,this.hoursClass="hour-"+t,this.activeHour=t,n&&this.dispatchChange()},e.prototype.setMinutes=function(e,t,n){R.swallowEvent(e),this.minutes=t,this.minutesClass="min-"+t,this.activeMinute=t,this.checkBetween(t),n&&this.dispatchChange()},e.prototype.setPeriod=function(e,t,n){R.swallowEvent(e),this.meridian=t,n&&this.dispatchChange()},e.prototype.dispatchChange=function(){var e=Number(this.hours);this.military||(e="pm"===this.meridian.toLowerCase()?e+12:e,"pm"===this.meridian.toLowerCase()&&24===e?e=12:"am"===this.meridian.toLowerCase()&&12===e&&(e=0));var t=new Date;t.setHours(e),t.setMinutes(this.minutes),t.setSeconds(0),this.value=this.hours+":"+this.minutes+" "+this.meridian,this.onSelect.next({hours:e,minutes:this.minutes,meridian:this.meridian,date:t,text:this.value}),this._onChange(t)},e.prototype.writeValue=function(e){this.model=e,R.isDate(e)&&this.init(e,!1)},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e}();fo.decorators=[{type:t.Component,args:[{selector:"novo-time-picker",providers:[go],template:'\n <div class="digital" [class.inline]="inline" [class.military]="military">\n <div class="digital--inner">\n <span class="digital--clock" *ngIf="!inline">\n <span class="hours" data-automation-id="novo-time-picker-hours">{{hours}}</span>:<span class="minutes" data-automation-id="novo-time-picker-minutes">{{minutes}}</span>\n </span>\n <div class="control-block" *ngIf="!military">\n <span *ngFor="let period of MERIDIANS" class="digital--period" [class.active]="meridian==period" (click)="setPeriod($event, period, true)" [attr.data-automation-id]="period">{{period}}</span>\n </div>\n </div>\n </div>\n <div class="increments" *ngIf="!analog">\n <novo-list direction="vertical" data-automation-id="novo-time-picker-increments">\n <novo-list-item *ngFor="let increment of increments" (click)="setValue($event, increment)" [class.active]="increment==selected" [attr.data-automation-id]="increment">\n <item-content>{{increment}}</item-content>\n <i *ngIf="increment==selected" class="bhi-check"></i>\n </novo-list-item>\n </novo-list>\n </div>\n <div class="analog" *ngIf="analog">\n <div class="analog--inner">\n <div class="analog--face">\n <span class="analog--center"></span>\n <span class="analog--hand--hours" [ngClass]="hoursClass">\n <span class="analog--ball"></span>\n </span>\n <span class="analog--hand--minutes" [ngClass]="minutesClass">\n <span class="analog--ball" [ngClass]="{between: inBetween}"></span>\n </span>\n </div>\n <div class="analog--hours">\n <span *ngFor="let hour of HOURS" class="analog--hour" [ngClass]="{active: activeHour == hour}" (click)="setHours($event, hour, true)" [attr.data-automation-id]="hour">{{hour}}</span>\n </div>\n <div class="analog--minutes">\n <span *ngFor="let minute of MINUTES" class="analog--minute" [ngClass]="{active: activeMinute == minute}" (click)="setMinutes($event, minute, true)" [attr.data-automation-id]="minute">{{minute}}</span>\n </div>\n </div>\n </div>\n ',host:{"[class.military]":"military"}}]}],fo.propDecorators={military:[{type:t.Input}],analog:[{type:t.Input}],inline:[{type:t.Input}],onSelect:[{type:t.Output}]};var yo={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return vo})),multi:!0},vo=function(){function e(e,n,o,a){this.element=e,this.labels=n,this.dateFormatService=o,this._changeDetectorRef=a,this.formattedValue="",this._onChange=function(){},this._onTouched=function(){},this.military=!1,this.disabled=!1,this.blurEvent=new t.EventEmitter,this.focusEvent=new t.EventEmitter}return e.prototype.ngOnInit=function(){this.placeholder=this.military?this.labels.timeFormatPlaceholder24Hour:this.labels.timeFormatPlaceholderAM,this.maskOptions={mask:this.military?[/\d/,/\d/,":",/\d/,/\d/]:[/\d/,/\d/,":",/\d/,/\d/," ",/[aApP上下]/,/[mM午]/],pipe:this.military?x.default("HH:MM"):x.default("mm:MM"),keepCharPositions:!1,guide:!0}},e.prototype.openPanel=function(){var e=this;if(!this.overlay.panelOpen){this.overlay.openPanel();var t=(new Date).getHours();Promise.resolve(null).then((function(){return e.scrollToIndex(4*t)}))}},e.prototype.closePanel=function(){this.overlay.closePanel()},Object.defineProperty(e.prototype,"panelOpen",{get:function(){return this.overlay&&this.overlay.panelOpen},enumerable:!1,configurable:!0}),e.prototype._handleKeydown=function(e){e.keyCode!==C.ESCAPE&&e.keyCode!==C.ENTER&&e.keyCode!==C.TAB||!this.panelOpen||(this.closePanel(),e.stopPropagation(),e.stopImmediatePropagation())},e.prototype._handleInput=function(e){if(document.activeElement===e.target){var t=e.target.value;if(this.military?5===t.replace(/_/g,"").length:8===t.replace(/_/g,"").length){var n=oe(this.dateFormatService.parseString(t,this.military,"time"),2),o=n[0];n[1];this.dispatchOnChange(o)}else this.dispatchOnChange(null);this.openPanel();var a=Number(t.split(":")[0]);this.scrollToIndex(4*a)}},e.prototype._handleBlur=function(e){this.blurEvent.emit(e)},e.prototype._handleFocus=function(e){this.openPanel(),this.focusEvent.emit(e)},e.prototype.writeValue=function(e){var t=this;Promise.resolve(null).then((function(){return t._setTriggerValue(e)}))},e.prototype.registerOnChange=function(e){this._onChange=e},e.prototype.registerOnTouched=function(e){this._onTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e.prototype.dispatchOnChange=function(e,t){void 0===t&&(t=!1),e!==this.value&&(this._onChange(e),!t&&this.writeValue(e))},e.prototype._setTriggerValue=function(e){this._setCalendarValue(e),this._setFormValue(e),this._changeDetectorRef.markForCheck()},e.prototype._setCalendarValue=function(e){e instanceof Date&&this.value instanceof Date&&(e=new Date(e.setFullYear(this.value.getFullYear(),this.value.getMonth(),this.value.getDate()))),this.value=e},e.prototype._setFormValue=function(e){if(this.value){var t=this.formatDateValue(this.value);this.formattedValue=t}else this.formattedValue=""},e.prototype.setValue=function(e){e&&e.date&&this.dispatchOnChange(e.date)},e.prototype.setValueAndClose=function(e){this.setValue(e),this.closePanel()},e.prototype.clearValue=function(){this.formattedValue="",this.dispatchOnChange(null)},e.prototype.formatDateValue=function(e){if(!e)return"";var t=this.labels.formatTimeWithFormat(e,{hour:"numeric",minute:"2-digit",hour12:!this.military});return 1===t.split(":")[0].length?"0"+t:t},Object.defineProperty(e.prototype,"hasValue",{get:function(){return!R.isEmpty(this.value)},enumerable:!1,configurable:!0}),e.prototype.scrollToIndex=function(e){var t=this.overlay.overlayRef.overlayElement.querySelector(".increments"),n=t.querySelectorAll("novo-list-item")[e];n&&(t.scrollTop=n.offsetTop)},e}();vo.decorators=[{type:t.Component,args:[{selector:"novo-time-picker-input",providers:[yo],template:'\n <input\n type="text"\n [name]="name"\n [(ngModel)]="formattedValue"\n [textMask]="maskOptions"\n [placeholder]="placeholder"\n (focus)="_handleFocus($event)"\n (keydown)="_handleKeydown($event)"\n (input)="_handleInput($event)"\n (blur)="_handleBlur($event)"\n #input\n data-automation-id="time-input"\n [disabled]="disabled"\n />\n <i *ngIf="!hasValue" (click)="openPanel()" class="bhi-clock"></i> <i *ngIf="hasValue" (click)="clearValue()" class="bhi-times"></i>\n\n <novo-overlay-template [parent]="element" position="above-below">\n <novo-time-picker inline="true" (onSelect)="setValue($event)" [ngModel]="value" [military]="military"></novo-time-picker>\n </novo-overlay-template>\n '}]}],vo.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:Hn},{type:t.ChangeDetectorRef}]},vo.propDecorators={name:[{type:t.Input}],placeholder:[{type:t.Input}],military:[{type:t.Input}],maskOptions:[{type:t.Input}],disabled:[{type:t.HostBinding,args:["class.disabled"]},{type:t.Input}],blurEvent:[{type:t.Output}],focusEvent:[{type:t.Output}],overlay:[{type:t.ViewChild,args:[yt]}]};var bo=function(){};bo.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,S.TextMaskModule,vt,pt],declarations:[fo,vo],exports:[fo,vo]}]}];var Co=function(){};Co.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,Vn,bo,S.TextMaskModule,vt],declarations:[uo,ho],exports:[uo,ho]}]}];var So=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t._hideToggle=!1,t.displayMode="default",t}return te(t,e),Object.defineProperty(t.prototype,"hideToggle",{get:function(){return this._hideToggle},set:function(e){this._hideToggle=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),t}(I.CdkAccordion);So.decorators=[{type:t.Directive,args:[{selector:"novo-accordion",exportAs:"novoAccordion",host:{class:"novo-accordion"}}]}],So.propDecorators={hideToggle:[{type:t.Input}],displayMode:[{type:t.Input}]};var ko="225ms cubic-bezier(0.4,0.0,0.2,1)",Io={indicatorRotate:d.trigger("indicatorRotate",[d.state("collapsed",d.style({transform:"rotate(0deg)"})),d.state("expanded",d.style({transform:"rotate(180deg)"})),d.transition("expanded <=> collapsed",d.animate(ko))]),expansionHeaderHeight:d.trigger("expansionHeight",[d.state("collapsed",d.style({height:"{{collapsedHeight}}"}),{params:{collapsedHeight:"48px"}}),d.state("expanded",d.style({height:"{{expandedHeight}}"}),{params:{expandedHeight:"56px"}}),d.transition("expanded <=> collapsed",d.group([d.query("@indicatorRotate",d.animateChild(),{optional:!0}),d.animate(ko)]))]),bodyExpansion:d.trigger("bodyExpansion",[d.state("collapsed",d.style({height:"0px",visibility:"hidden"})),d.state("expanded",d.style({height:"*",visibility:"visible"})),d.transition("expanded <=> collapsed",d.animate(ko))])},Eo=function(e){this._template=e};Eo.decorators=[{type:t.Directive,args:[{selector:"ng-template[matExpansionPanelContent]"}]}],Eo.ctorParameters=function(){return[{type:t.TemplateRef}]};var wo=0,To=function(e){function n(n,o,a,i){var r=e.call(this,n,o,a)||this;return r._viewContainerRef=i,r._hideToggle=!1,r._padding=!0,r.opened=new t.EventEmitter,r.closed=new t.EventEmitter,r.expandedChange=new t.EventEmitter,r._inputChanges=new u.Subject,r._headerId="novo-expansion-panel-header-"+wo++,r.accordion=n,r}return te(n,e),Object.defineProperty(n.prototype,"hideToggle",{get:function(){return this._hideToggle},set:function(e){this._hideToggle=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"padding",{get:function(){return this._padding},set:function(e){this._padding=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),n.prototype._getHideToggle=function(){return this.accordion?this.accordion.hideToggle:this.hideToggle},n.prototype._hasSpacing=function(){return!!this.accordion&&"default"===(this.expanded?this.accordion.displayMode:this._getExpandedState())},n.prototype._getExpandedState=function(){return this.expanded?"expanded":"collapsed"},n.prototype.ngAfterContentInit=function(){var e=this;this._lazyContent&&this.opened.pipe(g.startWith(null),g.filter((function(){return e.expanded&&!e._portal})),g.take(1)).subscribe((function(){e._portal=new c.TemplatePortal(e._lazyContent._template,e._viewContainerRef)}))},n.prototype.ngOnChanges=function(e){this._inputChanges.next(e)},n.prototype.ngOnDestroy=function(){e.prototype.ngOnDestroy.call(this),this._inputChanges.complete()},n.prototype._bodyAnimation=function(e){var t=e.element.classList,n="novo-expanded",o=e.phaseName,a=e.toState;"done"===o&&"expanded"===a?t.add(n):"start"===o&&"collapsed"===a&&t.remove(n)},n}(I.CdkAccordionItem);To.decorators=[{type:t.Component,args:[{selector:"novo-expansion-panel",exportAs:"novoExpansionPanel",template:'<ng-content select="novo-expansion-panel-header"></ng-content>\n<div class="novo-expansion-panel-content"\n role="region"\n [@bodyExpansion]="_getExpandedState()"\n (@bodyExpansion.done)="_bodyAnimation($event)"\n (@bodyExpansion.start)="_bodyAnimation($event)"\n [attr.aria-labelledby]="_headerId"\n [id]="id"\n #body>\n <div class="novo-expansion-panel-body">\n <ng-content></ng-content>\n <ng-template [cdkPortalOutlet]="_portal"></ng-template>\n </div>\n <ng-content select="novo-action-row"></ng-content>\n</div>\n',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,animations:[Io.bodyExpansion],host:{class:"novo-expansion-panel","[class.novo-expanded]":"expanded","[class.novo-expansion-panel-spacing]":"_hasSpacing()","[class.novo-expansion-panel-padding]":"padding"},styles:["@-webkit-keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@-webkit-keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@-webkit-keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@-webkit-keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}@keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}.novo-expansion-panel{background:#fff;color:#3d464d}.novo-action-row{border-top-color:#3d464d}.novo-expansion-panel:not(.novo-expanded) .novo-expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.novo-expansion-panel:not(.novo-expanded) .novo-expansion-panel-header:not([aria-disabled=true]).cdk-program-focused,.novo-expansion-panel:not(.novo-expanded) .novo-expansion-panel-header:not([aria-disabled=true]):hover{background:rgba(0,0,0,.04)}.novo-expansion-panel-header-title{color:#3d464d}.novo-expansion-indicator:after,.novo-expansion-panel-header-description{color:#999}.novo-expansion-panel-header[aria-disabled=true]{color:#999;pointer-events:none}.novo-expansion-panel-header[aria-disabled=true] .novo-expansion-panel-header-description,.novo-expansion-panel-header[aria-disabled=true] .novo-expansion-panel-header-title{color:inherit}.novo-expansion-panel.novo-expanded[theme=company]{border-top:3px solid #39d}.novo-expansion-panel.novo-expanded[theme=candidate]{border-top:3px solid #4b7}.novo-expansion-panel.novo-expanded[theme=navigation]{border-top:3px solid #2f384f}.novo-expansion-panel.novo-expanded[theme=lead]{border-top:3px solid #a69}.novo-expansion-panel.novo-expanded[theme=contact]{border-top:3px solid #fa4}.novo-expansion-panel.novo-expanded[theme=opportunity]{border-top:3px solid #625}.novo-expansion-panel.novo-expanded[theme=job]{border-top:3px solid #b56}.novo-expansion-panel.novo-expanded[theme=earnCode],.novo-expansion-panel.novo-expanded[theme=jobCode]{border-top:3px solid #696d79}.novo-expansion-panel.novo-expanded[theme=sendout]{border-top:3px solid #747884}.novo-expansion-panel.novo-expanded[theme=placement]{border-top:3px solid #0b344f}.novo-expansion-panel.novo-expanded[theme=corporateuser],.novo-expansion-panel.novo-expanded[theme=credential],.novo-expansion-panel.novo-expanded[theme=distributionList],.novo-expansion-panel.novo-expanded[theme=task],.novo-expansion-panel.novo-expanded[theme=user]{border-top:3px solid #4f5361}.novo-expansion-panel.novo-expanded[theme=aqua]{border-top:3px solid #3bafda}.novo-expansion-panel.novo-expanded[theme=ocean]{border-top:3px solid #4a89dc}.novo-expansion-panel.novo-expanded[theme=mint]{border-top:3px solid #37bc9b}.novo-expansion-panel.novo-expanded[theme=grass]{border-top:3px solid #8cc152}.novo-expansion-panel.novo-expanded[theme=sunflower]{border-top:3px solid #f6b042}.novo-expansion-panel.novo-expanded[theme=bittersweet]{border-top:3px solid #eb6845}.novo-expansion-panel.novo-expanded[theme=grapefruit]{border-top:3px solid #da4453}.novo-expansion-panel.novo-expanded[theme=carnation]{border-top:3px solid #d770ad}.novo-expansion-panel.novo-expanded[theme=lavender]{border-top:3px solid #967adc}.novo-expansion-panel.novo-expanded[theme=positive]{border-top:3px solid #4a89dc}.novo-expansion-panel.novo-expanded[theme=success]{border-top:3px solid #8cc152}.novo-expansion-panel.novo-expanded[theme=negative]{border-top:3px solid #da4453}.novo-expansion-panel.novo-expanded[theme=warning]{border-top:3px solid #f6b042}.novo-expansion-panel.novo-expanded[theme=black]{border-top:3px solid #000}.novo-expansion-panel.novo-expanded[theme=dark]{border-top:3px solid #3d464d}.novo-expansion-panel.novo-expanded[theme=pulse]{border-top:3px solid #3bafda}.novo-expansion-panel.novo-expanded[theme=neutral]{border-top:3px solid #4f5361}.novo-expansion-panel.novo-expanded[theme=navy]{border-top:3px solid #0d2d42}.novo-expansion-panel.novo-expanded[theme=contract]{border-top:3px solid #454ea0}.novo-expansion-panel.novo-expanded[theme=mountain]{border-top:3px solid #9678b6}.novo-expansion-panel.novo-expanded[theme=billableCharge],.novo-expansion-panel.novo-expanded[theme=invoiceStatement],.novo-expansion-panel.novo-expanded[theme=payableCharge]{border-top:3px solid #696d79}.novo-expansion-panel.novo-expanded[theme=submission]{border-top:3px solid #a9adbb}.novo-expansion-panel.novo-expanded[theme=note]{border-top:3px solid #747884}.novo-expansion-panel.novo-expanded[theme=ash]{border-top:3px solid #a0a0a0}.novo-expansion-panel.novo-expanded[theme=slate]{border-top:3px solid #707070}.novo-expansion-panel.novo-expanded[theme=charcoal]{border-top:3px solid #282828}.novo-expansion-panel.novo-expanded[theme=jobShift]{border-top:3px solid #454ea0}.novo-expansion-panel.novo-expanded[theme=background]{border-top:3px solid #f4f4f4}.novo-expansion-panel.novo-expanded[theme=background-dark]{border-top:3px solid #e2e2e2}.novo-expansion-panel.novo-expanded[theme=white]{border-top:3px solid #fff}.novo-expansion-panel.novo-expanded[theme=grey]{border-top:3px solid #999}.novo-expansion-panel.novo-expanded[theme=off-white]{border-top:3px solid #f4f4f4}.novo-expansion-panel.novo-expanded[theme=light]{border-top:3px solid #d9dadc}.novo-expansion-panel.novo-expanded[theme=empty]{border-top:3px solid #cccdcc}.novo-expansion-panel.novo-expanded[theme=sand]{border-top:3px solid #f4f4f4}.novo-expansion-panel.novo-expanded[theme=silver]{border-top:3px solid #e2e2e2}.novo-expansion-panel.novo-expanded[theme=stone]{border-top:3px solid #bebebe}.novo-expansion-panel{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);box-sizing:content-box;display:block;margin:0 16px;transition:margin 225ms ease-in-out}.novo-expansion-panel.novo-expanded{margin:16px 4px}.novo-expansion-panel.novo-expanded:first-child{margin-top:0}.novo-expansion-panel.novo-expanded:last-child{margin-bottom:0}.novo-expansion-panel-content{overflow:hidden}.novo-expansion-panel-content.novo-expanded{overflow:visible}.novo-expansion-panel-padding .novo-expansion-panel-body{padding:0 24px 16px}.novo-accordion .novo-expansion-panel-spacing:first-child{margin-top:0}.novo-accordion .novo-expansion-panel-spacing:last-child{margin-bottom:0}.novo-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.novo-action-row button.novo-button{margin-left:8px}[dir=rtl] .novo-action-row button.novo-button{margin-left:0;margin-right:8px}"]}]}],To.ctorParameters=function(){return[{type:So,decorators:[{type:t.Optional},{type:t.Host}]},{type:t.ChangeDetectorRef},{type:E.UniqueSelectionDispatcher},{type:t.ViewContainerRef}]},To.propDecorators={disabled:[{type:t.Input}],expanded:[{type:t.Input}],hideToggle:[{type:t.Input}],padding:[{type:t.Input}],opened:[{type:t.Output}],closed:[{type:t.Output}],expandedChange:[{type:t.Output}],_lazyContent:[{type:t.ContentChild,args:[Eo]}]};var Oo=function(){};Oo.decorators=[{type:t.Directive,args:[{selector:"novo-action-row",host:{class:"novo-action-row"}}]}];var Po=function(){function e(e,t,n){var o=this;this.panel=e,this._element=t,this._changeDetectorRef=n,this._parentChangeSubscription=u.Subscription.EMPTY,this._parentChangeSubscription=u.merge(e.opened,e.closed,e._inputChanges.pipe(g.filter((function(e){return!(!e.hideToggle&&!e.disabled)})))).subscribe((function(){return o._changeDetectorRef.markForCheck()}))}return e.prototype._toggle=function(){this.panel.toggle()},e.prototype._isExpanded=function(){return this.panel.expanded},e.prototype._getExpandedState=function(){return this.panel._getExpandedState()},e.prototype._getPanelId=function(){return this.panel.id},e.prototype._showToggle=function(){return!this.panel.hideToggle&&!this.panel.disabled},e.prototype._keydown=function(e){switch(e.keyCode){case C.SPACE:case C.ENTER:e.preventDefault(),this._toggle();break;default:return}},e.prototype.ngOnDestroy=function(){this._parentChangeSubscription.unsubscribe()},e}();Po.decorators=[{type:t.Component,args:[{selector:"novo-expansion-panel-header",template:'<span class="novo-content">\n <ng-content select="novo-panel-title"></ng-content>\n <ng-content select="novo-panel-description"></ng-content>\n <ng-content></ng-content>\n</span>\n<span [@indicatorRotate]="_getExpandedState()" *ngIf="_showToggle()"\n class="novo-expansion-indicator"></span>\n',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,animations:[Io.indicatorRotate,Io.expansionHeaderHeight],host:{class:"novo-expansion-panel-header",role:"button","[attr.id]":"panel._headerId","[attr.tabindex]":"panel.disabled ? -1 : 0","[attr.aria-controls]":"_getPanelId()","[attr.aria-expanded]":"_isExpanded()","[attr.aria-disabled]":"panel.disabled","[class.novo-expanded]":"_isExpanded()","(click)":"_toggle()","(keydown)":"_keydown($event)","[@expansionHeight]":"{\n value: _getExpandedState(),\n params: {\n collapsedHeight: collapsedHeight,\n expandedHeight: expandedHeight\n }\n }"},styles:['.novo-expansion-panel-header{align-items:center;display:flex;flex-direction:row;padding:0 24px}.novo-expansion-panel-header:focus,.novo-expansion-panel-header:hover{outline:none}.novo-expansion-panel-header.novo-expanded:focus,.novo-expansion-panel-header.novo-expanded:hover{background:inherit}.novo-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.novo-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.novo-expansion-panel-header-description,.novo-expansion-panel-header-title{align-items:center;display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .novo-expansion-panel-header-description,[dir=rtl] .novo-expansion-panel-header-title{margin-left:16px;margin-right:0}.novo-expansion-panel-header-description{flex-grow:2}.novo-expansion-indicator:after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}']}]}],Po.ctorParameters=function(){return[{type:To,decorators:[{type:t.Host}]},{type:t.ElementRef},{type:t.ChangeDetectorRef}]},Po.propDecorators={expandedHeight:[{type:t.Input}],collapsedHeight:[{type:t.Input}]};var Ao=function(){};Ao.decorators=[{type:t.Directive,args:[{selector:"novo-panel-description",host:{class:"novo-expansion-panel-header-description"}}]}];var Do=function(){};Do.decorators=[{type:t.Directive,args:[{selector:"novo-panel-title",host:{class:"novo-expansion-panel-header-title"}}]}];var xo=function(){};xo.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,I.CdkAccordionModule,c.PortalModule],exports:[So,To,Oo,Po,Do,Ao,Eo],declarations:[So,To,Oo,Po,Do,Ao,Eo]}]}];var Ro=function(e){function o(o,a){void 0===o&&(o="BaseControl"),void 0===a&&(a={});var i=e.call(this)||this;return i.__type="BaseControl",i.__type=o,i.__config=a,i.validators=a.validators||[],i.asyncValidators=a.asyncValidators||[],i.value=a.value,i.key=a.key||"",i.label=a.label||"",i.checkboxLabel=a.checkboxLabel,i.name=a.name||"",i.required=!!a.required,i.hidden=!!a.hidden,i.encrypted=!!a.encrypted,i.sortOrder=void 0===a.sortOrder?1:a.sortOrder,i.controlType=a.controlType||"",i.type=a.type,i.subType=a.subType,i.metaType=a.metaType,i.placeholder=a.placeholder||"",i.config=a.config||null,i.dirty=!(void 0===a.value||null===a.value),i.multiple=!!a.multiple,i.headerConfig=a.headerConfig||null,i.currencyFormat=a.currencyFormat||null,i.associatedEntity=a.associatedEntity||null,i.optionsType=a.optionsType||null,i.options=a.options||[],i.forceClear=new t.EventEmitter,i.readOnly=!!a.readOnly||!!a.disabled,i.disabled=!!a.disabled,i.layoutOptions=a.layoutOptions||{},i.military=!!a.military,i.dateFormat=a.dateFormat,i.textMaskEnabled=a.textMaskEnabled,i.maskOptions=a.maskOptions,i.allowInvalidDate=a.allowInvalidDate,i.startDate=a.startDate,i.endDate=a.endDate,i.restrictFieldInteractions=!!a.restrictFieldInteractions,i.highlighted=!!a.highlighted,R.isEmpty(a.warning)||(i.warning=a.warning),i.required&&i.validators.push(n.Validators.required),R.isBlank(a.maxlength)||(i.maxlength=a.maxlength,i.validators.push(n.Validators.maxLength(i.maxlength))),R.isBlank(a.minlength)||(i.minlength=a.minlength,i.validators.push(n.Validators.minLength(i.minlength))),i.closeOnSelect=!!a.closeOnSelect,i.interactions=a.interactions,i.dataSpecialization=a.dataSpecialization,i.dataType=a.dataType,i.appendToBody=!!a.appendToBody,i.appendToBody&&wt("'appendToBody' has been deprecated. Please remove this attribute."),i.parentScrollSelector=a.parentScrollSelector,i.description=a.description,a.tooltip&&(i.tooltip=a.tooltip,i.tooltipPosition=a.tooltipPosition,i.tooltipSize=a.tooltipSize,i.tooltipPreline=a.tooltipPreline,i.removeTooltipArrow=a.removeTooltipArrow,i.tooltipAutoPosition=a.tooltipAutoPosition),i.template=a.template,i.customControlConfig=a.customControlConfig,i.tipWell=a.tipWell,i.width=a.width,i.startupFocus=!!a.startupFocus,a.fileBrowserImageUploadUrl&&(i.fileBrowserImageUploadUrl=a.fileBrowserImageUploadUrl),a.isEmpty&&(i.isEmpty=a.isEmpty),i.weekStart=a.weekStart||0,i.disabledDateMessage=a.disabledDateMessage,i}return te(o,e),o}((function(){this.isEmbedded=!1,this.isInlineEmbedded=!1,this.highlighted=!1})),Mo=function(){function e(){}return e.prototype.showStateRequiredFlag=function(e,t){return"state"===e&&!R.isEmpty(t.config.state)&&t.config.state.required&&R.isBlank(t.value.state)&&t.config.state.updated&&!R.isBlank(t.value.countryName)&&t.config.state.pickerConfig&&t.config.state.pickerConfig.defaultOptions&&t.config.state.pickerConfig.defaultOptions.length>0},e.maxInteger=function(e){return e.value<2147483647?null:{integerTooLarge:!0}},e.minYear=function(e){return e.value?e.value>=1753?null:{minYear:!0}:null},e.maxDouble=function(e){return e.value<Number.MAX_SAFE_INTEGER?null:{doubleTooLarge:!0}},e.isEmail=function(e){return!e.value||/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i.test(e.value)?null:{invalidEmail:!0}},e.isValidAddress=function(e){var t=[],n=[],o=null,a=!1;if(e.value&&e.config){var i=!0,r=!0;return["address1","address2","city","state","zip","countryID"].forEach((function(o){R.isEmpty(e.config[o])||((-1===["countryID","state"].indexOf(o)&&e.config[o].required&&!R.isBlank(e.value[o])&&R.isEmpty(e.value[o])||function(e,t){return"countryID"===e&&!R.isEmpty(t.config.countryID)&&t.config.countryID.required&&R.isBlank(t.value.countryName)&&t.config.countryID.updated}(o,e)||function(e,t){return"state"===e&&!R.isEmpty(t.config.state)&&t.config.state.required&&R.isBlank(t.value.state)&&t.config.state.updated&&!R.isBlank(t.value.countryName)&&t.config.state.pickerConfig&&t.config.state.pickerConfig.defaultOptions&&t.config.state.pickerConfig.defaultOptions.length>0}(o,e))&&(i=!1,t.push(e.config[o].label)),!("countryID"!==o&&e.config[o].required&&R.isEmpty(e.value[o])||"countryID"===o&&!R.isEmpty(e.config.countryID)&&e.config.countryID.required&&R.isEmpty(e.value.countryName))||"state"===o&&!R.isBlank(e.value.countryName)&&e.config.state.pickerConfig&&e.config.state.pickerConfig.defaultOptions&&0===e.config.state.pickerConfig.defaultOptions.length||(r=!1),!R.isEmpty(e.config[o].maxlength)&&!R.isEmpty(e.value[o])&&e.value[o].length>e.config[o].maxlength&&(a=!0,n.push(o),r=!1))})),i&&r&&!a||(o={}),i||(o.invalidAddress=!0,o.invalidAddressFields=t),r||(o.invalidAddressForForm=!0),a&&(o.maxlength=!0,o.maxlengthFields=n),o}return null},e}(),Fo=function(e){function t(t){var n=e.call(this,"AddressControl",t)||this;return n.controlType="address",n.validators.push(Mo.isValidAddress),n}return te(t,e),t}(Ro),Lo=function(e){function t(t){var n=e.call(this,"CheckListControl",t)||this;return n.controlType="checklist",n.options=t.options||[],n}return te(t,e),t}(Ro),No=function(e){function t(t){var n=e.call(this,"CheckboxControl",t)||this;return n.controlType="checkbox",n}return te(t,e),t}(Ro),Bo=function(e){function t(t){var n=e.call(this,"DateControl",t)||this;return n.controlType="date",n}return te(t,e),t}(Ro),Ho=function(e){function t(t){var n=e.call(this,"DateTimeControl",t)||this;return n.controlType="date-time",n}return te(t,e),t}(Ro),_o=function(e){function t(t){var n=e.call(this,"EditorControl",t)||this;return n.controlType="editor",n.minimal=!1,n}return te(t,e),t}(Ro),Go=function(e){function t(t){var n=e.call(this,"AceEditorControl",t)||this;return n.controlType="ace-editor",n}return te(t,e),t}(Ro),Vo=function(e){function t(t){var n=e.call(this,"FileControl",t)||this;return n.controlType="file",n.placeholder=t.placeholder,n.multiple=t.multiple,n}return te(t,e),t}(Ro),Uo=function(e){function t(t){var n=e.call(this,"NativeSelectControl",t)||this;return n.controlType="native-select",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),Ko=function(e){function t(t){var n=e.call(this,"PickerControl",t)||this;return n.controlType="picker",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),zo=function(e){function t(t){var n=e.call(this,Object.assign(t,{parentScrollSelector:".table-container"}))||this;return n.__type="TablePickerControl",n}return te(t,e),t}(Ko),jo=function(e){function t(t){var n=e.call(this,"QuickNoteControl",t)||this;return n.controlType="quick-note",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),$o=function(e){function t(t){var n=e.call(this,"RadioControl",t)||this;return n.controlType="radio",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),Wo=function(e){function t(t){var n=e.call(this,"ReadOnlyControl",t)||this;return n.controlType="read-only",t.readOnly=!0,n}return te(t,e),t}(Ro),Zo=function(e){function t(t){var n=e.call(this,"SelectControl",t)||this;return n.controlType="select",n.options=[],n.options=t.options||[],n.placeholder=t.placeholder||"",n}return te(t,e),t}(Ro),Yo=function(e){function t(t){var n=e.call(this,"TextAreaControl",t)||this;return n.controlType="text-area",n}return te(t,e),t}(Ro),qo=function(e){function t(t){var n=e.call(this,"TextBoxControl",t)||this;return n.controlType="textbox",n.type=n.getTextboxType(t.type)||"",n.subType=t.type||"",n.setValidators(n.subType),n}return te(t,e),t.prototype.setValidators=function(e){switch(e){case"email":this.validators.push(Mo.isEmail);break;case"number":case"currency":this.validators.push(Mo.maxInteger);break;case"float":case"percentage":this.validators.push(Mo.maxDouble);break;case"year":this.validators.push(Mo.minYear)}},t.prototype.getTextboxType=function(e){switch(e){case"percentage":case"currency":case"float":case"year":return"number";default:return e}},t}(Ro),Jo=function(e){function t(t){var n=e.call(this,"TilesControl",t)||this;return n.controlType="tiles",n.options=[],n.options=t.options||[],n}return te(t,e),t}(Ro),Xo=function(e){function t(t){var n=e.call(this,"TimeControl",t)||this;return n.controlType="time",n}return te(t,e),t}(Ro),Qo=function(e){var t=this;this.__type="GroupedControl",Object.keys(e).forEach((function(n){return t[n]=e[n]}))},ea=function(){function e(){}return e.create=function(e,t){switch(e){case"AddressControl":return new Fo(t);case"CheckboxControl":return new No(t);case"CheckListControl":case"CheckListControl":return new Lo(t);case"DateTimeControl":return new Ho(t);case"EditorControl":return new _o(t);case"FileControl":return new Vo(t);case"NativeSelectControl":return new Uo(t);case"PickerControl":return new Ko(t);case"TablePickerControl":return new zo(t);case"QuickNoteControl":return new jo(t);case"RadioControl":return new $o(t);case"ReadOnlyControl":return new Wo(t);case"TextAreaControl":return new Yo(t);case"TextBoxControl":return new qo(t);case"SelectControl":return new Zo(t);case"TilesControl":return new Jo(t);case"TimeControl":return new Xo(t);default:return console.warn('[ControlFactory] - unable to find control for type. Make sure to set "editorType" and "editorConfig" on your column',e),null}},e}(),ta=function(e){function t(t){var n=e.call(this,t.template,t)||this;return n.controlType="custom",n.controlType=t.template,n}return te(t,e),t}(Ro),na=function(e){function o(n,o){var a=e.call(this,n,o.validators,o.asyncValidators)||this;return a.displayValueChanges=new t.EventEmitter,a.valueHistory=[],a.validators=o.validators,a.initialValue=n,a.valueHistory.push(n),a.key=o.key,a.label=o.label,a.readOnly=o.readOnly,a.hidden=o.hidden,a.encrypted=o.encrypted,a.config=o.config,a.type=o.type,a.subType=o.subType,a.required=o.required,a.hasRequiredValidator=a.required,a.tooltip=o.tooltip,a.tooltipPosition=o.tooltipPosition,a.tooltipSize=o.tooltipSize,a.tooltipPreline=o.tooltipPreline,a.removeTooltipArrow=o.removeTooltipArrow,a.tooltipAutoPosition=o.tooltipAutoPosition,a.label=o.label,a.name=o.name,a.required=o.required,a.sortOrder=o.sortOrder,a.controlType=o.controlType,a.placeholder=o.placeholder,a.minimal=o.minimal,a.multiple=o.multiple,a.headerConfig=o.headerConfig,a.optionsType=o.optionsType,a.readOnly=o.readOnly,a.layoutOptions=o.layoutOptions,a.military=o.military,a.dateFormat=o.dateFormat,a.currencyFormat=o.currencyFormat,a.startDate=o.startDate,a.endDate=o.endDate,a.weekStart=o.weekStart,a.textMaskEnabled=o.textMaskEnabled,a.textMaskEnabled=o.textMaskEnabled,a.maskOptions=o.maskOptions,a.allowInvalidDate=o.allowInvalidDate,a.maxlength=o.maxlength,a.minlength=o.minlength,a.closeOnSelect=o.closeOnSelect,a.interactions=o.interactions,a.checkboxLabel=o.checkboxLabel,a.restrictFieldInteractions=o.restrictFieldInteractions,a.appendToBody=o.appendToBody,a.appendToBody&&wt("'appendToBody' has been deprecated. Please remove this attribute."),a.parentScrollSelector=o.parentScrollSelector,a.description=o.description,a.options=o.options,a.tipWell=o.tipWell,a.customControlConfig=o.customControlConfig,a.warning=o.warning,a.disabledDateMessage=o.disabledDateMessage,a.readOnly?a.disable():a.enable(),a}return te(o,e),o.prototype.hide=function(e){void 0===e&&(e=!0),this.hidden=!0,e&&this.setValue(null)},o.prototype.show=function(){this.hidden=!1},o.prototype.setRequired=function(e){if(this.required=e,this.required&&!this.hasRequiredValidator)(t=ae(this.validators)).push(n.Validators.required),this.setValidators(t),this.updateValueAndValidity({emitEvent:!1}),this.hasRequiredValidator=this.required;else if(!this.required&&this.hasRequiredValidator){var t;t=(t=ae(this.validators)).filter((function(e){return e!==n.Validators.required})),this.setValidators(t),this.updateValueAndValidity({emitEvent:!1}),this.hasRequiredValidator=this.required}},o.prototype.setValue=function(t,n){var o=this,a=void 0===n?{}:n,i=a.onlySelf,r=a.emitEvent,s=a.emitModelToViewChange,l=a.emitViewToModelChange;this.markAsDirty(),this.markAsTouched(),this.displayValueChanges.emit(t),e.prototype.setValue.call(this,t,{onlySelf:i,emitEvent:r,emitModelToViewChange:s,emitViewToModelChange:l}),clearTimeout(this.historyTimeout),this.historyTimeout=setTimeout((function(){o.valueHistory.push(t)}),300)},o.prototype.setReadOnly=function(e){this.readOnly=e,this.readOnly?this.disable():this.enable()},o.prototype.disable=function(t){void 0===t&&(t={emitEvent:!1}),void 0===t.emitEvent&&(t.emitEvent=!1),e.prototype.disable.call(this,t)},o.prototype.enable=function(t){void 0===t&&(t={emitEvent:!1}),void 0===t.emitEvent&&(t.emitEvent=!1),e.prototype.enable.call(this,t)},o.prototype.markAsInvalid=function(e){this.markAsDirty(),this.markAsTouched(),this.setErrors(Object.assign({},this.errors,{custom:e}))},o.prototype.markAsValid=function(){this.setErrors(null)},o}(n.FormControl),oa=function(e){function n(){var n=e.apply(this,ae(arguments))||this;return n.fieldInteractionEvents=new t.EventEmitter,n}return te(n,e),Object.defineProperty(n.prototype,"value",{get:function(){return this.getRawValue()},set:function(e){this._value=e},enumerable:!1,configurable:!0}),n.prototype.enableAllControls=function(){for(var e in this.controls)this.controls[e].readOnly&&(this.controls[e].readOnly=!1,this.controls[e].enable())},n.prototype.disableAllControls=function(){for(var e in this.controls)this.controls[e].readOnly||(this.controls[e].readOnly=!0,this.controls[e].disable())},n}(n.FormGroup),aa=function(){function e(){}return e.prototype.getOptionsConfig=function(e,t,n){return{field:"value",format:"$label",options:function(n){return new Promise((function(o,a){n&&n.length?e.get(t.optionsUrl+"?filter="+(n||"")).subscribe(o,a):o([])}))}}},e}();aa.decorators=[{type:t.Injectable}],aa.ctorParameters=function(){return[]};var ia=function(){function e(e,t){this.labels=e,this.optionsService=t,this.ASSOCIATED_ENTITY_LIST=["Candidate","ClientContact","ClientCorporation","CorporationDepartment","Lead","Opportunity","JobOrder","CorporateUser","Person","Placement"],this.ENTITY_PICKER_LIST=["Candidate","CandidateText","Client","ClientText","ClientContact","ClientContactText","ClientCorporation","ClientCorporationText","Lead","LeadText","Opportunity","OpportunityText","JobOrder","JobOrderText","CorporateUser","CorporateUserText","Person","PersonText","Placement"]}return e.prototype.toFormGroup=function(e){var t={};return e.forEach((function(e){var n=R.isBlank(e.value)?"":e.value;t[e.key]=new na(n,e)})),new oa(t)},e.prototype.emptyFormGroup=function(){return new oa({})},e.prototype.addControls=function(e,t){t.forEach((function(t){var n=R.isBlank(t.value)?"":t.value,o=new na(n,t);e.addControl(t.key,o)}))},e.prototype.removeControls=function(e,t){t.forEach((function(t){e.removeControl(t.key)}))},e.prototype.toFormGroupFromFieldset=function(e){var t=[];return e.forEach((function(e){t.push.apply(t,ae(e.controls))})),this.toFormGroup(t)},e.prototype.hasAssociatedEntity=function(e){return!(!e.associatedEntity||!~this.ASSOCIATED_ENTITY_LIST.indexOf(e.associatedEntity.entity))},e.prototype.determineInputType=function(e){var t,n={DATETIME:"datetime",TIME:"time",MONEY:"currency",PERCENTAGE:"percentage",HTML:"editor","HTML-MINIMAL":"editor-minimal",YEAR:"year",WORKFLOW_OPTIONS:"select",SPECIALIZED_OPTIONS:"select",ALL_WORKFLOW_OPTIONS:"select",WorkflowOptionsLookup:"select",SpecializedOptionsLookup:"select",SimplifiedOptionsLookup:"select",AllWorkflowOptionsLookup:"select"},o={Timestamp:"date",Date:"date",Boolean:"tiles"},a={CHECKBOX:"radio",RADIO:"radio",SELECT:"select",TILES:"tiles"},i={CHECKBOX:"checklist",RADIO:"checklist",SELECT:"chips"},r={file:"file",COMPOSITE:"address"},s={Double:"float",BigDecimal:"float",Integer:"number"};return"TO_MANY"===e.type?t=this.hasAssociatedEntity(e)?!1===e.multiValue?"entitypicker":"entitychips":!1===e.multiValue?"picker":"chips":"TO_ONE"===e.type?t="SYSTEM"===e.dataSpecialization&&["WorkflowOptionsLookup","SpecializedOptionsLookup","AllWorkflowOptionsLookup"].includes(e.dataType)?n[e.dataType]:["WORKFLOW_OPTIONS","SPECIALIZED_OPTIONS","ALL_WORKFLOW_OPTIONS"].includes(e.dataSpecialization)?n[e.dataSpecialization]:["SimplifiedOptionsLookup","SpecializedOptionsLookup"].includes(e.dataType)?e.options&&Object.keys(a).indexOf(e.inputType)>-1&&!e.multiValue?a[e.inputType]:e.options&&Object.keys(i).indexOf(e.inputType)>-1&&e.multiValue?i[e.inputType]:n[e.dataType]:this.hasAssociatedEntity(e)?"entitypicker":"picker":e.optionsUrl&&"SELECT"===e.inputType?t=e.optionsType&&~this.ENTITY_PICKER_LIST.indexOf(e.optionsType)?"entitypicker":"picker":Object.keys(n).indexOf(e.dataSpecialization)>-1?t=n[e.dataSpecialization]:Object.keys(o).indexOf(e.dataType)>-1?t=o[e.dataType]:"TEXTAREA"===e.inputType?t="textarea":e.options&&Object.keys(a).indexOf(e.inputType)>-1&&!e.multiValue?t=a[e.inputType]:e.options&&Object.keys(i).indexOf(e.inputType)>-1&&e.multiValue?t=i[e.inputType]:Object.keys(r).indexOf(e.type)>-1?t=r[e.type]:Object.keys(s).indexOf(e.dataType)>-1&&(t=s[e.dataType]),t},e.prototype.isFieldEncrypted=function(e){return e.indexOf("customEncrypted")>-1},e.prototype.getControlForField=function(e,t,n,o,a,i){var r,s;void 0===a&&(a=!1);var l,c=this.determineInputType(e)||e.type,d={metaType:e.type,type:c,key:e.name,label:e.label,placeholder:e.hint||"",required:e.required||e.systemRequired,hidden:!e.required,encrypted:this.isFieldEncrypted(e.name?e.name.toString():""),value:e.value||e.defaultValue,sortOrder:e.sortOrder,associatedEntity:e.associatedEntity,optionsType:e.optionsType,multiple:e.multiValue,readOnly:!!e.disabled||!!e.readOnly,disabled:e.disabled,maxlength:e.maxLength,interactions:e.interactions,dataSpecialization:e.dataSpecialization,dataType:e.dataType,description:e.description||"",tooltip:e.tooltip,tooltipPosition:e.tooltipPosition,customControl:e.customControl,template:e.template,customControlConfig:e.customControlConfig,restrictFieldInteractions:e.restrictFieldInteractions,validators:e.validators,warning:e.warning,config:e.config||{},closeOnSelect:e.closeOnSelect,layoutOptions:e.layoutOptions};this.inferDateRange(d,e);var p,u=this.getControlOptions(e,t,n,i);switch(Array.isArray(u)&&"chips"!==c&&"picker"!==c?d.options=u:!Array.isArray(u)||"chips"!==c&&"picker"!==c?u&&(d.config=Object.assign(Object.assign({},u),d&&d.config)):d.config={options:u},"year"===c&&(d.maxlength=4),o&&o[e.name]&&(o[e.name].resultsTemplate&&(p=o[e.name].resultsTemplate,d.config.resultsTemplate=p,delete o[e.name].resultsTemplate),o[e.name].overridePreviewTemplate&&(p=o[e.name].overridePreviewTemplate,d.config.overridePreviewTemplate=p,delete o[e.name].overridePreviewTemplate),o[e.name].pickerCallback&&(d.config.callback=o[e.name].pickerCallback),o[e.name].type&&(c=o[e.name].type),o[e.name].columns&&(d.config.columns=o[e.name].columns,d.closeOnSelect=!0,delete d.label),o[e.name].warning&&(d.warning=o[e.name].warning),Object.assign(d,o[e.name])),c){case"entitychips":d.multiple=!0,d.config.resultsTemplate=p||At,d.config.previewTemplate=Pt,l=new Ko(d);break;case"chips":d.multiple=!0,l=new Ko(d);break;case"entitypicker":d.config.resultsTemplate=p||At,l=new Ko(d);break;case"picker":l=new Ko(d);break;case"datetime":d.military=!!n&&!!n.military,d.weekStart=n&&n.weekStart?n.weekStart:0,l=new Ho(d);break;case"date":d.dateFormat=e.dateFormat,d.textMaskEnabled=e.textMaskEnabled,d.allowInvalidDate=e.allowInvalidDate,d.military=!!n&&!!n.military,d.weekStart=n&&n.weekStart?n.weekStart:0,l=new Bo(d);break;case"time":d.military=!!n&&!!n.military,l=new Xo(d);break;case"currency":case"money":case"email":case"percentage":case"float":case"number":case"year":"money"===c&&(c="currency"),d.type=c,l=new qo(d);break;case"text":l=new qo(d);break;case"textarea":l=new Yo(d);break;case"editor":l=new _o(d);break;case"editor-minimal":(l=new _o(d)).minimal=!0;break;case"tiles":l=new Jo(d);break;case"checkbox":d.checkboxLabel=e.checkboxLabel,l=new No(d);break;case"checklist":l=new Lo(d);break;case"radio":l=new $o(d);break;case"select":l=new Zo(d);break;case"address":if(d.required=e.required||!1,R.isBlank(d.config)&&(d.config={}),d.config.required=e.required,d.config.readOnly=d.readOnly,e.fields&&e.fields.length)try{for(var m=ne(e.fields),h=m.next();!h.done;h=m.next()){var g=h.value;d.config[g.name]={required:!!g.required,hidden:!!g.readOnly},R.isEmpty(g.label)||(d.config[g.name].label=g.label),R.isEmpty(g.maxLength)||(d.config[g.name].maxlength=g.maxLength),d.required=d.required||g.required,g.defaultValue?(R.isBlank(d.value)&&(d.value={}),d.value[g.name]=g.defaultValue):"countryID"===g.name&&(R.isBlank(d.value)&&(d.value={}),d.value[g.name]=1),"state"!==g.name&&"countryID"!==g.name||("countryID"===g.name&&(g.optionsType="Country"),g.optionsUrl||(g.optionsUrl="options/"+g.optionsType),d.config[g.name].pickerConfig=this.getControlOptions(g,t,n,i))}}catch(e){r={error:e}}finally{try{h&&!h.done&&(s=m.return)&&s.call(m)}finally{if(r)throw r.error}}d.isEmpty=this.isAddressEmpty,l=new Fo(d);break;case"file":l=new Vo(d);break;case"custom":l=new ta(d);break;default:l=new qo(d)}return l},e.prototype.shouldCreateControl=function(e){return e.systemRequired&&(e.readOnly=!1),"id"!==e.name&&(!["SYSTEM","SECTION_HEADER"].includes(e.dataSpecialization)||["address","billingAddress","secondaryAddress"].includes(e.name))&&!e.readOnly},e.prototype.toControls=function(e,t,n,o,a,i){var r=this;void 0===i&&(i=!1);var s=[];e&&e.fields&&e.fields.forEach((function(e){if(r.shouldCreateControl(e)){var l=r.getControlForField(e,n,o,a,i);"currency"===l.subType&&(l.currencyFormat=t),s.push(l)}}));return s},e.prototype.toTableControls=function(e,t,n,o,a){var i=this.toControls(e,t,n,o,a,!0),r={};return i.forEach((function(e){r[e.key]={editorType:e.__type,editorConfig:e.__config}})),r},e.prototype.toFieldSets=function(e,t,n,o,a,i){var r=this,s=[];return e&&e.fields&&this.getFormFields(e).forEach((function(e){if(r.isHeader(e))e.enabled&&r.insertHeaderToFieldsets(s,e);else if(r.isEmbeddedField(e)){r.insertHeaderToFieldsets(s,e),r.getEmbeddedFields(e).forEach((function(l){if(r.shouldCreateControl(l)){var c=r.createControl(l,i,n,o,a,t);c=r.markControlAsEmbedded(c,e.dataSpecialization?e.dataSpecialization.toLowerCase():null),s[s.length-1].controls.push(c)}else r.isHeader(l)&&r.insertHeaderToFieldsets(s,l)}))}else if(r.shouldCreateControl(e)){var l=r.createControl(e,i,n,o,a,t);e.inlineEmbeddedAssociatedEntityField&&(l=r.markControlAsEmbedded(l,"inline_embedded")),0===s.length&&s.push({controls:[]}),s[s.length-1].controls.push(l)}})),s.length>0?s:[{controls:this.toControls(e,t,n,o)}]},e.prototype.isEmbeddedField=function(e){return e.dataSpecialization&&["embedded"].includes(e.dataSpecialization.toLowerCase())&&!e.readOnly},e.prototype.createControl=function(e,t,n,o,a,i){var r=this.isEmbeddedFieldData(e,t)?this.getEmbeddedFieldData(e,t):this.getFieldData(e,t),s=this.getControlForField(e,n,o,a,void 0,r);return"currency"===s.subType&&(s.currencyFormat=i),s},e.prototype.isEmbeddedFieldData=function(e,t){return t&&e.name.includes(".")},e.prototype.getFieldData=function(e,t){return t&&t[e.name]||null},e.prototype.getEmbeddedFieldData=function(e,t){var n=oe(e.name.split("."),2),o=n[0],a=n[1];return t&&t[o]&&t[o][a]||null},e.prototype.getFormFields=function(e){var t=e.sectionHeaders?e.sectionHeaders.map((function(e){return e.isSectionHeader=!0,e})):[],n=e.fields.map((function(t){return t.parentEntity=e.entity,t.hasOwnProperty("sortOrder")||(t.sortOrder=Number.MAX_SAFE_INTEGER-1),t})),o=this.getInlineEmbeddedFields(n);return ae(t,n=n.filter((function(e){return!e.dataSpecialization||"inline_embedded"!==e.dataSpecialization.toLowerCase()})),o).sort(R.sortByField(["sortOrder","name"]))},e.prototype.getInlineEmbeddedFields=function(e){var t=this,n=[];return e.filter((function(e){return e.dataSpecialization&&"inline_embedded"===e.dataSpecialization.toLowerCase()})).forEach((function(e){n=ae(n,t.getAssociatedFieldsForInlineEmbedded(e))})),n},e.prototype.getAssociatedFieldsForInlineEmbedded=function(e){return this.getEmbeddedFields(e).map((function(e){return e.inlineEmbeddedAssociatedEntityField=!0,e}))},e.prototype.getEmbeddedFields=function(e){return e.associatedEntity.fields.filter((function(e){return"id"!==e.name})).map((function(t){return t.name.startsWith(e.name+".")||(t.name=e.name+"."+t.name),t})).sort(R.sortByField(["sortOrder","name"]))},e.prototype.isHeader=function(e){return!R.isBlank(e)&&(e.hasOwnProperty("isSectionHeader")&&e.isSectionHeader||e.dataSpecialization&&"section_header"===e.dataSpecialization.toLowerCase())},e.prototype.insertHeaderToFieldsets=function(e,t){var n={controls:[],isEmbedded:t.dataSpecialization&&"embedded"===t.dataSpecialization.toLowerCase(),isInlineEmbedded:t.dataSpecialization&&"inline_embedded"===t.dataSpecialization.toLowerCase(),key:t.name};t.name&&t.name.startsWith("customObject")&&t.associatedEntity&&t.associatedEntity.label?e.push(Object.assign({title:t.associatedEntity.label||t.label,icon:t.icon||"bhi-card-expand"},n)):e.push(Object.assign({title:t.label,icon:t.icon||"bhi-section"},n))},e.prototype.markControlAsEmbedded=function(e,t){return R.isBlank(e.config)&&(e.config={}),e.config.embedded=!0,e.isEmbedded="embedded"===t,e.isInlineEmbedded="inline_embedded"===t,e},e.prototype.getControlOptions=function(e,t,n,o){return"Boolean"!==e.dataType||e.options?"ALL_WORKFLOW_OPTIONS"===e.dataSpecialization&&e.options?e.options:e.workflowOptions?this.getWorkflowOptions(e.workflowOptions,o):"SPECIALIZED_OPTIONS"===e.dataSpecialization||e.options&&["SpecializedOptionsLookup","SimplifiedOptionsLookup"].includes(e.dataType)?e.options:e.optionsUrl?this.optionsService.getOptionsConfig(t,e,n):Array.isArray(e.options)&&"chips"===e.type?{field:"value",format:"$label",options:e.options}:e.options?e.options:null:[{value:!1,label:this.labels.no},{value:!0,label:this.labels.yes}]},e.prototype.getWorkflowOptions=function(e,t){var n=null,o="initial";(null==t?void 0:t.id)&&(n=Object.assign(Object.assign({},t),{value:t.id,label:t.label||t.id}),o=t.id);var a=e[o]||[];return n&&!a.find((function(e){return e.value===n.value}))&&a.unshift(n),a},e.prototype.setInitialValues=function(e,t,n,o){for(var a=0;a<e.length;a++){var i=e[a],r=t[o?i.key.replace(o,""):i.key];R.isBlank(r)||(Array.isArray(r)&&0===r.length||Array.isArray(r)&&r.length>0&&0===(r=r.filter((function(e){return!(0===Object.keys(e).length&&e.constructor===Object)}))).length||r.data&&0===r.data.length||0===Object.keys(r).length&&r.constructor===Object||("Date"===i.dataType&&"string"==typeof r&&"skipConversion"!==i.optionsType&&(r=p.startOfDay(r)),i.value=r,i.dirty=!n))}},e.prototype.setInitialValuesFieldsets=function(e,t,n){var o=this;e.forEach((function(e){o.setInitialValues(e.controls,t,n)}))},e.prototype.forceShowAllControls=function(e){e.forEach((function(e){e.hidden=!1}))},e.prototype.forceShowAllControlsInFieldsets=function(e){e.forEach((function(e){e.controls.forEach((function(e){e.hidden=!1}))}))},e.prototype.forceValidation=function(e){Object.keys(e.controls).forEach((function(t){var n=e.controls[t];n.required&&R.isBlank(e.value[n.key])&&(n.markAsDirty(),n.markAsTouched())}))},e.prototype.isAddressEmpty=function(e){var t=!0;return e.value&&e.config&&["address1","address2","city","state","zip","countryID"].forEach((function(n){!("countryID"!==n&&!R.isEmpty(e.config[n])&&e.config[n].required&&(R.isBlank(e.value[n])||R.isEmpty(e.value[n]))||"countryID"===n&&!R.isEmpty(e.config.countryID)&&e.config.countryID.required&&R.isEmpty(e.value.countryName))||"state"===n&&!R.isBlank(e.value.countryName)&&e.config.state.pickerConfig&&e.config.state.pickerConfig.defaultOptions&&0===e.config.state.pickerConfig.defaultOptions.length||(t=!1)})),t},e.prototype.getStartDateFromRange=function(e){return e.minDate?p.parse(e.minDate):e.minOffset?p.addDays(p.startOfToday(),e.minOffset):void 0},e.prototype.getEndDateFromRange=function(e){return e.maxDate?p.parse(e.maxDate):e.minOffset?p.addDays(p.startOfToday(),e.minOffset):void 0},e.prototype.inferDateRange=function(e,t){var n;"Date"===t.dataType&&t.allowedDateRange&&(e.startDate=this.getStartDateFromRange(t.allowedDateRange),e.endDate=this.getEndDateFromRange(t.allowedDateRange),e.disabledDateMessage=null===(n=t.allowedDateRange)||void 0===n?void 0:n.disabledDateMessage)},e.prototype.inflateEmbeddedProperties=function(e){return e&&Object.keys(e).filter((function(e){return e.includes(".")})).forEach((function(t){var n=oe(t.split("."),2),o=n[0],a=n[1];e[o]||(e[o]={}),e[o][a]=e[t],delete e[t]})),e},e}();function ra(){var e={},t=new Promise((function(t,n){e.resolve=t,e.reject=n}));return t.resolve=e.resolve,t.reject=e.reject,t}ia.decorators=[{type:t.Injectable}],ia.ctorParameters=function(){return[{type:Ne},{type:aa}]};var sa=function(){},la=function(){function e(){this.component=null,this.contentRef=null,this.containerRef=null,this.isClosed=!1,this._onClosed=ra()}return Object.defineProperty(e.prototype,"onClosed",{get:function(){return this._onClosed},enumerable:!1,configurable:!0}),e.prototype.open=function(){document.body.classList.add("modal-open")},e.prototype.close=function(e){document.body.classList.remove("modal-open"),this.contentRef&&this.contentRef.destroy(),this.containerRef&&this.containerRef.destroy(),this._onClosed.resolve(e)},e}();la.decorators=[{type:t.Injectable}];var ca=function(){function e(e,t){this.modalRef=e,this.componentUtils=t}return e.prototype.ngAfterViewInit=function(){var e=this;setTimeout((function(){e.modalRef.contentRef=e.componentUtils.append(e.modalRef.component,e.container)}))},e}();ca.decorators=[{type:t.Component,args:[{selector:"novo-modal-container",template:"<span #container></span>"}]}],ca.ctorParameters=function(){return[{type:la},{type:mt}]},ca.propDecorators={container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef}]}]};var da=function(){function e(e){this.modalRef=e}return e.prototype.close=function(){this.modalRef.close()},e}();da.decorators=[{type:t.Component,args:[{selector:"novo-modal",template:'\n <ng-content select="header"></ng-content>\n <ng-content select="section"></ng-content>\n <footer><ng-content select="button"></ng-content></footer>\n '}]}],da.ctorParameters=function(){return[{type:la}]};var pa=function(){function e(e){this.modalRef=e,this.cancel=new t.EventEmitter,this.modalRef=e}return e.prototype.close=function(){this.cancel.emit(),this.modalRef.close()},e.prototype.ngOnInit=function(){switch(this.type){case"success":this.iconType="bhi-check";break;case"warning":case"error":this.iconType="bhi-caution-o";break;case"custom":this.iconType="bhi-"+this.icon}},e}();pa.decorators=[{type:t.Component,args:[{selector:"novo-notification",template:'\n <button class="modal-close" theme="icon" icon="times" (click)="close()"></button>\n <header><ng-content select="label"></ng-content></header>\n <section class="notification-body">\n <i class="indicator" [ngClass]="iconType" *ngIf="iconType"></i>\n <ng-content select="h1"></ng-content>\n <ng-content select="h2"></ng-content>\n <ng-content select="p"></ng-content>\n </section>\n <footer><ng-content select="button"></ng-content></footer>\n '}]}],pa.ctorParameters=function(){return[{type:la}]},pa.propDecorators={type:[{type:t.Input}],icon:[{type:t.Input}],cancel:[{type:t.Output}]};var ua=function(){function e(e){this.componentUtils=e}return Object.defineProperty(e.prototype,"parentViewContainer",{set:function(e){this._parentViewContainer=e},enumerable:!1,configurable:!0}),e.prototype.open=function(e,t){if(void 0===t&&(t={}),!this._parentViewContainer)throw new Error("No parent view container specified for the ModalService. Set it inside your main application. \nthis.modalService.parentViewContainer = view (ViewContainerRef)");var n=new la;n.component=e,n.open();var o=[{provide:la,useValue:n},{provide:sa,useValue:t}];return n.containerRef=this.componentUtils.append(ca,this._parentViewContainer,o),n},e}();ua.decorators=[{type:t.Injectable}],ua.ctorParameters=function(){return[{type:mt}]};var ma=function(){function e(e,t,n){this.modalRef=e,this.params=t,this.labels=n}return e.prototype.close=function(e){this.modalRef.close(e)},e}();ma.decorators=[{type:t.Component,args:[{selector:"control-confirm-modal",template:"\n <novo-notification type=\"warning\" [attr.data-automation-id]=\"'field-interaction-modal-' + params['key']\">\n <h1>{{ labels.confirmChangesModalMessage }}</h1>\n <h2 *ngIf=\"!params['message']\"><label>{{ params['label'] }}:</label> {{ params['oldValue'] }} <i class=\"bhi-arrow-right\"></i> {{ params['newValue'] }}</h2>\n <h2 *ngIf=\"params['message']\">{{ params['message'] }}</h2>\n <button theme=\"standard\" (click)=\"close(false)\" [attr.data-automation-id]=\"'field-interaction-modal-cancel' + params['key']\">{{ labels.cancel }}</button>\n <button theme=\"primary\" icon=\"check\" (click)=\"close(true)\" autofocus [attr.data-automation-id]=\"'field-interaction-modal-save-' + params['key']\">{{ labels.save }}</button>\n </novo-notification>\n "}]}],ma.ctorParameters=function(){return[{type:la},{type:sa},{type:Ne}]};var ha=function(){function e(e,t,n){this.modalRef=e,this.params=t,this.labels=n}return e.prototype.close=function(e){this.modalRef.close(e)},e}();ha.decorators=[{type:t.Component,args:[{selector:"control-prompt-modal",template:'\n <novo-notification type="warning" [attr.data-automation-id]="\'field-interaction-modal-\' + params[\'key\']">\n <h1>{{ labels.promptModalMessage }}</h1>\n <p *ngFor="let change of params[\'changes\']">{{ change }}</p>\n <button theme="standard" (click)="close(false)" [attr.data-automation-id]="\'field-interaction-modal-cancel\' + params[\'key\']">{{ labels.cancel }}</button>\n <button theme="primary" icon="check" (click)="close(true)" autofocus [attr.data-automation-id]="\'field-interaction-modal-yes-\' + params[\'key\']">{{ labels.yes }}</button>\n </novo-notification>\n '}]}],ha.ctorParameters=function(){return[{type:la},{type:sa},{type:Ne}]};var ga=function(){function e(e){this.http=e,this.mapFn=function(e){return e}}return e.prototype.get=function(e,t){return this.url=e,this.options=t,this},e.prototype.map=function(e){return this.mapFn=e,this},e.prototype.subscribe=function(e,t){return this.http.get(this.url,this.options).pipe(g.map(this.mapFn)).subscribe(e,t)},e}(),fa=function(){function e(e,t,n,o,a){var i=this;this.toaster=e,this.modalService=t,this.formUtils=n,this.http=o,this.labels=a,this._isInvokedOnInit=!1,this.getOptionsConfig=function(e,t,n,o){if(n||"optionsUrl"in e||"optionsUrlBuilder"in e||"optionsPromise"in e){var a="format"in e&&e.format||o;return Object.assign(Object.assign({options:i.createOptionsFunction(e,t,n)},"emptyPickerMessage"in e&&{emptyPickerMessage:e.emptyPickerMessage}),a&&{format:a})}return"options"in e&&Array.isArray(e.options)?{options:ae(e.options)}:void 0},this.createOptionsFunction=function(e,t,n){return function(o,a){return"optionsPromise"in e&&e.optionsPromise?e.optionsPromise(o,new ga(i.http),a):"optionsUrlBuilder"in e&&e.optionsUrlBuilder||"optionsUrl"in e&&e.optionsUrl?new Promise((function(n,a){var r="optionsUrlBuilder"in e?e.optionsUrlBuilder(o):e.optionsUrl+"?filter="+(o||"");i.http.get(r).pipe(g.map((function(e){return t?e.map(t):e}))).subscribe(n,a)})):n?"where"in e?n(e.where)(o,a):n()(o,a):void 0}}}return Object.defineProperty(e.prototype,"associations",{get:function(){return this.form.hasOwnProperty("associations")?this.form.associations:{}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentEntity",{get:function(){return this.form.hasOwnProperty("currentEntity")?this.form.currentEntity:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentEntityId",{get:function(){return this.form.hasOwnProperty("currentEntityId")?this.form.currentEntityId:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isEdit",{get:function(){return!!this.form.hasOwnProperty("edit")&&this.form.edit},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isAdd",{get:function(){return!!this.form.hasOwnProperty("edit")&&!this.form.edit},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"globals",{get:function(){return this._globals},set:function(e){this._globals=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currentKey",{get:function(){return this._currentKey},set:function(e){this._currentKey=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isInvokedOnInit",{get:function(){return this._isInvokedOnInit},set:function(e){this._isInvokedOnInit=e},enumerable:!1,configurable:!0}),e.prototype.isActiveControlValid=function(){return!!this.getValue(this.currentKey)},e.prototype.getActiveControl=function(){return this.getControl(this.currentKey)},e.prototype.getActiveKey=function(){return this.currentKey},e.prototype.getActiveValue=function(){return this.getValue(this.currentKey)},e.prototype.getActiveInitialValue=function(){return this.getInitialValue(this.currentKey)},e.prototype.getFieldSet=function(e,t){if(!e)return console.error('[FieldInteractionAPI] - invalid or missing "key"'),null;var n=(t||this.form).fieldsets.find((function(t){return t.key&&t.key.toLowerCase()===e.toLowerCase()}));return n||(console.error("[FieldInteractionAPI] - could not find a fieldset in the form by the key --",e),null)},e.prototype.getControl=function(e,t){if(!e)return console.error('[FieldInteractionAPI] - invalid or missing "key"'),null;var n=(t||this.form).controls[e];return n||(console.error("[FieldInteractionAPI] - could not find a control in the form by the key --",e),null)},e.prototype.getFormGroupArray=function(e,t){if(!e)return console.error('[FieldInteractionAPI] - invalid or missing "key"'),null;var n=(t||this.form).controls[e];return n&&n.controls?n.controls:(console.error("[FieldInteractionAPI] - could not find a form array in the form by the key --",e),null)},e.prototype.getValue=function(e,t){var n=this.getControl(e,t);return n?n.value:null},e.prototype.getRawValue=function(e,t){var n=this.getControl(e,t);return n?n.rawValue:null},e.prototype.getInitialValue=function(e,t){var n=this.getControl(e,t);return n?n.initialValue:null},e.prototype.setValue=function(e,t,n,o){var a=this.getControl(e,o);a&&!a.restrictFieldInteractions&&(a.setValue(t,n),this.triggerEvent({controlKey:e,prop:"value",value:t},o))},e.prototype.patchValue=function(e,t,n,o){var a=this.getControl(e,o);a&&!a.restrictFieldInteractions&&(a.setValue(t,n),this.triggerEvent({controlKey:e,prop:"value",value:t},o))},e.prototype.setReadOnly=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.setReadOnly(t),this.triggerEvent({controlKey:e,prop:"readOnly",value:t},n))},e.prototype.setRequired=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.setRequired(t),this.triggerEvent({controlKey:e,prop:"required",value:t},n))},e.prototype.highlight=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.highlighted=t,this.triggerEvent({controlKey:e,prop:"highlight",value:t},n))},e.prototype.hide=function(e,t,n){void 0===t&&(t=!0);var o=this.getControl(e,n);return o&&!o.restrictFieldInteractions&&(o.hide(t),this.disable(e,{emitEvent:!1}),this.triggerEvent({controlKey:e,prop:"hidden",value:!0},n)),o},e.prototype.show=function(e,t){var n=this.getControl(e,t);n&&!n.restrictFieldInteractions&&(n.show(),this.enable(e,{emitEvent:!1}),this.triggerEvent({controlKey:e,prop:"hidden",value:!1},t))},e.prototype.hideFieldSetHeader=function(e){var t=this.getFieldSet(e);t&&(t.hidden=!0)},e.prototype.showFieldSetHeader=function(e){var t=this.getFieldSet(e);t&&(t.hidden=!1)},e.prototype.disable=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.disable(t),this.triggerEvent({controlKey:e,prop:"readOnly",value:!0},n))},e.prototype.enable=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.enable(t),this.triggerEvent({controlKey:e,prop:"readOnly",value:!1},n))},e.prototype.markAsInvalid=function(e,t,n){var o=this.getControl(e,n);o&&o&&!o.restrictFieldInteractions&&(o.markAsInvalid(t),this.triggerEvent({controlKey:e,prop:"errors",value:t},n))},e.prototype.markAsValid=function(e,t){var n=this.getControl(e,t);n&&n&&!n.restrictFieldInteractions&&(n.markAsValid(),this.triggerEvent({controlKey:e,prop:"errors",value:null},t))},e.prototype.markAsDirty=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsDirty(t)},e.prototype.markAsPending=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsPending(t)},e.prototype.markAsPristine=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsPristine(t)},e.prototype.markAsTouched=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsTouched(t)},e.prototype.markAsUntouched=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.markAsUntouched(t)},e.prototype.updateValueAndValidity=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&o.updateValueAndValidity(t)},e.prototype.displayToast=function(e){this.toaster&&this.toaster.alert(e)},e.prototype.displayTip=function(e,t,n,o,a,i){var r=this.getControl(e,i);r&&!r.restrictFieldInteractions&&(r.tipWell={tip:t,icon:n,button:o,sanitize:!1!==a},this.triggerEvent({controlKey:e,prop:"tipWell",value:t},i))},e.prototype.clearTip=function(e,t){var n=this.getControl(e,t);n&&!n.restrictFieldInteractions&&(n.tipWell=null,this.triggerEvent({controlKey:e,prop:"tipWell",value:null},t))},e.prototype.setTooltip=function(e,t,n){var o=this.getControl(e,n);o&&!o.restrictFieldInteractions&&(o.tooltip=t,t.length>=40&&t.length<=400?(o.tooltipSize="large",o.tooltipPreline=!0):t.length>400&&(o.tooltipSize="extra-large"),this.triggerEvent({controlKey:e,prop:"tooltip",value:t},n))},e.prototype.confirmChanges=function(e,t){var n=this,o=this.getProperty(e,"valueHistory"),a=o[o.length-2],i=this.getValue(e),r=this.getProperty(e,"label");return document.activeElement.blur(),this.modalService.open(ma,{oldValue:a,newValue:i,label:r,message:t,key:e}).onClosed.then((function(t){t||n.setValue(e,a,{emitEvent:!1})}))},e.prototype.promptUser=function(e,t){return document.activeElement.blur(),this.modalService.open(ha,{changes:t,key:e}).onClosed},e.prototype.setProperty=function(e,t,n,o){var a=this.getControl(e,o);a&&!a.restrictFieldInteractions&&(a[t]=n,this.triggerEvent({controlKey:e,prop:t,value:n},o))},e.prototype.getProperty=function(e,t,n){var o=this.getControl(e,n);return o&&!o.restrictFieldInteractions?o[t]:null},e.prototype.isValueEmpty=function(e){var t=this.getValue(e);return R.isEmpty(t)},e.prototype.isValueBlank=function(e){var t=this.getValue(e);return R.isBlank(t)},e.prototype.hasField=function(e,t){return!!(t||this.form).controls[e]},e.prototype.addStaticOption=function(e,t,n){var o=this.getControl(e,n),a=t,i=!0;if(o&&!o.restrictFieldInteractions){var r=this.getProperty(e,"options");if(r&&r.length)r[0].value&&!a.value&&(a={value:t,label:t}),r.forEach((function(e){(e.value&&e.value===a.value||e===a)&&(i=!1)})),i&&this.setProperty(e,"options",ae(r,[a]));else{var s=this.getProperty(e,"config");s&&(r=s.options)&&Array.isArray(r)&&(r[0].value&&!a.value&&(a={value:t,label:t}),s.options=ae(r,[a]),this.setProperty(e,"config",s))}i&&this.triggerEvent({controlKey:e,prop:"options",value:ae(r,[a])},n)}},e.prototype.removeStaticOption=function(e,t,n){var o=this.getControl(e,n);if(o&&!o.restrictFieldInteractions){var a=this.getProperty(e,"options",n);if(a&&a.length){var i=-1;a.forEach((function(e,n){e.value||e.label?e.value!==t&&e.label!==t||(i=n):e===t&&(i=n)})),-1!==i&&a.splice(i,1),this.setProperty(e,"options",ae(a),n)}else{var r=this.getProperty(e,"config",n);if(r&&(a=r.options)&&Array.isArray(a)){var s=-1;a.forEach((function(e,n){e.value||e.label?e.value!==t&&e.label!==t||(s=n):e===t&&(s=n)})),-1!==s&&a.splice(s,1),r.options=ae(a),this.setProperty(e,"config",r,n)}}this.triggerEvent({controlKey:e,prop:"options",value:o.options},n)}},e.prototype.modifyPickerConfig=function(e,t,n){this.mutatePickerConfig(e,t,n)},e.prototype.mutatePickerConfig=function(e,t,n,o){var a=this.getControl(e,o);if(a&&!a.restrictFieldInteractions){var i=a.config,r=i.minSearchLength,s=i.enableInfiniteScroll,l=i.filteredOptionsCreator,c=i.format,d=i.getLabels,p=i.emptyPickerMessage,u=this.getOptionsConfig(t,n,l,c),m=Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},p&&{emptyPickerMessage:p}),Number.isInteger(r)&&{minSearchLength:r}),s&&{enableInfiniteScroll:s}),l&&{filteredOptionsCreator:l}),d&&{getLabels:d}),u&&u),{resultsTemplate:a.config.resultsTemplate||"resultsTemplateType"in t&&this.getAppropriateResultsTemplate(t.resultsTemplateType)});this.setProperty(e,"config",m),this.triggerEvent({controlKey:e,prop:"pickerConfig",value:t},o)}},e.prototype.addPropertiesToPickerConfig=function(e,t,n){var o=this.getControl(e,n);if(o&&!o.restrictFieldInteractions){var a=Object.assign(Object.assign({},o.config),t);this.setProperty(e,"config",a),this.triggerEvent({controlKey:e,prop:"pickerConfig",value:t},n)}},e.prototype.getAppropriateResultsTemplate=function(e){switch(e){case"entity-picker":return At;default:return}},e.prototype.setLoading=function(e,t,n){var o=this,a=n||this.form,i=this.getControl(e,n);i&&!i.restrictFieldInteractions&&(t?(a.controls[e].fieldInteractionloading=!0,i.setErrors({loading:!0}),clearTimeout(this.asyncBlockTimeout),this.asyncBlockTimeout=setTimeout((function(){o.setLoading(e,!1),o.displayTip(e,o.labels.asyncFailure,"info",!1),o.setProperty(e,"_displayedAsyncFailure",!0)}),1e4)):(a.controls[e].fieldInteractionloading=!1,clearTimeout(this.asyncBlockTimeout),i.setErrors({loading:null}),i.updateValueAndValidity({emitEvent:!1}),this.getProperty(e,"_displayedAsyncFailure")&&this.setProperty(e,"tipWell",null)),this.triggerEvent({controlKey:e,prop:"loading",value:t},n))},e.prototype.addControl=function(t,n,o,a,i){if(void 0===o&&(o=e.FIELD_POSITIONS.ABOVE_FIELD),!n.key&&!n.name)return console.error('[FieldInteractionAPI] - missing "key" in meta for new field'),null;n.key||(n.key=n.name);var r,s,l=i||this.form;if(l.controls[n.key])return null;if(l.controls[t]){switch(r=-1,s=-1,l.fieldsets.forEach((function(e,n){e.controls.forEach((function(e,o){e.key===t&&(r=n,s=o)}))})),o){case e.FIELD_POSITIONS.ABOVE_FIELD:break;case e.FIELD_POSITIONS.BELOW_FIELD:s+=1;break;case e.FIELD_POSITIONS.TOP_OF_FORM:s=0,r=0;break;case e.FIELD_POSITIONS.BOTTOM_OF_FORM:r=l.fieldsets.length-1,s=l.fieldsets[r].controls.length}if(-1!==r&&-1!==s){var c=this.formUtils.getControlForField(n,this.http,{});c.hidden=!1;var d=new na(a,c);l.addControl(c.key,d),l.fieldsets[r].controls.splice(s,0,c),this.triggerEvent({controlKey:t,prop:"addControl",value:d},i)}}},e.prototype.removeControl=function(e,t){var n=t||this.form;if(!n.controls[e])return null;var o=this.getControl(e,t);if(o&&!o.restrictFieldInteractions){var a=-1,i=-1;n.fieldsets.forEach((function(t,n){t.controls.forEach((function(t,o){t.key===e&&(a=n,i=o)}))})),-1!==a&&-1!==i&&(n.removeControl(e),n.fieldsets[a].controls.splice(i,1),this.triggerEvent({controlKey:e,prop:"removeControl",value:e},t))}},e.prototype.debounce=function(e,t){var n;void 0===t&&(t=50),clearTimeout(n),n=setTimeout((function(){return e()}),t)},e.prototype.getParent=function(e){return(e||this.form).parent},e.prototype.getIndex=function(e){var t=e||this.form;return t.associations&&t.associations.hasOwnProperty("index")?t.associations.index:null},e.prototype.triggerEvent=function(e,t){var n=t||this.form;n&&n.fieldInteractionEvents&&n.fieldInteractionEvents.emit(e)},e}();fa.FIELD_POSITIONS={ABOVE_FIELD:"ABOVE_FIELD",BELOW_FIELD:"BELOW_FIELD",TOP_OF_FORM:"TOP_OF_FORM",BOTTOM_OF_FORM:"BOTTOM_OF_FORM"},fa.decorators=[{type:t.Injectable}],fa.ctorParameters=function(){return[{type:Yn},{type:ua},{type:ia},{type:w.HttpClient},{type:Ne}]};var ya=function(){function e(){this.templates={default:{},custom:{}}}return e.prototype.getAll=function(){var e=this,t={},n=Object.keys(this.templates.custom);return Object.keys(this.templates.default).forEach((function(n){t[n]=e.templates.default[n]})),n.forEach((function(n){t[n]=e.templates.custom[n]})),t},e.prototype.addDefault=function(e,t){this.templates.default[e]=t},e.prototype.addCustom=function(e,t){this.templates.custom[e]=t},e}();ya.decorators=[{type:t.Injectable}],ya.ctorParameters=function(){return[]};var va=function(){function e(e){this.element=e}return e.prototype.onInput=function(e){this.adjust()},e.prototype.ngAfterContentInit=function(){var e=this;setTimeout((function(){e.adjust()}))},e.prototype.adjust=function(){var e=this.element.nativeElement;e.style.height=e.style.minHeight,e.style.height=e.scrollHeight+"px"},e}();va.decorators=[{type:t.Directive,args:[{selector:"textarea[autosize]"}]}],va.ctorParameters=function(){return[{type:t.ElementRef}]},va.propDecorators={onInput:[{type:t.HostListener,args:["input",["$event.target"]]}]};var ba=function(e){function n(n,o,a,i,r,s,l){void 0===l&&(l="en-US");var c=e.call(this,n)||this;return c.labels=o,c.dateFormatService=a,c.fieldInteractionApi=i,c.templateService=r,c.changeDetectorRef=s,c.locale=l,c.condensed=!1,c.autoFocus=!1,c.change=new t.EventEmitter,c.edit=new t.EventEmitter,c.save=new t.EventEmitter,c.delete=new t.EventEmitter,c.upload=new t.EventEmitter,c.formattedValue="",c.maxLengthMet=!1,c.itemCount=0,c._blurEmitter=new t.EventEmitter,c._focusEmitter=new t.EventEmitter,c._focused=!1,c._enteredText="",c._showCount=!1,c.maxLengthMetErrorfields=[],c.templates={},c.loading=!1,c}return te(n,e),Object.defineProperty(n.prototype,"onBlur",{get:function(){return this._blurEmitter.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"onFocus",{get:function(){return this._focusEmitter.asObservable()},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"maxlengthMetField",{get:function(){var e=this;return this.maxLengthMetErrorfields&&this.maxLengthMetErrorfields.length&&this.maxLengthMetErrorfields.find((function(t){return t===e.focusedField}))||""},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"maxlengthErrorField",{get:function(){var e=this;return this.errors&&this.errors.maxlengthFields&&this.errors.maxlengthFields.length&&this.errors.maxlengthFields.find((function(t){return t===e.focusedField}))||""},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showFieldMessage",{get:function(){return!this.errors&&!this.maxLengthMet&&R.isBlank(this.control.description)},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showMaxLengthMetMessage",{get:function(){return this.isDirty&&this.maxLengthMet&&this.focused&&(!this.errors||this.errors&&!this.errors.maxlength)||this.isDirty&&this.maxlengthMetField&&this.focused&&(!this.errors||this.errors&&!this.errors.maxlengthFields.includes(this.maxlengthMetField))},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showErrorState",{get:function(){return this.isDirty&&this.errors||this.focused&&this.errors&&this.errors.maxlength&&this.errors.maxlengthFields||this.focused&&this.errors&&this.errors.maxlength&&this.errors.maxlengthFields&&this.maxlengthErrorField},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showCount",{get:function(){var e=this.focused&&!!this.form.controls[this.control.key].maxlength&&["textbox","picker","text-area"].includes(this.form.controls[this.control.key].controlType);return this._showCount||e},set:function(e){this._showCount=e},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"showMessages",{get:function(){return this.showCount||!R.isEmpty(this.form.controls[this.control.key].warning)||!R.isEmpty(this.form.controls[this.control.key].description)},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"decimalSeparator",{get:function(){return new Intl.NumberFormat(this.locale).format(1.2)[1]},enumerable:!1,configurable:!0}),n.prototype.ngAfterViewInit=function(){var e=this;this.autoFocus&&!["picker","time","date","date-time"].includes(this.control.controlType)&&setTimeout((function(){var t=e.element.nativeElement.querySelector("input");t&&t.focus()}))},n.prototype.ngAfterContentInit=function(){var e,t,n=this;if(this.control.interactions&&!this.form.controls[this.control.key].restrictFieldInteractions){var o=function(e){switch(e.event){case"blur":a.valueChangeSubscription=a.onBlur.pipe(g.debounceTime(300)).subscribe((function(){n.form.controls[n.control.key].restrictFieldInteractions||n.executeInteraction(e)}));break;case"focus":a.valueChangeSubscription=a.onFocus.pipe(g.debounceTime(300)).subscribe((function(){n.form.controls[n.control.key].restrictFieldInteractions||n.executeInteraction(e)}));break;case"change":a.valueChangeSubscription=a.form.controls[a.control.key].valueChanges.pipe(g.debounceTime(300)).subscribe((function(){n.form.controls[n.control.key].restrictFieldInteractions||n.executeInteraction(e)}));break;case"init":e.invokeOnInit=!0}e.invokeOnInit&&(a.form.controls[a.control.key].restrictFieldInteractions||a.executeInteraction(e,!0))},a=this;try{for(var i=ne(this.control.interactions),r=i.next();!r.done;r=i.next()){o(r.value)}}catch(t){e={error:t}}finally{try{r&&!r.done&&(t=i.return)&&t.call(i)}finally{if(e)throw e.error}}}setTimeout((function(){n.templates=n.templateService.getAll(),n.loading=!1,n.changeDetectorRef.markForCheck()}))},n.prototype.ngOnInit=function(){var e=this;this.loading=!0,this.control&&this.form.controls[this.control.key].value&&("textbox"!==this.form.controls[this.control.key].controlType&&"text-area"!==this.form.controls[this.control.key].controlType||(this.itemCount=this.form.controls[this.control.key].value.length)),this.control&&(this.forceClearSubscription=this.control.forceClear.subscribe((function(){e.clearValue()})),this.statusChangeSubscription=this.form.controls[this.control.key].statusChanges.subscribe((function(t){e.form.controls[e.control.key]=e.templateContext.$implicit,"PENDING"!==t&&e.form.updateValueAndValidity&&e.form.updateValueAndValidity()}))),this.templateContext={$implicit:this.form.controls[this.control.key],methods:{restrictKeys:this.restrictKeys.bind(this),emitChange:this.emitChange.bind(this),handleFocus:this.handleFocus.bind(this),handlePercentChange:this.handlePercentChange.bind(this),handleBlur:this.handleBlur.bind(this),handleTextAreaInput:this.handleTextAreaInput.bind(this),handleEdit:this.handleEdit.bind(this),handleSave:this.handleSave.bind(this),handleDelete:this.handleDelete.bind(this),handleUpload:this.handleUpload.bind(this),modelChange:this.modelChange.bind(this),modelChangeWithRaw:this.modelChangeWithRaw.bind(this),handleAddressChange:this.handleAddressChange.bind(this),handleTyping:this.handleTyping.bind(this),updateValidity:this.updateValidity.bind(this),toggleActive:this.toggleActive.bind(this),validateIntegerInput:this.validateIntegerInput.bind(this),validateNumberOnBlur:this.validateNumberOnBlur.bind(this)},form:this.form},this.templateContext.$implicit.tooltipPosition=this.tooltipPosition,this.templateContext.$implicit.tooltip=this.tooltip,this.templateContext.$implicit.tooltipSize=this.tooltipSize,this.templateContext.$implicit.tooltipPreline=this.tooltipPreline,this.templateContext.$implicit.removeTooltipArrow=this.removeTooltipArrow,this.templateContext.$implicit.startupFocus=this.form.controls[this.control.key].startupFocus,this.templateContext.$implicit.fileBrowserImageUploadUrl=this.form.controls[this.control.key].fileBrowserImageUploadUrl,this.templateContext.$implicit.minimal=this.form.controls[this.control.key].minimal,this.templateContext.$implicit.currencyFormat=this.form.controls[this.control.key].currencyFormat,this.templateContext.$implicit.percentValue=this.form.controls[this.control.key].percentValue,this.templateContext.$implicit.config=this.form.controls[this.control.key].config,this.form.controls[this.control.key]&&"percentage"===this.form.controls[this.control.key].subType&&(R.isEmpty(this.form.controls[this.control.key].value)||(this.templateContext.$implicit.percentValue=Number((100*this.form.controls[this.control.key].value).toFixed(6).replace(/\.?0*$/,""))),this.percentChangeSubscription=this.form.controls[this.control.key].displayValueChanges.subscribe((function(t){R.isEmpty(t)||isNaN(t)?R.isEmpty(t)&&(e.templateContext.$implicit.percentValue=void 0):e.templateContext.$implicit.percentValue=Number((100*t).toFixed(6).replace(/\.?0*$/,""))})))},n.prototype.ngOnDestroy=function(){this.valueChangeSubscription&&this.valueChangeSubscription.unsubscribe(),this.forceClearSubscription&&this.forceClearSubscription.unsubscribe(),this.percentChangeSubscription&&this.percentChangeSubscription.unsubscribe(),this.dateChangeSubscription&&this.dateChangeSubscription.unsubscribe(),this.statusChangeSubscription&&this.statusChangeSubscription.unsubscribe(),e.prototype.ngOnDestroy.call(this)},Object.defineProperty(n.prototype,"errors",{get:function(){return this.form.controls[this.control.key].errors},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"isValid",{get:function(){return this.form.controls[this.control.key].valid},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"isDirty",{get:function(){return this.form.controls[this.control.key].dirty||this.control.dirty},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"hasValue",{get:function(){return!R.isEmpty(this.form.value[this.control.key])},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"focused",{get:function(){return this._focused},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"tooltip",{get:function(){return this.form.controls[this.control.key].tooltip},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"tooltipPosition",{get:function(){return R.isBlank(this.form.controls[this.control.key].tooltipPosition)?"right":this.form.controls[this.control.key].tooltipPosition},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"tooltipSize",{get:function(){return R.isBlank(this.form.controls[this.control.key].tooltipSize)?"":this.form.controls[this.control.key].tooltipSize},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"tooltipPreline",{get:function(){return!R.isBlank(this.form.controls[this.control.key].tooltipPreline)&&this.form.controls[this.control.key].tooltipPreline},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"removeTooltipArrow",{get:function(){return!R.isBlank(this.form.controls[this.control.key].removeTooltipArrow)&&this.form.controls[this.control.key].removeTooltipArrow},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"alwaysActive",{get:function(){return!("picker"!==this.form.controls[this.control.key].controlType||!this._enteredText.length)||-1!==["tiles","checklist","checkbox","date","time","date-time","address","file","editor","ace-editor","radio","text-area","quick-note"].indexOf(this.form.controls[this.control.key].controlType)},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,"requiresExtraSpacing",{get:function(){return!("picker"!==this.form.controls[this.control.key].controlType||!this.form.controls[this.control.key].multiple||!this.hasValue)},enumerable:!1,configurable:!0}),n.prototype.executeInteraction=function(e,t){var n=this;void 0===t&&(t=!1),e.script&&R.isFunction(e.script)&&setTimeout((function(){n.fieldInteractionApi.form=n.form,n.fieldInteractionApi.currentKey=n.control.key,n.fieldInteractionApi.isInvokedOnInit=t;try{e.script(n.fieldInteractionApi,n.control.key)}catch(e){console.info("Field Interaction Error!",n.control.key),console.error(e)}}))},n.prototype.handleTyping=function(e){this._focused=e&&e.length,this._enteredText=e},n.prototype.handleFocus=function(e,t){this._focused=!0,this.focusedField=t,R.isBlank(this.characterCountField)||this.characterCountField!==t?"address"!==this.form.controls[this.control.key].controlType||!t||R.isEmpty(this.form.value[this.control.key])||R.isBlank(this.form.value[this.control.key][t])||this.handleAddressChange({value:this.form.value[this.control.key][t],field:t}):this.showCount=!0,this._focusEmitter.emit(e)},n.prototype.handleBlur=function(e){this._focused=!1,this.focusedField="",this.showCount=!1,this._blurEmitter.emit(e)},n.prototype.clearValue=function(){this.form.controls[this.control.key].setValue(null),this.formattedValue=null},n.prototype.handleTextAreaInput=function(e){this.emitChange(e),this.restrictKeys(e)},n.prototype.checkMaxLength=function(e){this.control&&this.form.controls[this.control.key].maxlength&&(this.itemCount=e.target.value.length,this.maxLengthMet=e.target.value.length>=this.form.controls[this.control.key].maxlength)},n.prototype.modelChangeWithRaw=function(e){R.isEmpty(e.value)&&(this._focused=!1,this._enteredText=""),"picker"===this.form.controls[this.control.key].controlType&&this.form.controls[this.control.key].maxlength&&(this.itemCount=e.value?e.value.length:0,this.maxLengthMet=this.itemCount>=this.form.controls[this.control.key].maxlength),this.form.controls[this.control.key].rawValue=e.rawValue,this.change.emit(e.value)},n.prototype.modelChange=function(e){R.isEmpty(e)&&(this._focused=!1,this._enteredText=""),this.change.emit(e)},n.prototype.validateNumberOnBlur=function(e){this._focused=!1,this.focusedField="",this.showCount=!1,"number"===this.form.controls[this.control.key].subType&&this.validateIntegerInput(),this._blurEmitter.emit(e)},n.prototype.validateIntegerInput=function(){this.form.controls[this.control.key].value&&!/^[\d\-]\d*$/.test(this.form.controls[this.control.key].value)&&this.form.controls[this.control.key].markAsInvalid(this.labels.invalidIntegerInput+" "+this.form.controls[this.control.key].label.toUpperCase())},n.prototype.restrictKeys=function(e){var t=["Backspace","Delete","ArrowLeft","ArrowRight","Tab"],n=e.key;"number"!==this.form.controls[this.control.key].subType||/[0-9\-]/.test(n)||t.includes(n)?["currency","float","percentage"].includes(this.form.controls[this.control.key].subType)&&!("."===this.decimalSeparator&&/[0-9\.\-]/.test(n)||","===this.decimalSeparator&&/[0-9\.\,\-]/.test(n)||t.includes(n))&&e.preventDefault():e.preventDefault(),this.form.controls[this.control.key].maxlength&&e.target.value.length>=this.form.controls[this.control.key].maxlength&&e.preventDefault()},n.prototype.handlePercentChange=function(e){var t=e.target.value||e.data,n=R.isEmpty(t)||isNaN(t)?t:Number((t/100).toFixed(6).replace(/\.?0*$/,""));R.isEmpty(n)?(this.change.emit(null),this.form.controls[this.control.key].setValue(null)):(this.change.emit(n),this.form.controls[this.control.key].setValue(n))},n.prototype.handleTabForPickers=function(e){this.active&&e&&e.keyCode&&(e.keyCode!==We.ESC&&e.keyCode!==We.TAB||this.toggleActive(e,!1))},n.prototype.emitChange=function(e){this.change.emit(e),this.checkMaxLength(e)},n.prototype.handleEdit=function(e){this.edit.emit(e)},n.prototype.handleSave=function(e){this.save.emit(e)},n.prototype.handleDelete=function(e){this.delete.emit(e)},n.prototype.handleUpload=function(e){this.upload.emit(e)},n.prototype.handleAddressChange=function(e){e&&!R.isBlank(e.value)&&e.field&&this.control.config[e.field]&&!R.isEmpty(this.control.config[e.field].maxlength)&&(this.itemCount=e.value.length,this.characterCountField=e.field,this.maxLength=this.control.config[e.field].maxlength,this.showCount=!0,this.maxLength===this.itemCount?this.maxLengthMetErrorfields.push(e.field):this.maxLengthMetErrorfields=this.maxLengthMetErrorfields.filter((function(t){return t!==e.field})))},n.prototype.updateValidity=function(e){var t=!!e;this.form.controls[this.control.key].updateValueAndValidity({emitEvent:t})},n}($e);ba.decorators=[{type:t.Component,args:[{selector:"novo-control",template:'\n <div class="novo-control-container" [hidden]="form.controls[control.key].hidden || form.controls[control.key].type === \'hidden\' || form.controls[control.key].controlType === \'hidden\'">\n \x3c!--Encrypted Field--\x3e\n <span [tooltip]="labels.encryptedFieldTooltip" [tooltipPosition]="\'right\'"><i [hidden]="!form.controls[control.key].encrypted"\n class="bhi-lock"></i></span>\n \x3c!--Label (for horizontal)--\x3e\n <label [attr.for]="control.key" *ngIf="form.layout !== \'vertical\' && form.controls[control.key].label && !condensed" [ngClass]="{\'encrypted\': form.controls[control.key].encrypted }">\n {{ form.controls[control.key].label }}\n </label>\n <div class="novo-control-outer-container">\n \x3c!--Label (for vertical)--\x3e\n <label\n *ngIf="form.layout === \'vertical\' && form.controls[control.key].label && !condensed"\n class="novo-control-label"\n [attr.for]="control.key"\n [class.novo-control-empty]="!hasValue"\n [class.novo-control-focused]="focused"\n [class.novo-control-filled]="hasValue"\n [class.novo-control-always-active]="alwaysActive || form.controls[control.key].placeholder"\n [class.novo-control-extra-spacing]="requiresExtraSpacing">\n {{ form.controls[control.key].label }}\n </label>\n <div class="novo-control-inner-container" [class.required]="form.controls[control.key].required && !form.controls[control.key].readOnly">\n <div class="novo-control-inner-input-container" [class.novo-control-filled]="hasValue" [class.novo-control-empty]="!hasValue">\n \x3c!--Required Indicator--\x3e\n <i [hidden]="!form.controls[control.key].required || form.controls[control.key].readOnly"\n class="required-indicator {{ form.controls[control.key].controlType }}"\n [ngClass]="{\'bhi-circle\': !isValid, \'bhi-check\': isValid}" *ngIf="!condensed || form.controls[control.key].required">\n </i>\n \x3c!--Form Controls--\x3e\n <div class="novo-control-input {{ form.controls[control.key].controlType }}" [attr.data-automation-id]="control.key" [class.control-disabled]="form.controls[control.key].disabled" [class.highlighted]="form.controls[control.key].highlighted">\n \x3c!--TODO prefix/suffix on the control--\x3e\n <ng-container *ngIf="templates">\n <ng-container *ngTemplateOutlet="templates[form.controls[control.key].controlType]; context: templateContext"></ng-container>\n </ng-container>\n <ng-container *ngIf="!templates || loading">\n <div class="novo-control-input-container novo-control-input-with-label">\n <input type="text"/>\n </div>\n </ng-container>\n </div>\n </div>\n \x3c!--Error Message--\x3e\n <div class="field-message {{ form.controls[control.key].controlType }}" *ngIf="!condensed" [class.has-tip]="form.controls[control.key].tipWell" [ngClass]="showErrorState || showMaxLengthMetMessage ? \'error-shown\' : \'error-hidden\'">\n <div class="messages" [ngClass]="showMessages ? \'count-shown messages-shown\' : \'count-hidden messages-hidden\'">\n <span class="error-text" *ngIf="showFieldMessage"></span>\n <span class="error-text" *ngIf="isDirty && errors?.required && form.controls[control.key].controlType !== \'address\'">{{ form.controls[control.key].label | uppercase }} {{ labels.isRequired }}</span>\n <span class="error-text" *ngIf="isDirty && errors?.minlength">{{ form.controls[control.key].label | uppercase }} {{ labels.minLength }} {{ form.controls[control.key].minlength }}</span>\n <span class="error-text" *ngIf="isDirty && maxLengthMet && focused && !errors?.maxlength && form.controls[control.key].controlType !== \'picker\'">{{ labels.maxlengthMet(form.controls[control.key].maxlength) }}</span>\n <span class="error-text" *ngIf="errors?.maxlength && focused && !errors?.maxlengthFields">{{ labels.invalidMaxlength(form.controls[control.key].maxlength) }}</span>\n <span class="error-text" *ngIf="maxLengthMet && form.controls[control.key].controlType === \'picker\'">{{ labels.maxRecordsReached }}</span>\n <span class="error-text" *ngIf="isDirty && errors?.invalidEmail">{{ form.controls[control.key].label | uppercase }} {{ labels.invalidEmail }}</span>\n <span class="error-text" *ngIf="isDirty && (errors?.integerTooLarge || errors?.doubleTooLarge)">{{ form.controls[control.key].label | uppercase }} {{ labels.isTooLarge }}</span>\n <span *ngIf="isDirty && errors?.minYear">{{ form.controls[control.key].label | uppercase }} {{ labels.notValidYear }}</span>\n <span class="error-text" *ngIf="isDirty && (errors?.custom)">{{ errors.custom }}</span>\n <span class="error-text" *ngIf="errors?.maxlength && errors?.maxlengthFields && maxlengthErrorField && focused">\n {{ labels.invalidMaxlengthWithField(control.config[maxlengthErrorField]?.label, control.config[maxlengthErrorField]?.maxlength) }}\n </span>\n <span class="error-text" *ngIf="isDirty && maxlengthMetField && focused && !errors?.maxlengthFields?.includes(maxlengthMetField)">\n {{ labels.maxlengthMetWithField(control.config[maxlengthMetField]?.label, control.config[maxlengthMetField]?.maxlength) }}\n </span>\n <span *ngIf="isDirty && errors?.invalidAddress">\n <span class="error-text" *ngFor="let invalidAddressField of errors?.invalidAddressFields">{{ invalidAddressField | uppercase }} {{ labels.isRequired }} </span>\n </span>\n \x3c!--Field Hint--\x3e\n <span class="description" *ngIf="form.controls[control.key].description">\n {{ form.controls[control.key].description }}\n </span>\n <span class="warning-text" *ngIf="form.controls[control.key].warning">{{ form.controls[control.key].warning }}</span>\n\n </div>\n <span class="character-count" [class.error]="((errors?.maxlength && !errors?.maxlengthFields) || (errors?.maxlength && errors?.maxlengthFields && errors.maxlengthFields.includes(focusedField)))" *ngIf="showCount && form.controls[control.key].controlType !== \'picker\'">{{ itemCount }}/{{ maxLength || form.controls[control.key].maxlength }}</span>\n <span class="record-count" [class.zero-count]="itemCount === 0" [class.row-picker]="form.controls[this.control.key].config.columns" *ngIf="showCount && form.controls[control.key].controlType === \'picker\'">{{ itemCount }}/{{ maxLength || form.controls[control.key].maxlength }}</span>\n </div>\n \x3c!--Tip Wel--\x3e\n <novo-tip-well *ngIf="form.controls[control.key].tipWell" [name]="control.key" [tip]="form.controls[control.key]?.tipWell?.tip" [icon]="form.controls[control.key]?.tipWell?.icon" [button]="form.controls[control.key]?.tipWell?.button" [sanitize]="form.controls[control.key]?.tipWell?.sanitize"></novo-tip-well>\n </div>\n <i *ngIf="form.controls[control.key].fieldInteractionloading" class="loading">\n <svg version="1.1"\n xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/"\n x="0px" y="0px" width="18.2px" height="18.5px" viewBox="0 0 18.2 18.5" style="enable-background:new 0 0 18.2 18.5;"\n xml:space="preserve">\n <style type="text/css">\n .spinner { fill:#FFFFFF; }\n </style>\n <path class="spinner" d="M9.2,18.5C4.1,18.5,0,14.4,0,9.2S4.1,0,9.2,0c0.9,0,1.9,0.1,2.7,0.4c0.8,0.2,1.2,1.1,1,1.9\n c-0.2,0.8-1.1,1.2-1.9,1C10.5,3.1,9.9,3,9.2,3C5.8,3,3,5.8,3,9.2s2.8,6.2,6.2,6.2c2.8,0,5.3-1.9,6-4.7c0.2-0.8,1-1.3,1.8-1.1\n c0.8,0.2,1.3,1,1.1,1.8C17.1,15.7,13.4,18.5,9.2,18.5z"/>\n </svg>\n </i>\n </div>\n </div>\n ',host:{"[class]":"form.controls[control.key].controlType","[attr.data-control-type]":"form.controls[control.key].controlType","[class.disabled]":"form.controls[control.key].readOnly","[class.hidden]":"form.controls[control.key].hidden","[attr.data-control-key]":"control.key","[class.inline-embedded]":"control.isInlineEmbedded","[class.embedded]":"control.isEmbedded"}}]}],ba.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:Hn},{type:fa},{type:ya},{type:t.ChangeDetectorRef},{type:String,decorators:[{type:t.Inject,args:[t.LOCALE_ID]}]}]},ba.propDecorators={control:[{type:t.Input}],form:[{type:t.Input}],condensed:[{type:t.Input}],autoFocus:[{type:t.Input}],change:[{type:t.Output}],edit:[{type:t.Output}],save:[{type:t.Output}],delete:[{type:t.Output}],upload:[{type:t.Output}],onBlur:[{type:t.Output,args:["blur"]}],onFocus:[{type:t.Output,args:["focus"]}]};var Ca=function(){function e(e,n,o){this.formUtils=e,this.fb=n,this.ref=o,this._vertical=!1,this._remove=!1,this._edit=!1,this._collapsible=!1,this.onRemove=new t.EventEmitter,this.onEdit=new t.EventEmitter,this.onAdd=new t.EventEmitter,this.change=new t.EventEmitter,this.controlLabels=[],this.toggled=!1,this.disabledArray=[],this.currentIndex=0}return Object.defineProperty(e.prototype,"vertical",{get:function(){return this._vertical},set:function(e){this._vertical=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"remove",{get:function(){return this._remove},set:function(e){this._remove=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"edit",{get:function(){return this._edit},set:function(e){this._edit=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"collapsible",{get:function(){return this._collapsible},set:function(e){this._collapsible=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"icon",{get:function(){return this._icon},set:function(e){this._icon=e&&-1!==e.indexOf("bhi")?e:"bhi-"+e},enumerable:!1,configurable:!0}),e.prototype.ngAfterContentInit=function(){if(!this.key)throw new Error("novo-control-group must have the [key] attribute provided!")},e.prototype.ngOnChanges=function(e){var t=this,n=e.initialValue;n&&n.currentValue!==n.previousValue&&!n.firstChange&&this.clearControls(),this.initialValue&&Array.isArray(this.initialValue)?0!==this.initialValue.length&&(this.currentIndex=0,this.initialValue.forEach((function(e){return t.addNewControl(e)}))):this.initialValue&&this.addNewControl(this.initialValue),this.vertical||(this.controlLabels=(this.controls||[]).map((function(e){return{value:e.label,width:e.width,required:e.required,key:e.key}})),this.ref.markForCheck())},e.prototype.ngOnDestroy=function(){this.clearControls()},e.prototype.onChange=function(){this.change.emit(this)},e.prototype.resetAddRemove=function(){var e=this;this.disabledArray.forEach((function(t,n){t.edit=e.checkCanEdit(n),t.remove=e.checkCanRemove(n)})),this.ref.markForCheck()},e.prototype.addNewControl=function(e){var t=this.form.controls[this.key],n=this.buildNestedFormGroup(e);t?t.push(n):this.form.addControl(this.key,this.fb.array([n])),this.disabledArray.push({edit:!0,remove:!0}),this.resetAddRemove(),e||this.onAdd.emit(),this.currentIndex++,this.assignIndexes(),n.fieldInteractionEvents.subscribe(this.onFieldInteractionEvent.bind(this)),this.ref.markForCheck()},e.prototype.removeControl=function(e,t){var n=this;void 0===t&&(t=!0),t&&R.isFunction(this.shouldRemove)?this.shouldRemove(e).then((function(o){o&&n.doRemoveControl(e,t)})):this.doRemoveControl(e,t)},e.prototype.doRemoveControl=function(e,t){var n=this.form.controls[this.key],o=n.at(e);o.fieldInteractionEvents.unsubscribe(),t&&this.onRemove.emit({value:o.value,index:e}),n.removeAt(e),this.disabledArray=this.disabledArray.filter((function(t,n){return n!==e})),this.resetAddRemove(),this.currentIndex--,this.assignIndexes(),this.ref.markForCheck()},e.prototype.editControl=function(e){var t=this.form.controls[this.key];this.onEdit.emit({value:t.at(e).value,index:e})},e.prototype.toggle=function(e){R.swallowEvent(e),this.collapsible&&(this.toggled=!this.toggled,this.ref.markForCheck())},e.prototype.buildNestedFormGroup=function(e){var t=this.getNewControls();return e&&this.formUtils.setInitialValues(t,e),this.formUtils.toFormGroup(t)},e.prototype.clearControls=function(){var e=this.form.controls[this.key];if(e){for(var t=e.length-1;t>=0;t--)this.removeControl(t,!1);this.currentIndex=0}},e.prototype.checkCanEdit=function(e){if(this.canEdit){var t=this.form.controls[this.key];return this.canEdit(t.at(e).value,e)}return!0},e.prototype.checkCanRemove=function(e){if(this.canRemove){var t=this.form.controls[this.key];return!t.at(e)||this.canRemove(t.at(e).value,e)}return!0},e.prototype.getNewControls=function(){var e=[];return(this.controls||[]).forEach((function(t){e.push(new Ro(t.__type,t))})),e},e.prototype.assignIndexes=function(){var e=this.form.controls[this.key];if(e)for(var t=0;t<e.length;t++){var n=e.at(t);n.associations=Object.assign(Object.assign({},n.associations),{index:t})}},e.prototype.onFieldInteractionEvent=function(){this.ref.markForCheck()},e}();Ca.decorators=[{type:t.Component,args:[{selector:"novo-control-group",template:'<h6 class="novo-section-header" *ngIf="label">\n <span (click)="toggle($event)" [class.clickable]="collapsible">\n <i *ngIf="icon && !collapsible" [ngClass]="icon" [attr.data-automation-id]="\'novo-control-group-icon-\' + key"></i>\n <i *ngIf="collapsible" class="bhi-next" [class.toggled]="toggled" [attr.data-automation-id]="\'novo-control-group-collapse-\' + key"></i>\n <span [attr.data-automation-id]="\'novo-control-group-label-\' + key">{{ label }}</span>\n </span>\n <label class="novo-control-group-description" *ngIf="description" [attr.data-automation-id]="\'novo-control-group-description-\' + key">{{ description }}</label>\n</h6>\n<div class="novo-control-group-controls" [class.vertical]="vertical" [class.horizontal]="!vertical" [class.hidden]="collapsible && !toggled">\n <ng-template #defaultTemplate let-index="index" let-form="form" let-key="key">\n <div class="novo-control-group-control">\n <div *ngFor="let c of controls" class="novo-control-container {{c.key}}" [class.is-label]="c.controlType === \'read-only\'" [style.max-width.px]="c.width">\n <novo-control (change)="onChange()" [form]="(form?.controls)[key][\'controls\'][index]" [control]="c" [condensed]="!vertical || c.controlType === \'read-only\'"></novo-control>\n </div>\n <div class="novo-control-container last" *ngIf="edit && !vertical">\n <button [disabled]="!disabledArray[index].edit" type="button" *ngIf="edit && !vertical" theme="icon" icon="edit" (click)="editControl(index)" [attr.data-automation-id]="\'novo-control-group-edit-\' + key" index="-1"></button>\n </div>\n <div class="novo-control-container last" *ngIf="remove && !vertical">\n <button [disabled]="!disabledArray[index].remove" type="button" *ngIf="remove && !vertical" theme="icon" icon="delete-o" (click)="removeControl(index)" [attr.data-automation-id]="\'novo-control-group-delete-\' + key" index="-1"></button>\n </div>\n </div>\n <button [disabled]="!disabledArray[index].edit" type="button" *ngIf="edit && vertical" theme="icon" icon="edit" (click)="editControl(index)" [attr.data-automation-id]="\'novo-control-group-edit-\' + key" index="-1"></button>\n <button [disabled]="!disabledArray[index].remove" type="button" *ngIf="remove && vertical" theme="icon" icon="delete-o" (click)="removeControl(index)" [attr.data-automation-id]="\'novo-control-group-delete-\' + key" index="-1"></button>\n </ng-template>\n <ng-template #defaultColumnLabelTemplate let-form="form" let-key="key">\n <div class="novo-control-group-control-label {{ label.key }}" *ngFor="let label of controlLabels" [style.max-width.px]="label.width" [class.column-required]="label.required">\n <span [attr.data-automation-id]="\'novo-control-group-label-\' + label.value">{{ label.value }}</span>\n </div>\n <div class="novo-control-group-control-label last" *ngIf="edit" [attr.data-automation-id]="\'novo-control-group-edit-\' + key"></div>\n <div class="novo-control-group-control-label last" *ngIf="remove" [attr.data-automation-id]="\'novo-control-group-delete-\' + key"></div>\n </ng-template>\n <ng-container *ngIf="!vertical && (form?.controls)[key] && (form?.controls)[key][\'controls\'].length !== 0">\n <div class="novo-control-group-labels" *ngIf="!vertical && (form?.controls)[key] && (form?.controls)[key][\'controls\'].length !== 0">\n <ng-template [ngTemplateOutlet]="columnLabelTemplate || defaultColumnLabelTemplate" [ngTemplateOutletContext]="{ form: form, key: key, controlLabels: controlLabels }">\n </ng-template>\n </div>\n </ng-container>\n <ng-container *ngIf="(form?.controls)[key]">\n <div class="novo-control-group-row" *ngFor="let control of (form?.controls)[key][\'controls\']; let index = index">\n <ng-template [ngTemplateOutlet]="rowTemplate || defaultTemplate" [ngTemplateOutletContext]="{ form: form, index: index, key: key, controls: controls }">\n </ng-template>\n </div>\n </ng-container>\n <div class="novo-control-group-empty" *ngIf="(form?.controls)[key] && (form?.controls)[key][\'controls\'].length === 0" [attr.data-automation-id]="\'novo-control-group-empty-\' + key">\n {{ emptyMessage }}\n </div>\n <p *ngIf="add">\n <button type="button" theme="dialogue" icon="add-thin" (click)="addNewControl()" [attr.data-automation-id]="\'novo-control-group-bottom-add-\' + key" index="-1">\n {{ add?.label }}\n </button>\n </p>\n</div>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Ca.ctorParameters=function(){return[{type:ia},{type:n.FormBuilder},{type:t.ChangeDetectorRef}]},Ca.propDecorators={vertical:[{type:t.Input}],add:[{type:t.Input}],remove:[{type:t.Input}],edit:[{type:t.Input}],collapsible:[{type:t.Input}],form:[{type:t.Input}],controls:[{type:t.Input}],key:[{type:t.Input}],label:[{type:t.Input}],description:[{type:t.Input}],emptyMessage:[{type:t.Input}],icon:[{type:t.Input}],initialValue:[{type:t.Input}],canEdit:[{type:t.Input}],canRemove:[{type:t.Input}],shouldRemove:[{type:t.Input}],rowTemplate:[{type:t.Input}],columnLabelTemplate:[{type:t.Input}],onRemove:[{type:t.Output}],onEdit:[{type:t.Output}],onAdd:[{type:t.Output}],change:[{type:t.Output}]};var Sa=function(){function e(e){this.templates=e}return e.prototype.ngAfterViewInit=function(){var e=this;this.defaultTemplates&&this.defaultTemplates.length&&this.defaultTemplates.forEach((function(t){e.templates.addDefault(t.name,t.template)}))},e}();Sa.decorators=[{type:t.Component,args:[{selector:"novo-control-templates",template:'\n \x3c!---Readonly---\x3e\n <ng-template novoTemplate="read-only" let-form="form" let-control>\n <div>{{ form.value[control.key] }}</div>\n </ng-template>\n \x3c!--Textbox---\x3e\n <ng-template novoTemplate="textbox" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container novo-control-input-with-label" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <input *ngIf="control?.type !== \'number\' && control?.textMaskEnabled" [textMask]="control.maskOptions" [formControlName]="control.key" [id]="control.key" [type]="control?.type" [placeholder]="control?.placeholder" (input)="methods.emitChange($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" autocomplete>\n <input *ngIf="control?.type !== \'number\' && !control?.textMaskEnabled" [class.maxlength-error]="errors?.maxlength" [formControlName]="control.key" [id]="control.key" [type]="control?.type" [placeholder]="control?.placeholder" (input)="methods.emitChange($event)" [maxlength]="control?.maxlength" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" autocomplete>\n <input *ngIf="control?.type === \'number\' && control?.subType !== \'percentage\'" [class.maxlength-error]="errors?.maxlength" [formControlName]="control.key" [id]="control.key" [type]="control?.type" [placeholder]="control?.placeholder" (keydown)="methods.restrictKeys($event)" (input)="methods.emitChange($event)" [maxlength]="control?.maxlength" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" step="any" (mousewheel)="numberInput.blur()" #numberInput>\n \x3c!-- the percentage input does not use formControlName like a normal reactive input because instead of setting the floating point value directly, it is multiplied by 100 into a percentage value --\x3e\n <input *ngIf="control?.type === \'number\' && control?.subType === \'percentage\'" [id]="control.key" [type]="control?.type" [placeholder]="control?.placeholder" (keydown)="methods.restrictKeys($event)" [value]="control?.percentValue" [disabled]="control?.readOnly" (input)="methods.handlePercentChange($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" step="any" (mousewheel)="percentInput.blur()" #percentInput>\n <label class="input-label" *ngIf="control?.subType === \'currency\'">{{ control.currencyFormat }}</label>\n <label class="input-label" *ngIf="control?.subType === \'percentage\'">%</label>\n </div>\n </ng-template>\n\n \x3c!--Textarea---\x3e\n <ng-template novoTemplate="text-area" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div class="textarea-container" [formGroup]="form" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <textarea [class.maxlength-error]="errors?.maxlength" [name]="control.key" [attr.id]="control.key" [placeholder]="control.placeholder" [formControlName]="control.key" autosize (input)="methods.handleTextAreaInput($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [maxlength]="control?.maxlength"></textarea>\n </div>\n </ng-template>\n\n \x3c!--Editor--\x3e\n <ng-template novoTemplate="editor" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-editor [name]="control.key" [formControlName]="control.key" [startupFocus]="control.startupFocus" [minimal]="control.minimal" [fileBrowserImageUploadUrl]="control.fileBrowserImageUploadUrl" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [config]="control.config"></novo-editor>\n </div>\n </ng-template>\n\n \x3c!--AceEditor--\x3e\n <ng-template novoTemplate="ace-editor" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-ace-editor [name]="control.key" [formControlName]="control.key" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)"></novo-ace-editor>\n </div>\n </ng-template>\n\n \x3c!--HTML5 Select--\x3e\n <ng-template novoTemplate="native-select" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <select [id]="control.key" [formControlName]="control.key" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <option *ngIf="control.placeholder" value="" disabled selected hidden>{{ control.placeholder }}</option>\n <option *ngFor="let opt of control.options" [value]="opt.key">{{opt.value}}</option>\n </select>\n </div>\n </ng-template>\n\n \x3c!--File--\x3e\n <ng-template novoTemplate="file" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-file-input [formControlName]="control.key" [id]="control.key" [name]="control.key" [placeholder]="control.placeholder" [value]="control.value" [multiple]="control.multiple" [layoutOptions]="control.layoutOptions" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" (edit)="methods.handleEdit($event)" (save)="methods.handleSave($event)" (delete)="methods.handleDelete($event)" (upload)="methods.handleUpload($event)"></novo-file-input>\n </div>\n </ng-template>\n\n \x3c!--Tiles--\x3e\n <ng-template novoTemplate="tiles" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-tiles [options]="control.options" [formControlName]="control.key" (onChange)="methods.modelChange($event)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" [controlDisabled]="control.disabled"></novo-tiles>\n </div>\n </ng-template>\n\n \x3c!--Picker--\x3e\n <ng-template novoTemplate="picker" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container">\n <novo-picker [config]="control.config" [formControlName]="control.key" [placeholder]="control.placeholder" [parentScrollSelector]="control.parentScrollSelector" *ngIf="!control.multiple" (select)="methods.modelChange($event);" (changed)="methods.modelChangeWithRaw($event)" (typing)="methods.handleTyping($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition"></novo-picker>\n <novo-chips [source]="control.config" [type]="control.config.type" [formControlName]="control.key" [placeholder]="control.placeholder" [maxlength]="control?.maxlength" *ngIf="control.multiple && !control.config.columns" [closeOnSelect]="control.closeOnSelect" (changed)="methods.modelChangeWithRaw($event)" (typing)="methods.handleTyping($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition"></novo-chips>\n <novo-row-chips [source]="control.config" [type]="control.config.type" [formControlName]="control.key" [placeholder]="control.placeholder" *ngIf="control.multiple && control.config.columns" [closeOnSelect]="control.closeOnSelect" (changed)="methods.modelChangeWithRaw($event)" (typing)="methods.handleTyping($event)" (focus)="methods.handleFocus($event)" (blur)="methods.handleBlur($event)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition"></novo-row-chips>\n </div>\n </ng-template>\n\n \x3c!--Novo Select--\x3e\n <ng-template novoTemplate="select" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-select [options]="control.options" [headerConfig]="control.headerConfig" [placeholder]="control.placeholder" [formControlName]="control.key" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" (onSelect)="methods.modelChange($event)"></novo-select>\n </div>\n </ng-template>\n\n \x3c!--Radio--\x3e\n <ng-template novoTemplate="radio" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container">\n <novo-radio [name]="control.key" [formControlName]="control.key" *ngFor="let option of control.options" [value]="option.value" [label]="option.label" [checked]="option.value === form.value[control.key] || (form.value[control.key] && option.value === form.value[control.key].id)" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" [button]="!!option.icon" [icon]="option.icon" [attr.data-automation-id]="control.key + \'-\' + (option?.label || option?.value)"></novo-radio>\n </div>\n </ng-template>\n\n \x3c!--Time--\x3e\n <ng-template novoTemplate="time" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <novo-time-picker-input [attr.id]="control.key" [name]="control.key" [formControlName]="control.key" [placeholder]="control.placeholder" [military]="control.military"></novo-time-picker-input>\n </div>\n </ng-template>\n\n \x3c!--Date--\x3e\n <ng-template novoTemplate="date" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <novo-date-picker-input [attr.id]="control.key" [name]="control.key" [formControlName]="control.key" [start]="control.startDate" [end]="control.endDate" [disabledDateMessage]="control.disabledDateMessage" [format]="control.dateFormat" [allowInvalidDate]="control.allowInvalidDate" [textMaskEnabled]="control.textMaskEnabled" [placeholder]="control.placeholder" [weekStart]="control.weekStart" (focusEvent)="methods.handleFocus($event)" (blurEvent)="methods.handleBlur($event)" (changeEvent)="methods.emitChange($event)"></novo-date-picker-input>\n </div>\n </ng-template>\n\n \x3c!--Date and Time--\x3e\n <ng-template novoTemplate="date-time" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form" class="novo-control-input-container" [tooltip]="control.tooltip" [tooltipPosition]="control.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition">\n <novo-date-time-picker-input [attr.id]="control.key" [name]="control.key" [formControlName]="control.key" [start]="control.startDate" [end]="control.endDate" [placeholder]="control.placeholder" [military]="control.military" [weekStart]="control.weekStart" (focusEvent)="methods.handleFocus($event)" (blurEvent)="methods.handleBlur($event)" (changeEvent)="methods.emitChange($event)" ></novo-date-time-picker-input>\n </div>\n </ng-template>\n\n \x3c!--Address--\x3e\n <ng-template novoTemplate="address" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-address [formControlName]="control.key" [config]="control?.config" [readOnly]="control?.readOnly" (change)="methods.handleAddressChange($event)" (focus)="methods.handleFocus($event.event, $event.field)" (blur)="methods.handleBlur($event.event, $event.field)" (validityChange)="methods.updateValidity()"></novo-address>\n </div>\n </ng-template>\n\n \x3c!--Checkbox--\x3e\n <ng-template novoTemplate="checkbox" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-checkbox [formControlName]="control?.key" [name]="control?.key" [label]="control?.checkboxLabel" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" [layoutOptions]="control?.layoutOptions"></novo-checkbox>\n </div>\n </ng-template>\n\n \x3c!--Checklist--\x3e\n <ng-template novoTemplate="checklist" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-check-list [formControlName]="control.key" [name]="control.key" [options]="control?.options" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [tooltipPreline]="control?.tooltipPreline" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" (onSelect)="methods.modelChange($event)"></novo-check-list>\n </div>\n </ng-template>\n\n \x3c!--QuickNote--\x3e\n <ng-template novoTemplate="quick-note" let-control let-form="form" let-errors="errors" let-methods="methods">\n <div [formGroup]="form">\n <novo-quick-note [formControlName]="control.key" [startupFocus]="control?.startupFocus" [placeholder]="control?.placeholder" [config]="control?.config" (change)="methods.modelChange($event)" [tooltip]="control?.tooltip" [tooltipPosition]="control?.tooltipPosition" [tooltipSize]="control?.tooltipSize" [removeTooltipArrow]="control?.removeTooltipArrow" [tooltipAutoPosition]="control?.tooltipAutoPosition" [tooltipPreline]="control?.tooltipPreline"></novo-quick-note>\n </div>\n </ng-template>\n '}]}],Sa.ctorParameters=function(){return[{type:ya}]},Sa.propDecorators={defaultTemplates:[{type:t.ViewChildren,args:[zt]}]};var ka=function(){};ka.decorators=[{type:t.Component,args:[{selector:"novo-fieldset-header",template:"\n <h6><i [class]=\"icon || 'bhi-section'\"></i>{{title}}</h6>\n "}]}],ka.propDecorators={title:[{type:t.Input}],icon:[{type:t.Input}]};var Ia=function(){this.controls=[],this.isEmbedded=!1,this.isInlineEmbedded=!1,this.hidden=!1};Ia.decorators=[{type:t.Component,args:[{selector:"novo-fieldset",template:'\n <div class="novo-fieldset-container">\n <novo-fieldset-header [icon]="icon" [title]="title" *ngIf="title" [class.embedded]="isEmbedded" [class.inline-embedded]="isInlineEmbedded" [class.hidden]="hidden"></novo-fieldset-header>\n <ng-container *ngFor="let control of controls;let controlIndex = index;">\n <div class="novo-form-row" [class.disabled]="control.disabled" *ngIf="control.__type !== \'GroupedControl\'">\n <novo-control [autoFocus]="autoFocus && index === 0 && controlIndex === 0" [control]="control" [form]="form"></novo-control>\n </div>\n <div *ngIf="control.__type === \'GroupedControl\'">TODO - GroupedControl</div>\n </ng-container>\n </div>\n '}]}],Ia.propDecorators={controls:[{type:t.Input}],form:[{type:t.Input}],title:[{type:t.Input}],icon:[{type:t.Input}],index:[{type:t.Input}],autoFocus:[{type:t.Input}],isEmbedded:[{type:t.Input}],isInlineEmbedded:[{type:t.Input}],hidden:[{type:t.Input}]};var Ea=function(){function e(e,t){this.element=e,this.templates=t,this.controls=[],this.fieldsets=[],this.hideNonRequiredFields=!0,this.autoFocusFirstField=!1,this.allFieldsRequired=!1,this.allFieldsNotRequired=!1,this.showingAllFields=!1,this.showingRequiredFields=!0,this.numControls=0}return e.prototype.ngOnInit=function(){this.ngOnChanges()},e.prototype.ngOnChanges=function(e){var t=this;this.form.layout=this.layout,this.fieldsets&&this.fieldsets.length||!this.controls||!this.controls.length?this.fieldsets&&this.fieldsets.forEach((function(e){t.numControls=t.numControls+e.controls.length})):(this.fieldsets=[{controls:this.controls}],this.numControls=this.controls.length);var n=[],o=[];this.fieldsets.forEach((function(e){e.controls.forEach((function(e){e.required?n.push(e):o.push(e)}))})),this.allFieldsRequired=n.length===this.numControls,this.allFieldsNotRequired=o.length===this.numControls,this.allFieldsNotRequired&&this.hideNonRequiredFields&&this.fieldsets.forEach((function(e){e.controls.forEach((function(e){t.form.controls[e.key].hidden=!1}))})),this.form.fieldsets=ae(this.fieldsets)},e.prototype.ngAfterContentInit=function(){var e=this;this.customTemplates&&this.customTemplates.length&&this.customTemplates.forEach((function(t){e.templates.addCustom(t.name,t.template)}))},e.prototype.showAllFields=function(){var e=this;this.form.fieldsets.forEach((function(t){t.controls.forEach((function(t){var n=e.form.controls[t.key];e.fieldsAlreadyHidden.includes(t.key)||(n.hidden=!1)}))})),this.showingAllFields=!0,this.showingRequiredFields=!1},e.prototype.showOnlyRequired=function(e){var t=this;this.fieldsAlreadyHidden=[],this.form.fieldsets.forEach((function(n){n.controls.forEach((function(n){var o=t.form.controls[n.key];o.hidden&&t.fieldsAlreadyHidden.push(n.key),n.required||(o.hidden=!0),e&&!R.isBlank(t.form.value[n.key])&&(!n.isEmpty||n.isEmpty&&n.isEmpty(o))&&(o.hidden=!0),o.errors&&(o.hidden=!1)}))})),this.showingAllFields=!1,this.showingRequiredFields=!0,this.forceValidation()},Object.defineProperty(e.prototype,"values",{get:function(){return this.form?this.form.value:null},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isValid",{get:function(){return!!this.form&&this.form.valid},enumerable:!1,configurable:!0}),e.prototype.updatedValues=function(){var e=this,t=null;return this.form.fieldsets.forEach((function(n){n.controls.forEach((function(n){(e.form.controls[n.key].dirty||n.dirty)&&(t||(t={}),t[n.key]=e.form.value[n.key])}))})),t},e.prototype.forceValidation=function(){var e=this;Object.keys(this.form.controls).forEach((function(t){var n=e.form.controls[t];n.required&&R.isBlank(e.form.value[n.key])&&(n.markAsDirty(),n.markAsTouched())}))},e}();Ea.decorators=[{type:t.Component,args:[{selector:"novo-dynamic-form",template:'\n <novo-control-templates></novo-control-templates>\n <div class="novo-form-container">\n <header>\n <ng-content select="form-title"></ng-content>\n <ng-content select="form-subtitle"></ng-content>\n </header>\n <form class="novo-form" [formGroup]="form">\n <ng-container *ngFor="let fieldset of form.fieldsets;let i = index">\n <novo-fieldset *ngIf="fieldset.controls.length" [index]="i" [autoFocus]="autoFocusFirstField" [icon]="fieldset.icon" [controls]="fieldset.controls" [title]="fieldset.title" [form]="form" [isEmbedded]="fieldset.isEmbedded" [isInlineEmbedded]="fieldset.isInlineEmbedded" [hidden]="fieldset.hidden"></novo-fieldset>\n </ng-container>\n </form>\n </div>\n ',providers:[ya]}]}],Ea.ctorParameters=function(){return[{type:t.ElementRef},{type:ya}]},Ea.propDecorators={controls:[{type:t.Input}],fieldsets:[{type:t.Input}],form:[{type:t.Input}],layout:[{type:t.Input}],hideNonRequiredFields:[{type:t.Input}],autoFocusFirstField:[{type:t.Input}],customTemplates:[{type:t.ContentChildren,args:[zt]}]};var wa=function(){function e(e){this.templates=e,this.hideHeader=!1,this.showingAllFields=!1,this.showingRequiredFields=!0}return Object.defineProperty(e.prototype,"value",{get:function(){return this.form.getRawValue()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isValid",{get:function(){return this.form.valid},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.form.layout=this.layout},e.prototype.ngAfterContentInit=function(){var e=this;this.customTemplates&&this.customTemplates.length&&this.customTemplates.forEach((function(t){e.templates.addCustom(t.name,t.template)}))},e.prototype.showAllFields=function(){var e=this;Object.keys(this.form.controls).forEach((function(t){e.form.controls[t].hidden=!1})),this.showingAllFields=!0,this.showingRequiredFields=!1},e.prototype.showOnlyRequired=function(e){var t=this;Object.keys(this.form.controls).forEach((function(n){t.form.controls[n].required||(t.form.controls[n].hidden=!0),e&&!R.isBlank(t.form.value[n])&&(t.form.controls[n].hidden=!0),t.form.controls[n].errors&&(t.form.controls[n].hidden=!1)})),this.showingAllFields=!1,this.showingRequiredFields=!0,this.forceValidation()},e.prototype.forceValidation=function(){var e=this;Object.keys(this.form.controls).forEach((function(t){var n=e.form.controls[t];n.required&&R.isBlank(e.form.value[n.key])&&(n.markAsDirty(),n.markAsTouched())}))},e}();wa.decorators=[{type:t.Component,args:[{selector:"novo-form",template:'\n <novo-control-templates></novo-control-templates>\n <div class="novo-form-container">\n <header *ngIf="!hideHeader">\n <ng-content select="form-title"></ng-content>\n <ng-content select="form-subtitle"></ng-content>\n </header>\n <form class="novo-form" [formGroup]="form">\n <ng-content></ng-content>\n </form>\n </div>\n ',providers:[ya]}]}],wa.ctorParameters=function(){return[{type:ya}]},wa.propDecorators={form:[{type:t.Input}],layout:[{type:t.Input}],hideHeader:[{type:t.Input}],customTemplates:[{type:t.ContentChildren,args:[zt]}]};var Ta={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Pa})),multi:!0},Oa=function(){};Oa.decorators=[{type:t.Component,args:[{selector:"novo-radio-group",template:"<ng-content></ng-content>"}]}];var Pa=function(){function e(e){this.ref=e,this.button=!1,this.theme="secondary",this.disabled=!1,this.change=new t.EventEmitter,this.onModelChange=function(){},this.onModelTouched=function(){}}return e.prototype.select=function(e){R.swallowEvent(e),this.checked||(this.checked=!this.checked,this.change.emit(this.value),this.onModelChange(this.value),this.ref.markForCheck())},e.prototype.writeValue=function(e){this.model=e,this.ref.markForCheck()},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e.prototype.setDisabledState=function(e){this.disabled=e},e}();Pa.decorators=[{type:t.Component,args:[{selector:"novo-radio",providers:[Ta],template:'\n <input [name]="name" type="radio" [checked]="checked" [attr.id]="name" (change)="select($event)" [disabled]="disabled">\n <label [attr.for]="name" (click)="select($event)" [class.disabled]="disabled">\n <button *ngIf="button" [ngClass]="{\'unchecked\': !checked, \'checked\': checked, \'has-icon\': !!icon}" [theme]="theme" [icon]="icon">{{ label }}</button>\n <div *ngIf="!button">\n <i [ngClass]="{\'bhi-radio-empty\': !checked, \'bhi-radio-filled\': checked}"></i>\n {{ label }}\n <ng-content></ng-content>\n </div>\n </label>\n ',host:{"[class.vertical]":"vertical"}}]}],Pa.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},Pa.propDecorators={name:[{type:t.Input}],value:[{type:t.Input}],checked:[{type:t.Input}],vertical:[{type:t.Input}],label:[{type:t.Input}],button:[{type:t.Input}],theme:[{type:t.Input}],icon:[{type:t.Input}],disabled:[{type:t.Input}],change:[{type:t.Output}]};var Aa=function(){};Aa.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[Pa,Oa],exports:[Pa,Oa]}]}];var Da=function(e){function t(t,n,o){var a=e.call(this,t,n,o)||this;return a.labels=n,a.taggingMode="",a}return te(t,e),Object.defineProperty(t.prototype,"term",{get:function(){return this._term},set:function(e){var t=this;this._term=e.searchTerm,this.taggingMode=e.taggingMode,this.hasError=!1,this.isLoading=!0,this.search(e,this.taggingMode).subscribe((function(e){t.matches=t.isStatic?t.filterData(e):e,t.isLoading=!1}),(function(){t.hasError=!0,t.isLoading=!1}))},enumerable:!1,configurable:!0}),t.prototype.search=function(e,t){var n=this,o=this.config.options[t];return u.from(new Promise((function(t,a){if(o)if(Array.isArray(o))n.isStatic=!0,t(n.structureArray(o));else if(o.hasOwnProperty("reject")&&o.hasOwnProperty("resolve")||Object.getPrototypeOf(o).hasOwnProperty("then"))n.isStatic=!1,o.then(n.structureArray.bind(n)).then(t,a);else{if("function"!=typeof o)throw a("The data provided is not an array or a promise"),new Error("The data provided is not an array or a promise");n.isStatic=!1,o(e).then(n.structureArray.bind(n)).then(t,a)}else a("error")})))},t.prototype.structureArray=function(e){var t=this;return!e||"string"!=typeof e[0]&&"number"!=typeof e[0]?e.map((function(e){var n=t.config.field?e[t.config.field[t.taggingMode]]:e.value||e;return{value:n,label:t.config.format?R.interpolate(t.config.format[t.taggingMode],e):e.label||String(n),data:e}})):e.map((function(e){return{value:e,label:e}}))},t.prototype.selectMatch=function(e){e&&(e.stopPropagation(),e.preventDefault());var t=this.activeMatch;return t&&(this.parent.onSelected(this.taggingMode,t),this.parent.hideResults()),!1},t}(It);Da.decorators=[{type:t.Component,args:[{selector:"quick-note-results",host:{class:"active"},template:'\n <novo-loading theme="line" *ngIf="isLoading && !matches.length"></novo-loading>\n <novo-list *ngIf="matches.length > 0">\n <novo-list-item\n *ngFor="let match of matches"\n (click)="selectMatch($event)"\n [class.active]="match===activeMatch"\n (mouseenter)="selectActive(match)">\n <item-content>\n <p [innerHtml]="highlight(match.label, term)"></p>\n </item-content>\n </novo-list-item>\n </novo-list>\n <p class="picker-error" *ngIf="hasError">{{ labels.quickNoteError }}</p>\n <p class="picker-null" *ngIf="!isLoading && !matches.length && !hasError">{{ labels.quickNoteEmpty }}</p>\n '}]}],Da.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne},{type:t.ChangeDetectorRef}]};var xa={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Ra})),multi:!0},Ra=function(e){function n(n,o,a){var i=e.call(this,o)||this;return i.zone=n,i.componentUtils=a,i.startupFocus=!1,i.focus=new t.EventEmitter,i.blur=new t.EventEmitter,i.change=new t.EventEmitter,i.placeholderVisible=!1,i._placeholderElement=null,i.onModelChange=function(){},i.onModelTouched=function(){},i.onActiveChange.subscribe((function(e){e||setTimeout((function(){i.hideResults()}))})),i}return te(n,e),n.prototype.ngOnInit=function(){if(!this.config)throw new Error("No config set for QuickNote!");if(!this.config.triggers)throw new Error("QuickNote config must supply triggers!");if(!this.config.options)throw new Error("QuickNote config must supply options!");this.resultsComponent=this.config.resultsTemplate||Da},n.prototype.ngOnDestroy=function(){var e=this;this.ckeInstance&&(this.ckeInstance.focusManager.blur(!0),setTimeout((function(){e.ckeInstance.removeAllListeners(),CKEDITOR.instances[e.ckeInstance.name].destroy(),e.ckeInstance.destroy(),e.ckeInstance=null})))},n.prototype.ngAfterViewInit=function(){var e=this;CKEDITOR?(this.ckeInstance=CKEDITOR.replace(this.host.nativeElement,this.getCKEditorConfig()),this.writeValue(this.model),this.ckeInstance.on("key",(function(t){e.onKey(t.data.domEvent.$)||t.cancel()})),this.ckeInstance.on("change",(function(){e.debounceTimeout&&clearTimeout(e.debounceTimeout),e.debounceTimeout=setTimeout((function(){e.zone.run((function(){e.onValueChange()})),e.debounceTimeout=null}),250)})),this.ckeInstance.on("blur",(function(t){e.showPlaceholder(),e.blur.emit(t)})),this.ckeInstance.on("focus",(function(t){e.hidePlaceholder(),e.focus.emit(t)})),this.ckeInstance.on("instanceReady",(function(t){e.showPlaceholder(),e.config.readOnly&&e.ckeInstance.setReadOnly(e.config.readOnly)}))):console.error("Make sure to include CKEditor sources in your dependencies!")},n.prototype.onTouched=function(e){this.onModelTouched()},n.prototype.writeValue=function(e){e&&(e.references||e.note)?this.model={note:e.note||"",references:e.references||{}}:this.model={note:e,references:{}},this.ckeInstance&&this.ckeInstance.setData(this.model.note)},n.prototype.registerOnChange=function(e){this.onModelChange=e},n.prototype.registerOnTouched=function(e){this.onModelTouched=e},n.defaultRenderer=function(e,t){return"<a>"+e+t.label+"</a>"},n.prototype.getRenderer=function(e){return this.config.renderer?this.config.renderer[e]:n.defaultRenderer},n.prototype.onKey=function(e){var t=this;if(e.key)if(this.quickNoteResults){if(e.keyCode===We.ESC)return this.zone.run((function(){t.hideResults()})),!1;if(e.keyCode===We.UP)return this.zone.run((function(){t.quickNoteResults.instance.prevActiveMatch()})),!1;if(e.keyCode===We.DOWN)return this.zone.run((function(){t.quickNoteResults.instance.nextActiveMatch()})),!1;if(e.keyCode===We.ENTER)return this.zone.run((function(){t.quickNoteResults.instance.selectActiveMatch()})),!1}else{var n=this.config.triggers||{};Object.keys(n).forEach((function(o){var a=n[o]||{};e.key===a&&(t.isTagging=!0,t.taggingMode=o)}))}return!0},n.prototype.onValueChange=function(){var e=this.ckeInstance.getData(),t=new RegExp(String.fromCharCode(8203),"g");e=e.replace(t,""),this.validateReferences(),this.showResults();var n=null;e&&(n={note:e,references:this.model.references}),this.onModelChange(n),this.change.emit(n),this.onTouched()},n.prototype.showResults=function(){if(this.isTagging){var e=this.getSearchTerm();e.length?this.quickNoteResults?this.quickNoteResults.instance.term={searchTerm:e,taggingMode:this.taggingMode}:(this.quickNoteResults=this.componentUtils.append(this.resultsComponent,this.results),this.quickNoteResults.instance.parent=this,this.quickNoteResults.instance.config=this.config,this.quickNoteResults.instance.term={searchTerm:e,taggingMode:this.taggingMode},this.positionResultsDropdown()):this.quickNoteResults&&(this.quickNoteResults.destroy(),this.quickNoteResults=null),this.toggleActive(null,!0)}},n.prototype.hideResults=function(){this.isTagging=!1,this.quickNoteResults&&(this.quickNoteResults.destroy(),this.quickNoteResults=null)},n.prototype.onSelected=function(e,t){this.isTagging=!1;var n=this.config.triggers[e],o=this.getRenderer(e)(n,t);this.replaceWordAtCursor(o),this.model.references=this.model.references||{},this.model.references[e]=this.model.references[e]||[],0===this.model.references[e].filter((function(e){return JSON.stringify(e)===JSON.stringify(t)})).length&&this.model.references[e].push(t),this.onValueChange()},n.prototype.getSearchTerm=function(){var e=this.getWordAtCursor().trim();if(this.isTagging){var t=this.config.triggers[this.taggingMode];if(!e.includes(t))return this.hideResults(),"";e=e.slice(e.indexOf(t)+t.length)}return e},n.prototype.getWordAtCursor=function(){var e=this.ckeInstance.getSelection().getRanges()[0],t=e.startContainer;if(t.type===CKEDITOR.NODE_TEXT&&e.startOffset){var n=t.getText(),o=this.config.triggers[this.taggingMode],a=n.lastIndexOf(o,e.startOffset-1);if(a>0){var i=n.charAt(a-1);if(""!==i&&/\S/.test(i))return""}else if(t.hasPrevious()&&/\S$/.test(t.getPrevious().getText()))return"";var r=n.indexOf(" ",e.startOffset+1);return-1===a&&(a=0),-1===r&&(r=n.length),n.substring(a,r)}return""},n.prototype.replaceWordAtCursor=function(e){var t=this.getWordAtCursor().trim(),n=this.ckeInstance.getSelection().getRanges()[0],o=n.startContainer,a=o.getParent();if(o.type===CKEDITOR.NODE_TEXT&&a){var i=a.getHtml(),r=i.lastIndexOf(t);if(r>=0){var s=i.substring(0,r)+e+" "+i.substring(r+t.length);a.setHtml(s),n.moveToPosition(a,CKEDITOR.POSITION_BEFORE_END),this.ckeInstance.getSelection().selectRanges([n])}}},n.prototype.validateReferences=function(){var e=this,t=this.ckeInstance.document.getBody().getHtml(),n=new RegExp("&","g");t=t.replace(n,"&"),Object.keys(this.model.references).forEach((function(n){var o=e.model.references[n]||[],a=e.config.triggers[n],i=e.getRenderer(n);e.model.references[n]=o.filter((function(e){var n=i(a,e);return t.includes(n)})),0===e.model.references[n].length&&delete e.model.references[n]}))},n.prototype.getCKEditorConfig=function(){var e=this.wrapper.nativeElement.clientHeight-n.TOOLBAR_HEIGHT;return this.wrapper.nativeElement.style.setProperty("height","100%"),{enterMode:CKEDITOR.ENTER_BR,shiftEnterMode:CKEDITOR.ENTER_P,disableNativeSpellChecker:!1,height:e,startupFocus:this.startupFocus,removePlugins:"liststyle,tabletools,contextmenu",toolbar:[{name:"basicstyles",items:["Styles","FontSize","Bold","Italic","Underline","TextColor","-","NumberedList","BulletedList","Outdent","Indent","Link"]}]}},n.prototype.getCursorPosition=function(){var e=this.ckeInstance.getSelection().getRanges()[0].startContainer.$.parentElement,t=this.ckeInstance.editable().$,n=document.createElement("img");n.setAttribute("src","null"),n.setAttribute("width","0"),n.setAttribute("height","0"),e.appendChild(n);var o={top:n.offsetTop-t.scrollTop,left:n.offsetLeft-t.scrollLeft};return n.remove(),o},n.prototype.positionResultsDropdown=function(){var e=2*n.TOOLBAR_HEIGHT,t=this.getContentHeight()+n.TOOLBAR_HEIGHT,o=this.getCursorPosition().top+n.TOOLBAR_HEIGHT;o=Math.max(o,e),o=Math.min(o,t),this.quickNoteResults.instance.element.nativeElement.style.setProperty("margin-top",o+"px")},n.prototype.getContentHeight=function(){var e=0;if(this.ckeInstance.ui&&this.ckeInstance.ui.contentsElement&&this.ckeInstance.ui.contentsElement.$&&this.ckeInstance.ui.contentsElement.$.style){var t=this.ckeInstance.ui.contentsElement.$.style.cssText;if(-1!==t.indexOf("height: ")){var n=t.split("height: ")[1];n=n.split("px")[0],e=parseInt(n,10)}}return e},n.prototype.showPlaceholder=function(){this.ckeInstance.getData()||this.startupFocus||(this.ckeInstance.editable().getParent().$.appendChild(this.placeholderElement),this.placeholderVisible=!0)},n.prototype.hidePlaceholder=function(){this.placeholderVisible&&(this.ckeInstance.editable().getParent().$.removeChild(this.placeholderElement),this.placeholderVisible=!1)},Object.defineProperty(n.prototype,"placeholderElement",{get:function(){return this._placeholderElement||(this._placeholderElement=document.createElement("div"),this._placeholderElement.className="placeholder",this._placeholderElement.style.cssText="margin: 20px; color: #AAAAAA; font-family: sans-serif; font-size: 13px; line-height: 20px; position: absolute; top: 0",this._placeholderElement.textContent=this.placeholder),this._placeholderElement},enumerable:!1,configurable:!0}),n}($e);Ra.TOOLBAR_HEIGHT=40,Ra.decorators=[{type:t.Component,args:[{selector:"novo-quick-note",providers:[xa],template:'\n <div class="quick-note-wrapper" #wrapper><textarea #host></textarea> <span #results></span></div>\n '}]}],Ra.ctorParameters=function(){return[{type:t.NgZone},{type:t.ElementRef},{type:mt}]},Ra.propDecorators={wrapper:[{type:t.ViewChild,args:["wrapper",{static:!0}]}],host:[{type:t.ViewChild,args:["host",{static:!0}]}],results:[{type:t.ViewChild,args:["results",{read:t.ViewContainerRef,static:!0}]}],config:[{type:t.Input}],startupFocus:[{type:t.Input}],placeholder:[{type:t.Input}],focus:[{type:t.Output}],blur:[{type:t.Output}],change:[{type:t.Output}]};var Ma=function(){};Ma.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,ze,pt],declarations:[Ra,Da],exports:[Ra,Da]}]}];var Fa=function(){};Fa.decorators=[{type:t.Component,args:[{selector:"header-spacer",template:"\n <ng-content></ng-content>\n "}]}];var La=function(){};La.decorators=[{type:t.Component,args:[{selector:"utils",template:"\n <ng-content></ng-content>\n "}]}];var Na=function(){};Na.decorators=[{type:t.Component,args:[{selector:"util-action, novo-action",template:'\n <button theme="icon" [icon]="icon" [attr.inverse]="inverse" [disabled]="disabled">\n <ng-content></ng-content>\n </button>\n '}]}],Na.propDecorators={icon:[{type:t.Input}],inverse:[{type:t.Input}],disabled:[{type:t.Input}]};var Ba=function(){function e(){this.headerClass="novo-header",this.condensed=!1,this.inverse="inverse"}return Object.defineProperty(e.prototype,"theme",{get:function(){return this._theme},set:function(e){this._theme=e,this.inverse="white"===e||"off-white"===e||"light"===e?void 0:"inverse"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"icon",{get:function(){return this._icon},set:function(e){this._icon="bhi-"+e},enumerable:!1,configurable:!0}),e}();Ba.decorators=[{type:t.Component,args:[{selector:"header[theme]",template:'\n <section>\n <div class="header-title">\n <ng-container *ngIf="title">\n <i *ngIf="icon" class="header-icon" [ngClass]="icon"></i>\n <div class="header-titles">\n <h1>{{ title }}</h1>\n <small *ngIf="subTitle">{{ subTitle }}</small>\n </div>\n </ng-container>\n <ng-container *ngIf="!title">\n <ng-content select="novo-icon, [novo-icon]"></ng-content>\n <div class="header-titles">\n <ng-content select="h1, h2, h3, h4, h5, h6, small, [novo-title], [novo-subtitle]"></ng-content>\n </div>\n </ng-container>\n </div>\n <ng-content select="section"></ng-content>\n <span flex></span>\n <ng-content select="utils"></ng-content>\n <ng-content select="novo-action"></ng-content>\n </section>\n <ng-content></ng-content>\n '}]}],Ba.propDecorators={headerClass:[{type:t.HostBinding,args:["class"]}],condensed:[{type:t.HostBinding,args:["class.condensed"]},{type:t.Input}],title:[{type:t.Input}],subTitle:[{type:t.Input}],theme:[{type:t.HostBinding,args:["attr.theme"]},{type:t.Input}],icon:[{type:t.Input}]};var Ha=function(){};Ha.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[Ba,Na,La,Fa],exports:[Ba,Na,La,Fa]}]}];var _a=function(){function e(e,n){this.labels=e,this.sanitizer=n,this.button=!0,this.sanitize=!0,this.confirmed=new t.EventEmitter,this.isActive=!0,this.isActive=!0,this.isLocalStorageEnabled=function(){var e=!1;if("object"==typeof localStorage)try{localStorage.setItem("lsTest","1"),localStorage.removeItem("lsTest"),e=!0}catch(e){console.warn('This web browser does not support storing settings locally. In Safari, the most common cause of this is using "Private Browsing Mode". Some settings may not save or some features may not work properly for you.')}return e}()}return Object.defineProperty(e.prototype,"tipWithStyles",{get:function(){return this._tipWithStyles&&this._lastTipStyled===this.tip||(this._tipWithStyles=this.sanitizer.bypassSecurityTrustHtml(this.tip),this._lastTipStyled=this.tip),this._tipWithStyles},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){if(this.tip=this.tip||"",this.buttonText=this.buttonText||this.labels.okGotIt,this.button="string"==typeof this.button?"true"===this.button:this.button,this.icon=this.icon||null,this.name=this.name||Math.round(100*Math.random()),this.localStorageKey="novo-tw_"+this.name,this.isLocalStorageEnabled){var e=JSON.parse(localStorage.getItem(this.localStorageKey));this.isActive=!1!==e}},e.prototype.hideTip=function(){this.isLocalStorageEnabled&&localStorage.setItem(this.localStorageKey,JSON.stringify(!1)),this.isActive=!1,this.confirmed.emit()},e}();_a.decorators=[{type:t.Component,args:[{selector:"novo-tip-well",template:'\n <div *ngIf="isActive">\n <div>\n <i class="bhi-{{ icon }}" *ngIf="icon" [attr.data-automation-id]="\'novo-tip-well-icon-\' + name"></i>\n <p *ngIf="sanitize" [attr.data-automation-id]="\'novo-tip-well-tip-\' + name">{{ tip }}</p>\n <p *ngIf="!sanitize" [attr.data-automation-id]="\'novo-tip-well-tip-\' + name" [innerHTML]="tipWithStyles"></p>\n </div>\n <button theme="dialogue" (click)="hideTip()" *ngIf="button" [attr.data-automation-id]="\'novo-tip-well-button-\' + name">\n {{ buttonText }}\n </button>\n </div>\n ',host:{"[class.active]":"isActive"}}]}],_a.ctorParameters=function(){return[{type:Ne},{type:f.DomSanitizer}]},_a.propDecorators={name:[{type:t.Input}],tip:[{type:t.Input}],buttonText:[{type:t.Input}],button:[{type:t.Input}],icon:[{type:t.Input}],sanitize:[{type:t.Input}],confirmed:[{type:t.Output}]};var Ga=function(){};Ga.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[_a],exports:[_a]}]}];var Va=function(){};Va.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[ca,da,pa],exports:[da,pa]}]}];var Ua=function(){};Ua.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.ReactiveFormsModule,Aa,Rn,ln,Nt,Gt,Vn,bo,Kt,An,Ma,Co,Ha,U,mn,S.TextMaskModule,Ga,Va,_,B,jt],declarations:[va,ba,Ea,wa,Ia,ka,ma,ha,Ca,Sa],exports:[va,Ea,ba,wa,ka,Ca,Sa],providers:[ya]}]}];var Ka=function(){function e(e,t){this.element=e,this.cdr=t,this.size="medium",this.role="img"}return Object.defineProperty(e.prototype,"alt",{get:function(){return this.ariaLabel},set:function(e){this.ariaLabel=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"name",{get:function(){return this.iconName},set:function(e){this.iconName="bhi-"+e},enumerable:!1,configurable:!0}),e.prototype.ngAfterViewInit=function(){var e=this;this.element.nativeElement.textContent.trim()&&Promise.resolve().then((function(){e.name=e.element.nativeElement.textContent.trim(),e.cdr.markForCheck()}))},e}();Ka.decorators=[{type:t.Component,args:[{selector:"novo-icon",changeDetection:t.ChangeDetectionStrategy.OnPush,template:'\n <i [class]="iconName"><span><ng-content></ng-content></span></i>\n '}]}],Ka.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},Ka.propDecorators={raised:[{type:t.HostBinding,args:["attr.raised"]},{type:t.Input}],size:[{type:t.HostBinding,args:["attr.size"]},{type:t.Input}],theme:[{type:t.HostBinding,args:["attr.theme"]},{type:t.Input}],color:[{type:t.HostBinding,args:["attr.color"]},{type:t.Input}],role:[{type:t.HostBinding,args:["attr.role"]}],ariaLabel:[{type:t.HostBinding,args:["attr.aria-label"]}],alt:[{type:t.Input}],name:[{type:t.Input}]};var za=function(){};za.decorators=[{type:t.NgModule,args:[{exports:[Ka],declarations:[Ka]}]}];var ja={provide:n.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return $a})),multi:!0},$a=function(){function e(e,n){this.element=e,this.labels=n,this.placeholder="",this.changed=new t.EventEmitter,this.focus=new t.EventEmitter,this.blur=new t.EventEmitter,this.items=[],this._items=new u.ReplaySubject(1),this.selected=null,this.config={},this._value={},this.notShown={},this.onModelChange=function(){},this.onModelTouched=function(){},this.chipsCount=4}return Object.defineProperty(e.prototype,"value",{get:function(){return this._value},set:function(e){var t=this;e?this.types.forEach((function(n){return t._value[n.value]=e[n.value]})):(this._value={},this.types.forEach((function(e){return t._value[e.value]=[]}))),this.changed.emit(e),this.onModelChange(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.selectAllOption=this.source.selectAllOption||!1,this.chipsCount=this.source.chipsCount||4,this.strictRelationship=this.source.strictRelationship||!1,this.setupOptions()},e.prototype.clearValue=function(){var e=this;this.types.forEach((function(t){return e.modifyAllOfType(t.value,"unselect")})),this.items=[],this._items.next(this.items),this.setInitialValue(null),this.onModelChange(this.value)},e.prototype.removeFromDisplay=function(e,t){this.remove(!0,t),this.modifyAffectedParentsOrChildren(!1,t)},e.prototype.setupOptions=function(){var e=this;this.options=this.source.options||[],this._options=[],this.options&&this.options.forEach((function(t){var n=e.setupOptionsByType(t);e._options.push(n)})),this.source.options=this._options},e.prototype.setupOptionsByType=function(e){var t=this,n={type:e.type,label:e.label||e.type};if(n.data=e.data.map((function(n){return t.formatOption(e,n)})),this.selectAllOption){var o=this.createSelectAllOption(e);n.data.splice(0,0,o)}return n.originalData=n.data.slice(),n},e.prototype.formatOption=function(e,t){var n={value:e.field?t[e.field]:t.value||t,label:e.format?R.interpolate(e.format,t):t.label||String(t.value||t),type:e.type,checked:void 0,isParentOf:e.isParentOf,isChildOf:e.isChildOf};return n.isChildOf&&(n[e.isChildOf]=t[e.isChildOf]),n},e.prototype.createSelectAllOption=function(e){var t={value:"ALL",label:"All "+e.type,type:e.type,checked:this.model&&this.model.length&&-1!==this.model.indexOf("ALL"),isParentOf:e.isParentOf,isChildOf:e.isChildOf};if(e.isChildOf){var n=e.data.reduce((function(t,n){return t.concat(n[e.isChildOf])}),[]);t[e.isChildOf]=n}return t},e.prototype.deselectAll=function(){this.selected=null},e.prototype.select=function(e,t){this.blur.emit(e),this.deselectAll(),this.selected=t},e.prototype.onFocus=function(e){this.element.nativeElement.classList.add("selected"),this.focus.emit(e)},e.prototype.clickOption=function(e){if(e&&!(e instanceof Event)){!1===e.checked?this.remove(null,e):this.add(e),this.modifyAffectedParentsOrChildren(e.checked,e);var t=this.element.nativeElement.querySelector("novo-picker > input");t&&t.focus()}},e.prototype.add=function(e){"ALL"===e.value?this.modifyAllOfType(e.type,"select"):(this.updateDisplayItems(e,"add"),this.value[e.type].push(e.value),this.updateAllItemState(e.type),this.triggerValueUpdate()),this.updateParentOrChildren(e,"select"),this.select(null,e)},e.prototype.updateAllItemState=function(e){var t=this.getAllOfType(e),n=this.allItemsSelected(t,e);return n&&this.selectAll(t,e),{allOfType:t,allOfTypeSelected:n}},e.prototype.setIndeterminateState=function(e,t){this.selectAllOption&&(e[0].indeterminate=t)},e.prototype.updateDisplayItems=function(e,t){"add"===t?this.items.push(e):this.items.indexOf(e)>-1&&this.items.splice(this.items.indexOf(e),1),this.updateDisplayText(this.items),this._items.next(this.items)},e.prototype.updateDisplayText=function(e){var t=this;this.notShown=[];var n=e.slice(this.chipsCount);n.length>0&&this.types.forEach((function(e){var o,a=n.filter((function(t){return t.type===e.value})),i=1===(o=1===a.length&&"ALL"===a[0].value?t.getAllOfType(e.value).length-1:a.length)?e.singular:e.plural||e.value;o>0&&t.notShown.push({type:i,count:o})}))},e.prototype.remove=function(e,t){var n;e&&(n=!0);var o=t;"ALL"===o.value?(n=!1,this.modifyAllOfType(o.type,"unselect")):this.allOfTypeSelected(o.type)&&this.handleRemoveItemIfAllSelected(o),this.removeItem(t,n)},e.prototype.removeItem=function(e,t){e.checked=!1,this.deselectAll(),this.removeValue(e),"ALL"!==e.value&&this.updateParentOrChildren(e,"unselect"),t&&this.modifyAffectedParentsOrChildren(!1,e)},e.prototype.removeValue=function(e){var t=this.value[e.type].filter((function(t){return t!==e.value}));this.value[e.type]=t,this.triggerValueUpdate(),this.updateDisplayItems(e,"remove")},e.prototype.onKeyDown=function(e){e.keyCode===We.BACKSPACE&&e.target&&0===e.target.value.length&&this.items.length&&(e&&(e.stopPropagation(),e.preventDefault()),this.selected?this.remove(null,this.selected):this.select(e,this.items[this.items.length-1]))},e.prototype.allOfTypeSelected=function(e){return this.items.filter((function(t){return t.type===e&&"ALL"===t.value})).length>0},e.prototype.modifyAllOfType=function(e,t){var n="select"===t,o=this.getAllOfType(e);o.forEach((function(e){e.checked=n,e.indeterminate=!1})),n?this.selectAll(o,e):(this.items=ae(this.items.filter((function(t){return t.type!==e}))),this._items.next(this.items),this.value[e]=[]),this.selectAllOption&&this.updateAllParentsOrChildren(o[0],t),this.triggerValueUpdate()},e.prototype.triggerValueUpdate=function(){var e=this,t={};this.types.forEach((function(n){return t[n.value]=e.value[n.value]})),this.value=t},e.prototype.selectAll=function(e,t){if(this.selectAllOption){e[0].checked=!0;var n=e.map((function(e){return e.value}));n.splice(0,1),this.value[t]=n;var o=this.items.filter((function(e){return e.type!==t}));this.items=o,this.updateDisplayItems(e[0],"add")}},e.prototype.handleRemoveItemIfAllSelected=function(e){if(this.selectAllOption){var t=e.type,n=this.getAllOfType(t),o=n[0];this.removeItem(o),o.indeterminate=!0;var a=n.filter((function(e){return!0===e.checked}));this.items=ae(this.items,a);var i=a.map((function(e){return e.value}));this.value[t]=ae(i)}},e.prototype.handleOutsideClick=function(e){this.element.nativeElement.contains(e.target)||(this.blur.emit(e),this.deselectAll())},e.prototype.getAllOfType=function(e){return this._options.filter((function(t){return t.type===e}))[0].originalData},e.prototype.updateParentOrChildren=function(e,t){this.strictRelationship&&e.isParentOf?this.updateChildrenValue(e,t):e.isChildOf&&this.selectAllOption&&this.updateParentValue(e,t)},e.prototype.modifyAffectedParentsOrChildren=function(e,t){var n=this;if(t.isChildOf||t.isParentOf){var o=this.types.filter((function(e){return!!e.isParentOf}))[0].value,a=this.getAllOfType(o),i=a[0].isParentOf,r=this.getAllOfType(i),s=r.filter((function(e){return!!e.checked}));a.forEach((function(a){if("ALL"!==a.value){var i=s.filter((function(e){return e[o].filter((function(e){return e===a.value})).length>0}));if(e){if(a.checked)return;a.indeterminate=i.length>0}else{var l=r.filter((function(e){return"ALL"!==e.value&&e[o].filter((function(e){return e===a.value})).length>0}));if(i.length>0)a.checked?n.strictRelationship&&l.length!==i.length&&(a.indeterminate=!0,a.checked=!1,n.removeValue(a),n.addIndividualChildren(i)):a.indeterminate=!0,n.strictRelationship&&t.type!==o&&a.checked&&(a.checked=!1,n.removeValue(a),n.addIndividualChildren(i));else{if(a.indeterminate=!1,0===l.length)return;n.strictRelationship&&t.type!==o&&n.remove(null,a)}}}})),this.selectAllOption&&this.updateIndeterminateStates(a,r,s)}},e.prototype.updateAllParentsOrChildren=function(e,t){e.isParentOf?this.updateAllChildrenValue(e,t):e.isChildOf&&this.updateAllParentValue(e,t)},e.prototype.updateAllChildrenValue=function(e,t){var n=this,o="select"===t,a=e.isParentOf,i=this.getAllOfType(a);this.selectAllOption&&this.allOfTypeSelected(a)&&!o?this.remove(null,i[0]):i.forEach((function(e){"ALL"!==e.value||e.checked?(e.checked&&!o&&n.remove(null,e),e.checked=o):(o&&(e.checked=!0),e.indeterminate=o)}))},e.prototype.updateAllParentValue=function(e,t){var n="select"===t,o=e.isChildOf;this.getAllOfType(o).forEach((function(e){e.checked||(e.indeterminate=n)}))},e.prototype.updateIndeterminateStates=function(e,t,n){var o=e.filter((function(e){return!(!e.checked&&!e.indeterminate||"ALL"===e.value)})),a=!e[0].checked&&o.length>0,i=!t[0].checked&&n.length>0;this.setIndeterminateState(e,a),this.setIndeterminateState(t,i)},e.prototype.updateChildrenValue=function(e,t){var n=this,o="select"===t,a=e.isParentOf;this.getAllOfType(a).forEach((function(t){"ALL"!==t.value&&t[e.type].filter((function(t){return t===e.value})).length>0&&(t.checked&&!o&&(t.checked=!1,n.allOfTypeSelected(a)?n.handleRemoveItemIfAllSelected(t):n.removeValue(t)),t.checked=o)}))},e.prototype.updateParentValue=function(e,t){var n=this.getAllOfType(e.isChildOf);n[0].checked&&"select"!==t&&this.handleRemoveItemIfAllSelected(n[0])},e.prototype.addIndividualChildren=function(e){var t=this,n=!1;e.forEach((function(e){e.isChildOf&&e[e.isChildOf].forEach((function(o){t.value[e.isChildOf].filter((function(e){return e===o})).length>0&&(n=!0)})),0!==t.value[e.type].filter((function(t){return t===e.value})).length||n||t.add(e)}))},e.prototype.setInitialValue=function(e){var t=this;this.items=[],this.value=e||{},this.types&&this.types.forEach((function(e){var n=e.value;if(t.value[n]){var o=!1,a=t.updateAllItemState(n),i=a.allOfType,r=a.allOfTypeSelected;t.value[n].forEach((function(e){r||o||(o=!0,t.setIndeterminateState(i,!0));var n=i.filter((function(t){return t.value===e}))[0];n.checked=!0,r||t.updateDisplayItems(n,"add"),t.strictRelationship&&n.isParentOf&&t.updateChildrenValue(n,"select")})),e.isChildOf&&t.modifyAffectedParentsOrChildren(!0,{value:n,isChildOf:!0})}else t.value[n]=[]}))},e.prototype.allItemsSelected=function(e,t){return this.value[t].length===e.length-1},e.prototype.onTouched=function(e){this.element.nativeElement.classList.remove("selected"),this.onModelTouched(),this.blur.emit(e)},e.prototype.writeValue=function(e){this.model=e,this.setInitialValue(e)},e.prototype.registerOnChange=function(e){this.onModelChange=e},e.prototype.registerOnTouched=function(e){this.onModelTouched=e},e}();$a.decorators=[{type:t.Component,args:[{selector:"multi-picker",providers:[ja],template:'\n <chip\n *ngFor="let item of (_items | async | slice: 0:chipsCount)"\n [type]="item.type"\n [class.selected]="item == selected"\n (remove)="removeFromDisplay($event, item)"\n (select)="select($event, item)"\n >\n {{ item.label }}\n </chip>\n <div *ngIf="items.length > chipsCount">\n <ul class="summary">\n <li *ngFor="let type of notShown">+ {{ type.count }} {{ labels.more }} {{ type.type }}</li>\n </ul>\n </div>\n <div class="chip-input-container">\n <novo-picker\n clearValueOnSelect="true"\n [config]="source"\n [placeholder]="placeholder"\n (select)="clickOption($event)"\n (keydown)="onKeyDown($event)"\n (focus)="onFocus($event)"\n (blur)="onTouched($event)"\n [overrideElement]="element"\n >\n </novo-picker>\n </div>\n <i class="bhi-search" [class.has-value]="items.length"></i>\n <label class="clear-all" *ngIf="items.length" (click)="clearValue()">{{ labels.clearAll }} <i class="bhi-times"></i></label>\n ',host:{"[class.with-value]":"items.length > 0"}}]}],$a.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne}]},$a.propDecorators={source:[{type:t.Input}],placeholder:[{type:t.Input}],types:[{type:t.Input}],changed:[{type:t.Output}],focus:[{type:t.Output}],blur:[{type:t.Output}],value:[{type:t.Input}]};var Wa=function(){};Wa.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,Nt,Gt],declarations:[$a],exports:[$a]}]}];var Za=function(){},Ya=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),Object.defineProperty(t.prototype,"nativeGlobal",{get:function(){return window},enumerable:!1,configurable:!0}),t}(Za);Ya.decorators=[{type:t.Injectable}];!function(e){function t(){return null!==e&&e.apply(this,arguments)||this}te(t,e),Object.defineProperty(t.prototype,"nativeGlobal",{get:function(){throw new Error("global doesn't compile for some reason")},enumerable:!1,configurable:!0})}(Za);var qa=function(){function e(){}return e.prototype.setItem=function(e,t){localStorage.setItem(e,t)},e.prototype.getItem=function(e){return localStorage.getItem(e)},e.prototype.removeItem=function(e){localStorage.removeItem(e)},e}();qa.decorators=[{type:t.Injectable}];var Ja=function(){function e(e,t,n,o){this._http=e,this.platformId=t,this._global=n,this._localStorageService=o}return e.prototype.getPredictions=function(e,t){var n=this;return new Promise((function(o){n._http.get(e+"?query="+t).subscribe((function(e){o(e||!1)}))}))},e.prototype.getLatLngDetail=function(e,t,n){var o=this;return new Promise((function(a){o._http.get(e+"?lat="+t+"&lng="+n).subscribe((function(e){a(e||!1)}))}))},e.prototype.getPlaceDetails=function(e,t){var n=this;return new Promise((function(o){n._http.get(e+"?query="+t).subscribe((function(e){o(e||!1)}))}))},e.prototype.getGeoCurrentLocation=function(){var e=this;return new Promise((function(t){if(s.isPlatformBrowser(e.platformId)){var n=e._global.nativeGlobal;n.navigator.geolocation?n.navigator.geolocation.getCurrentPosition((function(e){var n={lat:parseFloat(e.coords.latitude+""),lng:parseFloat(e.coords.longitude+"")};t(n)})):t(!1)}else t(!1)}))},e.prototype.getGeoLatLngDetail=function(e){var t=this;return new Promise((function(n){s.isPlatformBrowser(t.platformId)?(new t._global.nativeGlobal.google.maps.Geocoder).geocode({location:e},(function(e,o){"OK"===o?t.getGeoPlaceDetail(e[0].place_id).then((function(e){n(e||!1)})):n(!1)})):n(!1)}))},e.prototype.getGeoPrediction=function(e){var t=this;return new Promise((function(n){if(s.isPlatformBrowser(t.platformId)){var o=t._global.nativeGlobal,a=new o.google.maps.places.AutocompleteService,i={},r=[];if(i=e.countryRestriction.length?{input:e.query,componentRestrictions:{country:e.countryRestriction}}:{input:e.query},e.geoLocation&&(i.location=new o.google.maps.LatLng(parseFloat(e.geoLocation[0]),parseFloat(e.geoLocation[1])),i.radius=e.radius),e.geoTypes.length)for(var l=0;l<e.geoTypes.length;l++){var c=i;c.types=new Array(e.geoTypes[l]),r.push(t.geoPredictionCall(a,c))}else r.push(t.geoPredictionCall(a,i));Promise.all(r).then((function(e){var o=e;if(o.length>1){for(var a=[],i=0;i<o.length;i++)o[i]&&o[i].length&&(a=a.concat(o[i]));a=t.getUniqueResults(a),n(a)}else n(e[0])}))}else n(!1)}))},e.prototype.getGeoPlaceDetail=function(e){var t=this;return new Promise((function(n){s.isPlatformBrowser(t.platformId)?new t._global.nativeGlobal.google.maps.places.PlacesService(document.createElement("div")).getDetails({placeId:e},(function(e,o){null===e||0===e.length?t.getGeoPaceDetailByReferance(e.referance).then((function(e){n(e||!1)})):n(e)})):n(!1)}))},e.prototype.getGeoPaceDetailByReferance=function(e){var t=this;return new Promise((function(n){if(s.isPlatformBrowser(t.platformId)){var o=t._global.nativeGlobal;(new o.google.maps.places.PlacesService).getDetails({reference:e},(function(e,t){t===o.google.maps.places.PlacesServiceStatus.OK?n(e):n(!1)}))}else n(!1)}))},e.prototype.addRecentList=function(e,t,n){var o=this;this.getRecentList(e).then((function(a){if(a){for(var i=0;i<a.length;i++)if(a[i].description===t.description){a.splice(i,1);break}a.unshift(t),a.length>n&&a.pop(),o._localStorageService.setItem(e,JSON.stringify(a))}}))},e.prototype.getRecentList=function(e){var t=this;return new Promise((function(n){var o=t._localStorageService.getItem(e);n(o=o?JSON.parse(o):[])}))},e.prototype.getUniqueResults=function(e){return Array.from(e.reduce((function(e,t){return e.set(t.place_id,t)}),new Map).values())},e.prototype.geoPredictionCall=function(e,t){var n=this._global.nativeGlobal;return new Promise((function(o){e.getPlacePredictions(t,(function(e,t){t===n.google.maps.places.PlacesServiceStatus.OK?o(e):o(!1)}))}))},e}();Ja.decorators=[{type:t.Injectable}],Ja.ctorParameters=function(){return[{type:w.HttpClient},{type:Object,decorators:[{type:t.Inject,args:[t.PLATFORM_ID]}]},{type:Za},{type:qa}]};var Xa=function(){function e(e,n,o,a){this.platformId=e,this._elmRef=n,this._global=o,this._googlePlacesService=a,this.term="",this.termChange=new t.EventEmitter,this.select=new t.EventEmitter,this.locationInput="",this.gettingCurrentLocationFlag=!1,this.dropdownOpen=!1,this.recentDropdownOpen=!1,this.queryItems=[],this.isSettingsError=!1,this.settingsErrorMsg="",this.settings={},this.moduleinit=!1,this.selectedDataIndex=-1,this.recentSearchData=[],this.userSelectedOption="",this.defaultSettings={geoPredictionServerUrl:"",geoLatLangServiceUrl:"",geoLocDetailServerUrl:"",geoCountryRestriction:[],geoTypes:[],geoLocation:[],geoRadius:0,serverResponseListHierarchy:[],serverResponseatLangHierarchy:[],serverResponseDetailHierarchy:[],resOnSearchButtonClickOnly:!1,useGoogleGeoApi:!0,inputPlaceholderText:"Enter Area Name",inputString:"",showSearchButton:!0,showRecentSearch:!0,showCurrentLocation:!0,recentStorageName:"recentSearches",noOfRecentSearchSave:5,currentLocIconUrl:"",searchIconUrl:"",locationIconUrl:""}}return e.prototype.ngOnInit=function(){this.moduleinit||this.moduleInit()},e.prototype.ngOnChanges=function(){this.moduleinit=!0,this.moduleInit(),this.searchinputCallback(null)},e.prototype.searchinputClickCallback=function(e){e.target.select(),this.searchinputCallback(e)},e.prototype.searchinputCallback=function(e){var t=this.locationInput;t?this.getListQuery(t):(this.queryItems=[],this.userSelectedOption&&this.userQuerySubmit("false"),this.userSelectedOption="",this.settings.showRecentSearch?this.showRecentSearch():this.dropdownOpen=!1)},e.prototype.activeListNode=function(e){for(var t=0;t<this.queryItems.length;t++)e===t?(this.queryItems[t].active=!0,this.selectedDataIndex=e):this.queryItems[t].active=!1},e.prototype.selectedListNode=function(e,t){this.dropdownOpen=!1,this.recentDropdownOpen?this.setRecentLocation(this.queryItems[t]):this.getPlaceLocationInfo(this.queryItems[t])},e.prototype.closeAutocomplete=function(e){this._elmRef.nativeElement.contains(e.target)||(this.selectedDataIndex=-1,this.dropdownOpen=!1)},e.prototype.userQuerySubmit=function(e){("false"===e?"":this.userSelectedOption)&&this.select.emit(this.userSelectedOption)},e.prototype.currentLocationSelected=function(){var e=this;s.isPlatformBrowser(this.platformId)&&(this.gettingCurrentLocationFlag=!0,this.dropdownOpen=!1,this._googlePlacesService.getGeoCurrentLocation().then((function(t){t?e.getCurrentLocationInfo(t):e.gettingCurrentLocationFlag=!1})))},e.prototype.moduleInit=function(){this.settings=this.setUserSettings(),this.settings.geoRadius&&2!==this.settings.geoLocation.length&&(this.isSettingsError=!0,this.settingsErrorMsg=this.settingsErrorMsg+'Radius should be used with GeoLocation. Please use "geoLocation" key to set lat and lng. '),2!==this.settings.geoLocation.length||this.settings.geoRadius||(this.settings.geoRadius=2e7),this.settings.showRecentSearch&&this.getRecentLocations(),this.settings.useGoogleGeoApi||(this.settings.geoPredictionServerUrl||(this.isSettingsError=!0,this.settingsErrorMsg=this.settingsErrorMsg+'Prediction custom server url is not defined. Please use "geoPredictionServerUrl" key to set. '),this.settings.geoLatLangServiceUrl||(this.isSettingsError=!0,this.settingsErrorMsg=this.settingsErrorMsg+'Latitude and longitude custom server url is not defined. Please use "geoLatLangServiceUrl" key to set. '),this.settings.geoLocDetailServerUrl||(this.isSettingsError=!0,this.settingsErrorMsg=this.settingsErrorMsg+'Location detail custom server url is not defined. Please use "geoLocDetailServerUrl" key to set. ')),this.locationInput=this.term},e.prototype.processSearchQuery=function(){this.queryItems.length&&(this.selectedDataIndex>-1?this.selectedListNode(null,this.selectedDataIndex):this.selectedListNode(null,0))},e.prototype.setUserSettings=function(){var e,t,n={};if(this.userSettings&&"object"==typeof this.userSettings){var o=Object.keys(this.defaultSettings);try{for(var a=ne(o),i=a.next();!i.done;i=a.next()){var r=i.value;n[r]=void 0!==this.userSettings[r]?this.userSettings[r]:this.defaultSettings[r]}}catch(t){e={error:t}}finally{try{i&&!i.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}return n}return this.defaultSettings},e.prototype.getListQuery=function(e){var t=this;if(this.recentDropdownOpen=!1,this.settings.useGoogleGeoApi){var n={query:e,countryRestriction:this.settings.geoCountryRestriction,geoTypes:this.settings.geoTypes};2===this.settings.geoLocation.length&&(n.geoLocation=this.settings.geoLocation,n.radius=this.settings.geoRadius),this._googlePlacesService.getGeoPrediction(n).then((function(e){t.updateListItem(e)}))}else this._googlePlacesService.getPredictions(this.settings.geoPredictionServerUrl,e).then((function(e){e=t.extractServerList(t.settings.serverResponseListHierarchy,e),t.updateListItem(e)}))},e.prototype.extractServerList=function(e,t){var n,o;if(e.length){var a=t;try{for(var i=ne(e),r=i.next();!r.done;r=i.next()){a=a[r.value]}}catch(e){n={error:e}}finally{try{r&&!r.done&&(o=i.return)&&o.call(i)}finally{if(n)throw n.error}}return a}return t},e.prototype.updateListItem=function(e){this.queryItems=e||[],this.dropdownOpen=!0},e.prototype.showRecentSearch=function(){var e=this;this.recentDropdownOpen=!0,this.dropdownOpen=!0,this._googlePlacesService.getRecentList(this.settings.recentStorageName).then((function(t){e.queryItems=t||[]}))},e.prototype.getCurrentLocationInfo=function(e){var t=this;this.settings.useGoogleGeoApi?this._googlePlacesService.getGeoLatLngDetail(e).then((function(e){e&&t.setRecentLocation(e),t.gettingCurrentLocationFlag=!1})):this._googlePlacesService.getLatLngDetail(this.settings.geoLatLangServiceUrl,e.lat,e.lng).then((function(e){e&&(e=t.extractServerList(t.settings.serverResponseatLangHierarchy,e),t.setRecentLocation(e)),t.gettingCurrentLocationFlag=!1}))},e.prototype.getPlaceLocationInfo=function(e){var t=this;this.settings.useGoogleGeoApi?this._googlePlacesService.getGeoPlaceDetail(e.place_id).then((function(e){e&&t.setRecentLocation(e)})):this._googlePlacesService.getPlaceDetails(this.settings.geoLocDetailServerUrl,e.place_id).then((function(e){e&&(e=t.extractServerList(t.settings.serverResponseDetailHierarchy,e),t.setRecentLocation(e))}))},e.prototype.setRecentLocation=function(e){(e=JSON.parse(JSON.stringify(e))).description=e.description?e.description:e.formatted_address,e.active=!1,this.selectedDataIndex=-1,this.locationInput=e.description,this.settings.showRecentSearch&&(this._googlePlacesService.addRecentList(this.settings.recentStorageName,e,this.settings.noOfRecentSearchSave),this.getRecentLocations()),this.userSelectedOption=e,this.settings.resOnSearchButtonClickOnly||(this.select.emit(e),this.termChange.emit(e))},e.prototype.getRecentLocations=function(){var e=this;this._googlePlacesService.getRecentList(this.settings.recentStorageName).then((function(t){e.recentSearchData=t&&t.length?t:[]}))},e}();Xa.decorators=[{type:t.Component,args:[{selector:"google-places-list",template:'\n <novo-list direction="vertical">\n <novo-list-item *ngFor="let data of queryItems;let $index = index" (click)="selectedListNode($event, $index)">\n <item-header>\n <item-avatar icon="location"></item-avatar>\n <item-title>{{data.structured_formatting?.main_text ? data.structured_formatting.main_text : data.description}}</item-title>\n </item-header>\n <item-content>{{data.structured_formatting?.secondary_text}}</item-content>\n </novo-list-item>\n </novo-list>\n '}]}],Xa.ctorParameters=function(){return[{type:Object,decorators:[{type:t.Inject,args:[t.PLATFORM_ID]}]},{type:t.ElementRef},{type:Za},{type:Ja}]},Xa.propDecorators={userSettings:[{type:t.Input}],term:[{type:t.Input}],termChange:[{type:t.Output}],select:[{type:t.Output}]};var Qa=function(){};Qa.decorators=[{type:t.NgModule,args:[{declarations:[Xa],imports:[s.CommonModule,w.HttpClientModule,n.FormsModule,pt],exports:[Xa],providers:[Ja]}]}];var ei=function(){function e(e,n){this.element=e,this.cdr=n,this.placement="top",this.animation=!0,this.onCloseFromOutside=new t.EventEmitter,this.top=-1e4,this.left=-1e4,this.displayType="none",this.isHidden=!1}return e.prototype.ngAfterViewInit=function(){this.show(),this.cdr.detectChanges()},e.prototype.toggle=function(){this.isHidden?this.show():this.hide()},e.prototype.show=function(){if(this.popover&&this.popover.getElement()){var e=this.positionElements(this.popover.getElement(),this.popoverDiv.nativeElement,this.placement);this.displayType="block",this.top=e.top,this.left=e.left,this.isHidden=!1}},e.prototype.hide=function(){this.top=-1e4,this.left=-1e4,this.isHidden=!0,this.popover.hide()},e.prototype.hideFromPopover=function(){this.top=-1e4,this.left=-1e4},e.prototype.positionElements=function(e,t,n,o){void 0===o&&(o=!1);var a,i=n.split("-"),r=this.effectivePlacement=this.getEffectivePlacement(i[0]||"right",e,t),s=this.effectiveAlignment=i[1]||"center",l=o?this.offset(e):this.position(e),c=t.offsetWidth,d=t.offsetHeight,p={center:function(){return l.left+(l.width-c)/2},right:function(){return l.left},left:function(){return l.left+(l.width-c)}},u={center:function(){return l.top+(l.height-d)/2},bottom:function(){return l.top},top:function(){return l.top+(l.height-d)}};switch(r){case"right":a={top:u[s](),left:l.left+l.width};break;case"left":a={top:u[s](),left:l.left-c};break;case"bottom":a={top:l.top+l.height,left:p[s]()};break;default:a={top:l.top-d,left:p[s]()}}return a},e.prototype.position=function(e){var t={top:0,left:0},n=this.offset(e),o=this.parentOffsetEl(e);o!==window.document&&((t=this.offset(o)).top+=o.clientTop-o.scrollTop,t.left+=o.clientLeft-o.scrollLeft);var a=e.getBoundingClientRect();return{width:a.width||e.offsetWidth,height:a.height||e.offsetHeight,top:n.top-t.top,left:n.left-t.left}},e.prototype.offset=function(e){var t=e.getBoundingClientRect();return{width:t.width||e.offsetWidth,height:t.height||e.offsetHeight,top:t.top+(window.pageYOffset||window.document.documentElement.scrollTop),left:t.left+(window.pageXOffset||window.document.documentElement.scrollLeft)}},e.prototype.getStyle=function(e,t){return e.currentStyle?e.currentStyle[t]:window.getComputedStyle?window.getComputedStyle(e)[t]:e.style[t]},e.prototype.isStaticPositioned=function(e){return"static"===(this.getStyle(e,"position")||"static")},e.prototype.parentOffsetEl=function(e){for(var t=e.offsetParent||window.document;t&&t!==window.document&&this.isStaticPositioned(t);)t=t.offsetParent;return t||window.document},e.prototype.getEffectivePlacement=function(e,t,n){var o=t.getBoundingClientRect();return"top"===e&&o.top-n.offsetHeight<0?"bottom":"bottom"===e&&o.bottom+n.offsetHeight>window.innerHeight?"top":"left"===e&&o.left-n.offsetWidth<0?"right":"right"===e&&o.right+n.offsetWidth>window.innerWidth?"left":e},e}();ei.decorators=[{type:t.Component,args:[{selector:"popover-content",template:'\n <div #popoverDiv\n class="popover {{ effectivePlacement }}"\n [style.top]="top + \'px\'"\n [style.left]="left + \'px\'"\n [class.fade]="animation"\n style="display: block"\n role="popover">\n <div class="arrow {{effectiveAlignment}}"></div>\n <h4 class="popover-title" [hidden]="!title">{{ title }}</h4>\n <div class="popover-content">\n <ng-content></ng-content>\n <div class="popover-content-text">{{ content }}</div>\n </div>\n </div>\n '}]}],ei.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},ei.propDecorators={content:[{type:t.Input}],placement:[{type:t.Input}],title:[{type:t.Input}],animation:[{type:t.Input}],popoverDiv:[{type:t.ViewChild,args:["popoverDiv"]}]};var ti=function(){function e(e,n){this.viewContainerRef=e,this.resolver=n,this.PopoverComponent=ei,this.popoverOnHover=!1,this.popoverDismissTimeout=0,this.onShown=new t.EventEmitter,this.onHidden=new t.EventEmitter}return e.prototype.showOrHideOnClick=function(){this.popoverOnHover||this.popoverDisabled||this.toggle()},e.prototype.showOnHover=function(){this.popoverOnHover&&!this.popoverDisabled&&this.show()},e.prototype.hideOnHover=function(){this.popoverOnHover&&!this.popoverDisabled&&this.hide()},e.prototype.ngOnChanges=function(e){e.popoverDisabled&&e.popoverDisabled.currentValue&&this.hide(),e.popoverAlways&&e.popoverAlways.currentValue&&this.show()},e.prototype.toggle=function(){this.visible?this.hide():this.show()},e.prototype.show=function(){var e=this;if(!this.visible){if(this.visible=!0,"string"==typeof this.content){var t=this.resolver.resolveComponentFactory(this.PopoverComponent);if(!this.visible)return;this.popover=this.viewContainerRef.createComponent(t),(n=this.popover.instance).popover=this,n.content=this.content,void 0!==this.popoverPlacement&&(n.placement=this.popoverPlacement),void 0!==this.popoverAnimation&&(n.animation=this.popoverAnimation),void 0!==this.popoverTitle&&(n.title=this.popoverTitle),n.onCloseFromOutside.subscribe((function(){return e.hide()})),this.popoverDismissTimeout>0&&setTimeout((function(){return e.hide()}),this.popoverDismissTimeout)}else{var n;(n=this.content).popover=this,void 0!==this.popoverPlacement&&(n.placement=this.popoverPlacement),void 0!==this.popoverAnimation&&(n.animation=this.popoverAnimation),void 0!==this.popoverTitle&&(n.title=this.popoverTitle),n.onCloseFromOutside.subscribe((function(){return e.hide()})),this.popoverDismissTimeout>0&&setTimeout((function(){return e.hide()}),this.popoverDismissTimeout),n.show()}this.onShown.emit(this)}},e.prototype.hide=function(){this.visible&&(this.visible=!1,this.popover&&this.popover.destroy(),this.content instanceof ei&&this.content.hideFromPopover(),this.onHidden.emit(this))},e.prototype.getElement=function(){return this.viewContainerRef.element.nativeElement},e}();ti.decorators=[{type:t.Directive,args:[{selector:"[popover]"}]}],ti.ctorParameters=function(){return[{type:t.ViewContainerRef},{type:t.ComponentFactoryResolver}]},ti.propDecorators={content:[{type:t.Input,args:["popover"]}],popoverDisabled:[{type:t.Input}],popoverAlways:[{type:t.Input}],popoverAnimation:[{type:t.Input}],popoverPlacement:[{type:t.Input}],popoverTitle:[{type:t.Input}],popoverOnHover:[{type:t.Input}],popoverDismissTimeout:[{type:t.Input}],onShown:[{type:t.Output}],onHidden:[{type:t.Output}],showOrHideOnClick:[{type:t.HostListener,args:["click"]}],showOnHover:[{type:t.HostListener,args:["focusin"]},{type:t.HostListener,args:["mouseenter"]}],hideOnHover:[{type:t.HostListener,args:["focusout"]},{type:t.HostListener,args:["mouseleave"]}]};var ni=function(){};ni.decorators=[{type:t.NgModule,args:[{declarations:[ei,ti],exports:[ei,ti]}]}];var oi=function(){function e(){}return e.propertyRenderer=function(e){return function(t){return t[e]}},e.dateRenderer=function(e){return function(t){return t[e]?new Date(t[e]).toLocaleDateString():""}},e}(),ai=function(){function e(){this.id=Math.random(),this.sort=void 0,this.filter=void 0,this.page=0,this.pageSize=void 0,this.globalSearch=void 0,this.selectedRows=new Map,this.updates=new t.EventEmitter,this.onReset=new t.EventEmitter}return Object.defineProperty(e.prototype,"userFiltered",{get:function(){return!!(this.filter||this.sort||this.globalSearch||this.outsideFilter)},enumerable:!1,configurable:!0}),e.prototype.reset=function(e,t){void 0===e&&(e=!0),t||(this.sort=void 0,this.globalSearch=void 0,this.filter=void 0),this.page=0,this.selectedRows.clear(),this.onReset.emit(!0),e&&this.updates.emit({sort:this.sort,filter:this.filter,globalSearch:this.globalSearch})},e}();ai.decorators=[{type:t.Injectable}];var ii=function(){function e(e){this.state=e}return e.prototype.filter=function(e,t,n){var o;o=R.isBlank(t)?void 0:{id:e,value:t,transform:n},this.state.filter=o,this.state.reset(!1,!0),this.state.updates.next({filter:o,sort:this.state.sort})},e.prototype.sort=function(e,t,n){var o={id:e,value:t,transform:n};this.state.sort=o,this.state.reset(!1,!0),this.state.updates.next({sort:o,filter:this.state.filter})},e}();ii.decorators=[{type:t.Directive,args:[{selector:"[novoSortFilter]"}]}],ii.ctorParameters=function(){return[{type:ai}]};var ri=function(){function e(e){this.state=e,this.novoSelectAllToggle=new t.EventEmitter,this.allRows=new Map}return e.prototype.register=function(e,t){this.allRows.set(e,t)},e.prototype.deregister=function(e){var t=this;this.allRows.delete(e),this.state.selectedRows.delete(e),clearTimeout(this.throttleTimeout),this.throttleTimeout=setTimeout((function(){0===t.state.selectedRows.size&&t.novoSelectAllToggle.emit(!1)}))},e.prototype.ngOnDestroy=function(){this.allRows.clear(),this.state.selectedRows.clear()},e.prototype.toggle=function(e,t,n){t?this.state.selectedRows.set(e,n):this.state.selectedRows.delete(e)},e.prototype.selectAll=function(e){e?this.state.selectedRows=new Map(this.allRows):this.state.selectedRows.clear(),this.novoSelectAllToggle.emit(e)},e}();ri.decorators=[{type:t.Directive,args:[{selector:"[novoSelection]"}]}],ri.ctorParameters=function(){return[{type:ai}]},ri.propDecorators={novoSelectAllToggle:[{type:t.Output}]};var si=y.CdkCellDef,li=y.CdkHeaderCellDef,ci=y.CdkColumnDef,di=y.CdkHeaderCell,pi=y.CdkCell,ui=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(si);ui.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleCellDef]",providers:[{provide:y.CdkCellDef,useExisting:ui}]}]}];var mi=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(li);mi.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleHeaderCellDef]",providers:[{provide:y.CdkHeaderCellDef,useExisting:mi}]}]}];var hi=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(ci);hi.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleColumnDef]",providers:[{provide:y.CdkColumnDef,useExisting:hi}]}]}],hi.propDecorators={name:[{type:t.Input,args:["novoSimpleColumnDef"]}]};var gi=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.elementRef=n,a.renderer=o,a.role="columnheader",o.setAttribute(n.nativeElement,"data-automation-id","novo-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-header-cell"),a}return te(t,e),t.prototype.ngOnInit=function(){this.column.width&&(this.renderer.setStyle(this.elementRef.nativeElement,"min-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"max-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"width",this.column.width+"px"))},t}(di);gi.decorators=[{type:t.Directive,args:[{selector:"novo-simple-header-cell"}]}],gi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},gi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],column:[{type:t.Input}]};var fi=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.role="columnheader",o.setAttribute(n.nativeElement,"data-automation-id","novo-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-empty-header-cell"),a}return te(t,e),t}(di);fi.decorators=[{type:t.Directive,args:[{selector:"novo-simple-empty-header-cell"}]}],fi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},fi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}]};var yi=function(e){function t(t,n,o,a,i){var r=e.call(this,t,n)||this;return r._selection=i,r.role="columnheader",r.selectAll=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-checkbox-column-header-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-checkbox-header-cell"),r.selectAllSubscription=i.novoSelectAllToggle.subscribe((function(e){r.selectAll=e,a.markForCheck()})),r}return te(t,e),t.prototype.ngOnDestroy=function(){this.selectAllSubscription.unsubscribe()},t.prototype.toggle=function(e){this._selection.selectAll(e)},t}(di);yi.decorators=[{type:t.Component,args:[{selector:"novo-simple-checkbox-header-cell",template:'<novo-checkbox [(ngModel)]="selectAll" (ngModelChange)="toggle($event)"></novo-checkbox>'}]}],yi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:t.ChangeDetectorRef},{type:ri,decorators:[{type:t.Optional}]}]},yi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}]};var vi=function(e){function t(t,n,o){var a=e.call(this,t,n)||this;return a.elementRef=n,a.renderer=o,a.role="gridcell",o.setAttribute(n.nativeElement,"data-automation-id","novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-cell"),a}return te(t,e),t.prototype.ngOnInit=function(){this.column.customClass&&this.renderer.addClass(this.elementRef.nativeElement,this.column.customClass(this.row)),this.column.width&&(this.renderer.setStyle(this.elementRef.nativeElement,"min-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"max-width",this.column.width+"px"),this.renderer.setStyle(this.elementRef.nativeElement,"width",this.column.width+"px"))},t.prototype.onClick=function(e){R.swallowEvent(e),this.column.onClick&&this.column.onClick(this.row)},t}(pi);vi.decorators=[{type:t.Component,args:[{selector:"novo-simple-cell",template:'\n <span [class.clickable]="!!column.onClick" (click)="onClick($event)" #span>{{ column.renderer(row) }}</span>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],vi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2}]},vi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],column:[{type:t.Input}]};var bi=function(e){function t(t,n,o,a){var i=e.call(this,t,n)||this;return i.columnDef=t,i._selection=a,i.role="gridcell",i.selected=!1,o.setAttribute(n.nativeElement,"data-automation-id","novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-checkbox-column-"+t.cssClassFriendlyName),o.addClass(n.nativeElement,"novo-simple-checkbox-cell"),i.selectAllSubscription=a.novoSelectAllToggle.subscribe((function(e){i.selected=e})),i}return te(t,e),t.prototype.ngOnInit=function(){this._selection.register(this.row.id||this.index,this.row),this.selected=this._selection.state.selectedRows.has(this.row.id||this.index)},t.prototype.ngOnDestroy=function(){this._selection.deregister(this.row.id||this.index),this.selectAllSubscription.unsubscribe()},t.prototype.toggle=function(e){this._selection.toggle(this.row.id||this.index,e,this.row)},t}(pi);bi.decorators=[{type:t.Component,args:[{selector:"novo-simple-checkbox-cell",template:'\n <novo-checkbox [ngModel]="selected" (ngModelChange)="toggle($event)"></novo-checkbox>\n '}]}],bi.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:ri,decorators:[{type:t.Optional}]}]},bi.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],index:[{type:t.Input}]};var Ci=function(e){function t(t,n,o,a){var i=e.call(this,t,n)||this;return i.elementRef=n,i.renderer=o,i.labels=a,i.role="gridcell",o.setAttribute(n.nativeElement,"data-automation-id","novo-action-column-"+t.cssClassFriendlyName),i}return te(t,e),t.prototype.ngOnInit=function(){this.column.options?this.renderer.addClass(this.elementRef.nativeElement,"novo-simple-dropdown-cell"):this.renderer.addClass(this.elementRef.nativeElement,"novo-simple-button-cell")},t.prototype.isDisabled=function(e,t){return!0===e.disabled||!!e.disabledCheck&&e.disabledCheck(t)},t}(pi);Ci.decorators=[{type:t.Component,args:[{selector:"novo-simple-action-cell",template:'\n <ng-container *ngIf="!column.options">\n <button theme="icon" [icon]="column.icon" (click)="column.onClick(row)" [disabled]="isDisabled(column, row)"></button>\n </ng-container>\n <ng-container *ngIf="column.options">\n <novo-dropdown parentScrollSelector=".novo-simple-table" containerClass="novo-table-dropdown-cell">\n <button type="button" theme="dialogue" icon="collapse" inverse>{{ column.label || labels.actions }}</button>\n <list>\n <item *ngFor="let option of column.options" (action)="option.onClick(row)" [disabled]="isDisabled(option, row)">\n <span [attr.data-automation-id]="option.label">{{ option.label }}</span>\n </item>\n </list>\n </novo-dropdown>\n </ng-container>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Ci.ctorParameters=function(){return[{type:y.CdkColumnDef},{type:t.ElementRef},{type:t.Renderer2},{type:Ne}]},Ci.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],row:[{type:t.Input}],column:[{type:t.Input}]};var Si=function(){function e(e){this.element=e}return e.prototype.ngAfterViewInit=function(){this.element.nativeElement.focus()},e}();Si.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleFilterFocus]"}]}],Si.ctorParameters=function(){return[{type:t.ElementRef}]};var ki=function(){function e(e,t,n,o,a){var i=this;this.changeDetectorRef=e,this.labels=t,this.state=n,this._sort=o,this._cdkColumnDef=a,this.icon="sortable",this.filterActive=!1,this.sortActive=!1,this.showCustomRange=!1,this._rerenderSubscription=n.updates.subscribe((function(t){t.sort&&t.sort.id===i.id?(i.icon="sort-"+t.sort.value,i.sortActive=!0):(i.icon="sortable",i.sortActive=!1),t.filter&&t.filter.id===i.id?(i.filterActive=!0,i.filter=t.filter.value):(i.filterActive=!1,i.filter=void 0),e.markForCheck()}))}return Object.defineProperty(e.prototype,"config",{get:function(){return this._config},set:function(e){e?(this._config={sortable:m.coerceBooleanProperty(e.sortable),filterable:m.coerceBooleanProperty(e.filterable),transforms:e.transforms||{},filterConfig:e.filterConfig||{type:"text"}},"date"!==this._config.filterConfig.type||this._config.filterConfig.options||(this._config.filterConfig.options=this.getDefaultDateFilterOptions())):this._config={sortable:!1,filterable:!1,filterConfig:{type:"text"}}},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this._cdkColumnDef&&(this.id=this._cdkColumnDef.name),this.defaultSort&&this.id===this.defaultSort.id&&(this.icon="sort-"+this.defaultSort.value,this.sortActive=!0,this.changeDetectorRef.markForCheck())},e.prototype.ngOnDestroy=function(){this._rerenderSubscription.unsubscribe()},e.prototype.sort=function(){var e=this;this.changeTimeout&&clearTimeout(this.changeTimeout),this.changeTimeout=setTimeout((function(){e.direction=e.getNextSortDirection(e.direction),e._sort.sort(e.id,e.direction,e._config.transforms.sort),e.changeDetectorRef.markForCheck()}),300)},e.prototype.toggleCustomRange=function(e,t){R.swallowEvent(e),this.showCustomRange=t,this.changeDetectorRef.markForCheck(),this.dropdown.openPanel()},e.prototype.filterData=function(e){var t=this,n=e;"date"===this.config.filterConfig.type&&e&&(this.activeDateFilter=e.label||this.labels.customDateRange,n=e.startDate&&e.endDate?{min:p.startOfDay(e.startDate.date),max:p.startOfDay(p.addDays(p.startOfDay(e.endDate.date),1))}:{min:e.min?p.addDays(p.startOfToday(),e.min):p.startOfToday(),max:e.max?p.addDays(p.startOfTomorrow(),e.max):p.startOfTomorrow()}),n&&n.hasOwnProperty("value")&&(n=e.value),this.changeTimeout&&clearTimeout(this.changeTimeout),this.changeTimeout=setTimeout((function(){""===n&&(n=void 0),t._sort.filter(t.id,n,t.config.transforms.filter),t.changeDetectorRef.markForCheck()}),300)},e.prototype.clearFilter=function(){this.filter=void 0,this.activeDateFilter=void 0,this.filterData()},e.prototype.getNextSortDirection=function(e){return e&&"asc"===e?"desc":"asc"},e.prototype.getDefaultDateFilterOptions=function(){return[{label:this.labels.past1Day,min:-1,max:0},{label:this.labels.past7Days,min:-7,max:0},{label:this.labels.past30Days,min:-30,max:0},{label:this.labels.past90Days,min:-90,max:0},{label:this.labels.past1Year,min:-366,max:0},{label:this.labels.next1Day,min:0,max:1},{label:this.labels.next7Days,min:0,max:7},{label:this.labels.next30Days,min:0,max:30},{label:this.labels.next90Days,min:0,max:90},{label:this.labels.next1Year,min:0,max:366}]},e}();ki.decorators=[{type:t.Component,args:[{selector:"[novo-simple-cell-config]",template:'\n <label (click)="sort()" data-automation-id="novo-activity-table-label" [class.sort-disabled]="!config.sortable">\n <ng-content></ng-content>\n </label>\n <div>\n <button\n *ngIf="config.sortable"\n theme="icon"\n [icon]="icon"\n (click)="sort()"\n [class.active]="sortActive"\n data-automation-id="novo-activity-table-sort"\n ></button>\n <novo-dropdown\n *ngIf="config.filterable"\n side="right"\n parentScrollSelector=".novo-simple-table"\n containerClass="simple-table-dropdown"\n data-automation-id="novo-activity-table-filter"\n >\n <button type="button" theme="icon" icon="filter" [class.active]="filterActive"></button>\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button\n theme="dialogue"\n color="negative"\n icon="times"\n (click)="clearFilter()"\n *ngIf="filter"\n data-automation-id="novo-activity-table-filter-clear"\n >\n {{ labels.clear }}\n </button>\n </div>\n <ng-container [ngSwitch]="config.filterConfig.type">\n <list *ngSwitchCase="\'date\'">\n <ng-container *ngIf="!showCustomRange">\n <item\n [class.active]="activeDateFilter === option.label"\n *ngFor="let option of config.filterConfig.options"\n (click)="filterData(option)"\n [attr.data-automation-id]="\'novo-activity-table-filter-\' + option.label"\n >\n {{ option.label }} <i class="bhi-check" *ngIf="activeDateFilter === option.label"></i>\n </item>\n </ng-container>\n <item\n [class.active]="labels.customDateRange === activeDateFilter"\n (click)="toggleCustomRange($event, true)"\n *ngIf="config.filterConfig.allowCustomRange && !showCustomRange"\n [keepOpen]="true"\n >\n {{ labels.customDateRange }} <i class="bhi-check" *ngIf="labels.customDateRange === activeDateFilter"></i>\n </item>\n <div class="calendar-container" *ngIf="showCustomRange">\n <div (click)="toggleCustomRange($event, false)"><i class="bhi-previous"></i>{{ labels.backToPresetFilters }}</div>\n <novo-date-picker (onSelect)="filterData($event)" [(ngModel)]="filter" range="true"></novo-date-picker>\n </div>\n </list>\n <list *ngSwitchCase="\'select\'">\n <item\n [class.active]="filter === option"\n *ngFor="let option of config.filterConfig.options"\n (click)="filterData(option)"\n [attr.data-automation-id]="\'novo-activity-table-filter-\' + (option?.label || option)"\n >\n <span>{{ option?.label || option }}</span>\n <i class="bhi-check" *ngIf="option.hasOwnProperty(\'value\') ? filter === option.value : filter === option"></i>\n </item>\n </list>\n <list *ngSwitchDefault>\n <item class="filter-search" keepOpen="true">\n <input\n type="text"\n [(ngModel)]="filter"\n (ngModelChange)="filterData($event)"\n novoSimpleFilterFocus\n data-automation-id="novo-activity-table-filter-input"\n />\n </item>\n </list>\n </ng-container>\n </novo-dropdown>\n </div>\n ',encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],ki.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:Ne},{type:ai},{type:ii,decorators:[{type:t.Optional}]},{type:y.CdkColumnDef,decorators:[{type:t.Optional}]}]},ki.propDecorators={dropdown:[{type:t.ViewChild,args:[Jt]}],defaultSort:[{type:t.Input}],config:[{type:t.Input,args:["novo-simple-cell-config"]}]};var Ii=function(){function e(e,n,o){var a=this;this.changeDetectorRef=e,this.labels=n,this.state=o,this._page=0,this._length=0,this._pageSizeOptions=[],this.pageChange=new t.EventEmitter,o&&o.onReset&&(this.resetSubscription=this.state.onReset.subscribe((function(e){e&&(a.page=0,a.changeDetectorRef.markForCheck())})))}return Object.defineProperty(e.prototype,"page",{get:function(){return this._page},set:function(e){this._page=e,this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.state.page=this._page},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"length",{get:function(){return this._length},set:function(e){this._length=e,this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageSize",{get:function(){return this._pageSize},set:function(e){this._pageSize=e,this.updateDisplayedPageSizeOptions(),this.state.pageSize=this._pageSize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageSizeOptions",{get:function(){return this._pageSizeOptions},set:function(e){this._pageSizeOptions=e,this.updateDisplayedPageSizeOptions()},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this._initialized=!0,this.updateDisplayedPageSizeOptions()},e.prototype.ngOnDestroy=function(){this.resetSubscription.unsubscribe()},e.prototype.nextPage=function(){this.hasNextPage()&&(this.page++,this.emitPageEvent())},e.prototype.previousPage=function(){this.hasPreviousPage()&&(this.page--,this.emitPageEvent())},e.prototype.hasPreviousPage=function(){return this.page>=1&&0!==this.pageSize},e.prototype.hasNextPage=function(){var e=Math.ceil(this.length/this.pageSize)-1;return this.page<e&&0!==this.pageSize},e.prototype.changePageSize=function(e){this.page=0,this.pageSize=e,this.emitPageEvent()},e.prototype.updateDisplayedPageSizeOptions=function(){this._initialized&&(this.pageSize||(this._pageSize=0!==this.pageSizeOptions.length?this.pageSizeOptions[0]:50),this.displayedPageSizeOptions=this.pageSizeOptions.slice(),-1===this.displayedPageSizeOptions.indexOf(this.pageSize)&&this.displayedPageSizeOptions.push(this.pageSize),this.displayedPageSizeOptions.sort((function(e,t){return e-t})),this.changeDetectorRef.markForCheck(),this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0))},e.prototype.emitPageEvent=function(){var e={page:this.page,pageSize:this.pageSize,length:this.length};this.pageChange.next(e),this.state.page=this.page,this.state.pageSize=this.pageSize,this.longRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!1),this.shortRangeLabel=this.labels.getRangeText(this.page,this.pageSize,this.length,!0),this.state.updates.next(e)},e}();Ii.decorators=[{type:t.Component,args:[{selector:"novo-simple-table-pagination",template:'\n <div class="novo-simple-table-pagination-size">\n <novo-tiles *ngIf="displayedPageSizeOptions.length > 1"\n [(ngModel)]="pageSize"\n [options]="displayedPageSizeOptions"\n (onChange)="changePageSize($event)"\n data-automation-id="novo-simple-table-pagination-tiles">\n </novo-tiles>\n <div *ngIf="displayedPageSizeOptions.length <= 1">{{ pageSize }}</div>\n </div>\n\n <div class="novo-simple-table-range-label-long"data-automation-id="novo-simple-table-pagination-range-label-long">\n {{ longRangeLabel }}\n </div>\n <div class="novo-simple-table-range-label-short"data-automation-id="novo-simple-table-pagination-range-label-short">\n {{ shortRangeLabel }}\n </div>\n\n <button theme="dialogue" type="button"\n class="novo-simple-table-pagination-navigation-previous"\n (click)="previousPage()"\n icon="previous"\n side="left"\n [disabled]="!hasPreviousPage()"\n data-automation-id="novo-simple-table-pagination-previous">\n <span>{{ labels.previous }}</span>\n </button>\n <button theme="dialogue" type="button"\n class="novo-simple-table-pagination-navigation-next"\n (click)="nextPage()"\n icon="next"\n side="right"\n [disabled]="!hasNextPage()"\n data-automation-id="novo-simple-table-pagination-next">\n <span>{{ labels.next }}</span>\n </button>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Ii.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:Ne},{type:ai}]},Ii.propDecorators={page:[{type:t.Input}],length:[{type:t.Input}],pageSize:[{type:t.Input}],pageSizeOptions:[{type:t.Input}],pageChange:[{type:t.Output}]};var Ei=y.CdkHeaderRowDef,wi=y.CdkRowDef,Ti=y.CdkHeaderRow,Oi=y.CdkRow,Pi=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(Ei);Pi.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleHeaderRowDef]",providers:[{provide:y.CdkHeaderRowDef,useExisting:Pi}]}]}],Pi.propDecorators={columns:[{type:t.Input,args:["novoSimpleHeaderRowDef"]}]};var Ai=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(wi);Ai.decorators=[{type:t.Directive,args:[{selector:"[novoSimpleRowDef]",providers:[{provide:y.CdkRowDef,useExisting:Ai}]}]}],Ai.propDecorators={columns:[{type:t.Input,args:["novoSimpleRowDefColumns"]}]};var Di=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t.rowClass="novo-simple-header-row",t.role="row",t}return te(t,e),t}(Ti);Di.decorators=[{type:t.Component,args:[{selector:"novo-simple-header-row",template:y.CDK_ROW_TEMPLATE,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Di.propDecorators={rowClass:[{type:t.HostBinding,args:["class"]}],role:[{type:t.HostBinding,args:["attr.role"]}]};var xi=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t.rowClass="novo-simple-row",t.role="row",t}return te(t,e),t}(Oi);xi.decorators=[{type:t.Component,args:[{selector:"novo-simple-row",template:y.CDK_ROW_TEMPLATE,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],xi.propDecorators={rowClass:[{type:t.HostBinding,args:["class"]}],role:[{type:t.HostBinding,args:["attr.role"]}]};var Ri=function(){},Mi=function(){function e(e){void 0===e&&(e=[]),this.data=e}return e.prototype.getTableResults=function(e,t,n,o,a,i){void 0===n&&(n=0);var r=R.deepClone(this.data);if(0!==r.length){if(a&&(r=r.filter((function(e){return Object.keys(e).some((function(t){return(""+e[t]).toLowerCase().includes(a.toLowerCase())}))}))),t){var s=R.isString(t.value)?t.value.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"):t.value;r=r.filter(R.filterByField(t.id,s))}e&&(r=r.sort(R.sortByField(e.id,"desc"===e.value))),R.isBlank(n)||R.isBlank(o)||(r=r.slice(n*o,(n+1)*o))}return u.of({results:r,total:this.data.length})},e}(),Fi=function(e){function t(t,n,o){var a=e.call(this)||this;return a.tableService=t,a.state=n,a.ref=o,a.total=0,a.current=0,a.loading=!1,a.pristine=!0,a}return te(t,e),Object.defineProperty(t.prototype,"totallyEmpty",{get:function(){return 0===this.total},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"currentlyEmpty",{get:function(){return 0===this.current},enumerable:!1,configurable:!0}),t.prototype.connect=function(){var e=this,t=[this.state.updates];return u.merge.apply(void 0,ae(t)).pipe(g.startWith(null),g.switchMap((function(){return e.pristine=!1,e.loading=!0,e.tableService.getTableResults(e.state.sort,e.state.filter,e.state.page,e.state.pageSize,e.state.globalSearch,e.state.outsideFilter)})),g.map((function(t){return e.loading=!1,e.total=t.total,e.current=t.results.length,setTimeout((function(){e.ref.markForCheck()})),t.results})),g.catchError((function(t){return console.error(t),e.loading=!1,u.of(null)})))},t.prototype.disconnect=function(){},t}(y.DataSource),Li=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(y.CdkTable);Li.decorators=[{type:t.Component,args:[{selector:"novo-simple-table",template:y.CDK_TABLE_TEMPLATE,encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush}]}];var Ni=function(){};Ni.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-actions"}]}];var Bi=function(){};Bi.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-custom-header"}]}];var Hi=function(){};Hi.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-custom-filter"}]}];var _i=function(){};_i.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-empty-message"}]}];var Gi=function(){};Gi.decorators=[{type:t.Directive,args:[{selector:"novo-activity-table-no-results-message"}]}];var Vi=function(){function e(e,t,n){this.labels=e,this.ref=t,this.state=n,this.globalSearchHiddenClassToggle=!1,this.loading=!0,wt("[Deprecated]: The simple table is deprecated. Please migrate to novo-data-tables!")}return Object.defineProperty(e.prototype,"customFilter",{get:function(){return this._customFilter},set:function(e){this._customFilter=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"forceShowHeader",{get:function(){return this._forceShowHeader},set:function(e){this._forceShowHeader=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"hideGlobalSearch",{get:function(){return this._hideGlobalSearch},set:function(e){this._hideGlobalSearch=m.coerceBooleanProperty(e),this.globalSearchHiddenClassToggle=this._hideGlobalSearch},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"debug",{get:function(){return this._debug},set:function(e){this._debug=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"empty",{get:function(){return this.dataSource&&this.dataSource.totallyEmpty},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"loadingClass",{get:function(){return this.loading||this.dataSource&&this.dataSource.loading},enumerable:!1,configurable:!0}),e.prototype.ngOnChanges=function(e){var t=this;this.loading=e.activityService&&!e.activityService.currentValue,this.ref.detectChanges(),e.activityService&&e.activityService.currentValue&&(this.loading=!1,this.dataSource=new Fi(this.activityService,this.state,this.ref),this.ref.detectChanges()),e.outsideFilter&&e.outsideFilter.currentValue&&(this.outsideFilterSubscription||(this.outsideFilterSubscription=this.outsideFilter.subscribe((function(e){t.state.outsideFilter=e,t.state.updates.next({globalSearch:t.state.globalSearch,filter:t.state.filter,sort:t.state.sort}),t.ref.markForCheck()}))))},e.prototype.ngOnDestroy=function(){this.outsideFilterSubscription&&this.outsideFilterSubscription.unsubscribe()},e.prototype.ngAfterContentInit=function(){this.paginationOptions&&!this.paginationOptions.page&&(this.paginationOptions.page=0),this.paginationOptions&&!this.paginationOptions.pageSize&&(this.paginationOptions.pageSize=50),this.paginationOptions&&!this.paginationOptions.pageSizeOptions&&(this.paginationOptions.pageSizeOptions=[10,25,50,100]),this.state.page=this.paginationOptions?this.paginationOptions.page:void 0,this.state.pageSize=this.paginationOptions?this.paginationOptions.pageSize:void 0,this.ref.markForCheck()},e.prototype.onSearchChange=function(e){this.state.globalSearch=e,this.state.reset(!1,!0),this.state.updates.next({globalSearch:e,filter:this.state.filter,sort:this.state.sort})},e}();Vi.decorators=[{type:t.Component,args:[{selector:"novo-activity-table",template:'\n <div *ngIf="debug">\n <p>Total: {{ dataSource?.total }}</p>\n <p>Current: {{ dataSource?.current }}</p>\n <p>Totally Empty: {{ dataSource?.totallyEmpty }}</p>\n <p>Currently Empty: {{ dataSource?.currentlyEmpty }}</p>\n <p>Loading (DataSource): {{ dataSource?.loading }}</p>\n <p>User Filtered: {{ state.userFiltered }}</p>\n <p>Loading (Table): {{ loading }}</p>\n </div>\n <header *ngIf="(!(dataSource?.totallyEmpty && !state.userFiltered) && !loading) || forceShowHeader">\n <ng-content select="[novo-activity-table-custom-header]"></ng-content>\n <novo-search\n alwaysOpen="true"\n (searchChanged)="onSearchChange($event)"\n [(ngModel)]="state.globalSearch"\n *ngIf="!hideGlobalSearch"\n [placeholder]="searchOptions?.placeholder"\n [hint]="searchOptions?.tooltip">\n </novo-search>\n <novo-simple-table-pagination\n *ngIf="paginationOptions"\n [length]="dataSource?.total"\n [page]="paginationOptions.page"\n [pageSize]="paginationOptions.pageSize"\n [pageSizeOptions]="paginationOptions.pageSizeOptions">\n </novo-simple-table-pagination>\n <div class="novo-activity-table-actions">\n <ng-content select="[novo-activity-table-actions]"></ng-content>\n </div>\n </header>\n <div class="novo-activity-table-loading-mask" *ngIf="dataSource?.loading || loading" data-automation-id="novo-activity-table-loading">\n <novo-loading></novo-loading>\n </div>\n <div class="novo-activity-table-filter-container">\n <div class="novo-activity-table-custom-filter" *ngIf="customFilter">\n <ng-content select="[novo-activity-table-custom-filter]"></ng-content>\n </div>\n <div class="novo-activity-table-container">\n <novo-simple-table *ngIf="(columns?.length > 0)" [dataSource]="dataSource" novoSortFilter novoSelection [class.empty]="dataSource?.currentlyEmpty && state.userFiltered" [hidden]="dataSource?.totallyEmpty && !state.userFiltered">\n <ng-content></ng-content>\n <ng-container novoSimpleColumnDef="selection">\n <novo-simple-checkbox-header-cell *novoSimpleHeaderCellDef></novo-simple-checkbox-header-cell>\n <novo-simple-checkbox-cell *novoSimpleCellDef="let row; let i = index" [row]="row" [index]="i"></novo-simple-checkbox-cell>\n </ng-container>\n <ng-container *ngFor="let column of actionColumns" [novoSimpleColumnDef]="column.id">\n <novo-simple-empty-header-cell [class.button-header-cell]="!column.options" [class.dropdown-header-cell]="column.options" *novoSimpleHeaderCellDef></novo-simple-empty-header-cell>\n <novo-simple-action-cell *novoSimpleCellDef="let row; let i = index" [row]="row" [column]="column"></novo-simple-action-cell>\n </ng-container>\n <ng-container *ngFor="let column of columns" [novoSimpleColumnDef]="column.id">\n <novo-simple-header-cell *novoSimpleHeaderCellDef [column]="column" [novo-simple-cell-config]="column.config" [defaultSort]="defaultSort">{{ column.label }}</novo-simple-header-cell>\n <novo-simple-cell *novoSimpleCellDef="let row" [column]="column" [row]="row"></novo-simple-cell>\n </ng-container>\n <novo-simple-header-row *novoSimpleHeaderRowDef="displayedColumns"></novo-simple-header-row>\n <novo-simple-row *novoSimpleRowDef="let row; columns: displayedColumns;"></novo-simple-row>\n </novo-simple-table>\n <div class="novo-activity-table-no-results-container" *ngIf="dataSource?.currentlyEmpty && state.userFiltered && !dataSource?.loading && !loading && !dataSource.pristine">\n <div #filtered><ng-content select="[novo-activity-table-no-results-message]"></ng-content></div>\n <div class="novo-activity-table-empty-message" *ngIf="filtered.childNodes.length == 0">\n <h4><i class="bhi-search-question"></i> {{ labels.noMatchingRecordsMessage }}</h4>\n </div>\n </div>\n <div class="novo-activity-table-empty-container" *ngIf="dataSource?.totallyEmpty && !dataSource?.loading && !loading && !state.userFiltered && !dataSource.pristine">\n <div #empty><ng-content select="[novo-activity-table-empty-message]"></ng-content></div>\n <div class="novo-activity-table-empty-message" *ngIf="empty.childNodes.length == 0">\n <h4><i class="bhi-search-question"></i> {{ labels.emptyTableMessage }}</h4>\n </div>\n </div>\n </div>\n </div>\n ',changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[ai]}]}],Vi.ctorParameters=function(){return[{type:Ne},{type:t.ChangeDetectorRef},{type:ai}]},Vi.propDecorators={globalSearchHiddenClassToggle:[{type:t.HostBinding,args:["class.global-search-hidden"]}],activityService:[{type:t.Input}],columns:[{type:t.Input}],displayedColumns:[{type:t.Input}],actionColumns:[{type:t.Input}],paginationOptions:[{type:t.Input}],searchOptions:[{type:t.Input}],defaultSort:[{type:t.Input}],outsideFilter:[{type:t.Input}],customFilter:[{type:t.Input}],forceShowHeader:[{type:t.Input}],hideGlobalSearch:[{type:t.Input}],debug:[{type:t.Input}],empty:[{type:t.HostBinding,args:["class.empty"]}],loadingClass:[{type:t.HostBinding,args:["class.loading"]}]};var Ui=function(){};Ui.decorators=[{type:t.NgModule,args:[{imports:[Vn,y.CdkTableModule,s.CommonModule,n.FormsModule,_,an,An,ze,Rn,Ln],exports:[Li,ui,mi,hi,_i,Gi,Pi,Ai,ki,ii,Ci,fi,gi,vi,Di,xi,Si,Ii,Bi,bi,yi,ri,Vi,Ni,Hi],declarations:[Li,ui,mi,hi,_i,Gi,Pi,Ai,ki,ii,Ci,fi,gi,vi,Di,xi,Si,Ii,Bi,bi,yi,ri,Vi,Ni,Hi],providers:[ai]}]}];var Ki=function(){function e(e,t){this.element=e,this.labels=t,this.currentSlide=0,this.start=!0,this.end=!0,this.currSlides=["active"],this.handleKeyDownFunc=this.handleKeyDown.bind(this)}return e.prototype.ngOnInit=function(){for(var e=0;e<this.slides;e++)this.currSlides[e]=e>0?"inactive":"active";this.element.nativeElement.addEventListener("keydown",this.handleKeyDownFunc)},e.prototype.ngOnDestroy=function(){this.element.nativeElement.removeEventListener("keydown",this.handleKeyDownFunc)},e.prototype.handleKeyDown=function(e){9===e.keyCode&&(e.stopImmediatePropagation(),e.preventDefault())},e.prototype.changeSlide=function(e){if("next"===e){if(this.currentSlide===this.slides-1)return;this.currentSlide++}else{if(0===this.currentSlide)return;this.currentSlide--}for(var t=0;t<this.slides;t++)this.currSlides[t]="inactive";this.currSlides[this.currentSlide]="active",this.start=0===this.currentSlide,this.end=this.currentSlide===this.slides-1,this.currentClass="slide-"+this.currentSlide},e}();Ki.decorators=[{type:t.Component,args:[{selector:"novo-slider",template:'\n <section class="slides">\n <ng-content select="div[slide]"></ng-content>\n </section>\n <div class="controls">\n <button *ngIf="!start" theme="icon" icon="previous" (click)="changeSlide(\'back\')"></button>\n <div class="indicators">\n <div class="indicator-circle" *ngFor="let indicator of currSlides; let i = index" [ngClass]="indicator"></div>\n </div>\n <button *ngIf="!end" theme="primary" icon="next" (click)="changeSlide(\'next\')">{{ labels.next }}</button>\n <ng-content select="button" *ngIf="end"></ng-content>\n </div>\n ',host:{"[class]":"currentClass"}}]}],Ki.ctorParameters=function(){return[{type:t.ElementRef},{type:Ne}]},Ki.propDecorators={slides:[{type:t.Input}]};var zi=function(){};zi.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,_],declarations:[Ki],exports:[Ki]}]}];var ji=function(e){function t(t){return e.call(this,t)||this}return te(t,e),t}(T.CdkStepLabel);ji.decorators=[{type:t.Directive,args:[{selector:"[novoStepLabel]"}]}],ji.ctorParameters=function(){return[{type:t.TemplateRef}]};var $i=function(e){function t(t,n){var o=e.call(this,n)||this;return o._focusMonitor=t,o._element=n,t.monitor(n.nativeElement,!0),o}return te(t,e),Object.defineProperty(t.prototype,"index",{get:function(){return this._index},set:function(e){this._index=m.coerceNumberProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selected",{get:function(){return this._selected},set:function(e){this._selected=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._active},set:function(e){this._active=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"touched",{get:function(){return this.selected||"edit"===this.state||"done"===this.state},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"optional",{get:function(){return this._optional},set:function(e){this._optional=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),t.prototype.ngOnDestroy=function(){this._focusMonitor.stopMonitoring(this._element.nativeElement)},t.prototype._stringLabel=function(){return this.label instanceof ji?null:this.label},t.prototype._templateLabel=function(){return this.label instanceof ji?this.label:null},t.prototype._getHostElement=function(){return this._element.nativeElement},t}(T.CdkStepHeader);$i.decorators=[{type:t.Component,args:[{selector:"novo-step-header",template:'<div [class.novo-step-icon]="touched"\n [class.novo-step-icon-not-touched]="!touched">\n <ng-container *ngIf="icon">\n <novo-icon size="small" raised="true" [theme]="theme">{{icon}}</novo-icon>\n </ng-container>\n <ng-container *ngIf="!icon">\n <span class="novo-step-number">{{index + 1}}</span>\n </ng-container>\n</div>\n<div class="novo-step-label"\n [class.novo-step-label-active]="active"\n [class.novo-step-label-selected]="selected">\n \x3c!-- If there is a label template, use it. --\x3e\n <ng-container *ngIf="_templateLabel()" [ngTemplateOutlet]="_templateLabel()!.template">\n </ng-container>\n \x3c!-- It there is no label template, fall back to the text label. --\x3e\n <div class="novo-step-text-label" *ngIf="_stringLabel()">{{label}}</div>\n</div>\n<novo-step-status [state]="state"></novo-step-status>\n',host:{class:"novo-step-header",role:"tab"},preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush,styles:["@-webkit-keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@-webkit-keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@-webkit-keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@-webkit-keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}@keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}.novo-step-header{cursor:pointer;outline:none;overflow:visible;position:relative}.novo-step-optional{font-size:12px}.novo-step-icon,.novo-step-icon-not-touched{align-items:center;border-radius:50%;display:flex;height:24px;justify-content:center;width:24px}.novo-step-icon-not-touched .novo-step-number,.novo-step-icon .novo-step-number{align-items:center;border-radius:4px;box-shadow:2px 2px 0 rgba(0,0,0,.2);display:flex;font-size:1em;height:1.6em;justify-content:center;min-width:1.6em}.novo-step-icon .novo-step-number{background:#4a89dc;color:#fff}.novo-step-icon-not-touched .novo-step-number{background:#a9adbb;color:#fff}.novo-step-label{display:inline-block;min-width:50px;padding:4px 0;vertical-align:middle;white-space:nowrap}.novo-step-label,.novo-step-text-label{overflow:hidden;text-align:center;text-overflow:ellipsis}"]}]}],$i.ctorParameters=function(){return[{type:v.FocusMonitor},{type:t.ElementRef}]},$i.propDecorators={theme:[{type:t.Input}],color:[{type:t.Input}],icon:[{type:t.Input}],state:[{type:t.Input}],label:[{type:t.Input}],iconOverrides:[{type:t.Input}],index:[{type:t.Input}],selected:[{type:t.Input}],active:[{type:t.Input}],optional:[{type:t.Input}]};var Wi={horizontalStepTransition:d.trigger("stepTransition",[d.state("previous",d.style({transform:"translate3d(-100%, 0, 0)",visibility:"hidden"})),d.state("current",d.style({transform:"none",visibility:"visible"})),d.state("next",d.style({transform:"translate3d(100%, 0, 0)",visibility:"hidden"})),d.transition("* => *",d.animate("500ms cubic-bezier(0.35, 0, 0.25, 1)"))]),verticalStepTransition:d.trigger("stepTransition",[d.state("previous",d.style({height:"0px",visibility:"hidden"})),d.state("next",d.style({height:"0px",visibility:"hidden"})),d.state("current",d.style({height:"*",visibility:"visible"})),d.transition("* <=> current",d.animate("225ms cubic-bezier(0.4, 0.0, 0.2, 1)"))])},Zi=(T.CdkStep,T.CdkStepper,function(e){function t(t){return e.call(this,t)||this}return te(t,e),t}(T.CdkStep));Zi.decorators=[{type:t.Component,args:[{selector:"novo-step",template:"<ng-template><ng-content></ng-content></ng-template>\n",preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush}]}],Zi.ctorParameters=function(){return[{type:T.CdkStepper,decorators:[{type:t.Inject,args:[t.forwardRef((function(){return Yi}))]}]}]},Zi.propDecorators={stepLabel:[{type:t.ContentChild,args:[ji]}],theme:[{type:t.Input}],color:[{type:t.Input}],icon:[{type:t.Input}]};var Yi=function(e){function t(){var t=e.apply(this,ae(arguments))||this;return t._iconOverrides={},t}return te(t,e),Object.defineProperty(t.prototype,"completed",{get:function(){try{var e=this._steps.toArray(),t=e.length-1;return e[t].completed&&t===this.selectedIndex}catch(e){return!1}},enumerable:!1,configurable:!0}),t.prototype.ngAfterContentInit=function(){var e=this;this._steps.changes.pipe(g.takeUntil(this._destroyed)).subscribe((function(){return e._stateChanged()}))},t.prototype.complete=function(){try{this._steps.toArray()[this.selectedIndex].completed=!0,this.next(),this._stateChanged()}catch(e){}},t.prototype.getIndicatorType=function(e){var t=this._steps.toArray();return e===this.selectedIndex?t[e]&&e===t.length-1&&t[e].completed?"done":"edit":e<this.selectedIndex?"done":"none"},t}(T.CdkStepper);Yi.decorators=[{type:t.Directive,args:[{selector:"[novoStepper]"}]}],Yi.propDecorators={_stepHeader:[{type:t.ViewChildren,args:[$i]}],_steps:[{type:t.ContentChildren,args:[Zi]}],_icons:[{type:t.ContentChildren,args:[Ka]}]};var qi=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(Yi);qi.decorators=[{type:t.Component,args:[{selector:"novo-horizontal-stepper",template:'<div class="novo-horizontal-stepper-header-container">\n <div class="novo-stepper-horizontal-line complete"></div>\n <ng-container *ngFor="let step of _steps; let i = index; let isLast = last">\n <novo-step-header class="novo-horizontal-stepper-header"\n (click)="step.select()"\n (keydown)="_onKeydown($event)"\n [tabIndex]="_getFocusIndex() === i ? 0 : -1"\n [id]="_getStepLabelId(i)"\n [attr.aria-controls]="_getStepContentId(i)"\n [attr.aria-selected]="selectedIndex == i"\n [index]="i"\n [theme]="step.theme"\n [color]="step.color"\n [icon]="step.icon"\n [state]="getIndicatorType(i)"\n [label]="step.stepLabel || step.label"\n [selected]="selectedIndex === i"\n [active]="step.completed || selectedIndex === i || !linear"\n [optional]="step.optional"\n [iconOverrides]="_iconOverrides">\n </novo-step-header>\n </ng-container>\n <div class="novo-stepper-horizontal-line" [class.complete]="completed"></div>\n</div>\n\n<div class="novo-horizontal-content-container">\n <div *ngFor="let step of _steps; let i = index"\n class="novo-horizontal-stepper-content" role="tabpanel"\n [@stepTransition]="_getAnimationDirection(i)"\n [id]="_getStepContentId(i)"\n [attr.aria-labelledby]="_getStepLabelId(i)"\n [attr.aria-expanded]="selectedIndex === i">\n <ng-container [ngTemplateOutlet]="step.content"></ng-container>\n </div>\n</div>\n',host:{class:"novo-stepper-horizontal","aria-orientation":"horizontal",role:"tablist"},animations:[Wi.horizontalStepTransition],providers:[{provide:Yi,useExisting:qi}],preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush,styles:['@-webkit-keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@-webkit-keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@-webkit-keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@-webkit-keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}@keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}.novo-stepper-horizontal,.novo-stepper-vertical{display:block}.novo-horizontal-stepper-header-container{align-items:center;background:#f4f4f4;display:flex;justify-content:center;margin-bottom:1em;white-space:nowrap}.novo-stepper-horizontal-line{border-bottom:1px solid #d9dadc;flex:auto;height:80px;min-width:0}.novo-stepper-horizontal-line.complete{border-bottom:1px solid #4a89dc}.novo-horizontal-stepper-header{align-items:center;display:flex;flex-flow:column;height:80px;justify-content:center;overflow:visible;padding:0 24px}.novo-horizontal-stepper-header .novo-step-status{align-items:center;bottom:0;display:flex;height:1px;justify-content:center;position:absolute;width:100%}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line{position:absolute;width:100%}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line:before{border-bottom:1px solid #d9dadc;content:"";display:block;margin-right:8px;width:calc(50% - 8px)}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line:after{border-top:1px solid #d9dadc;content:"";display:block;margin-left:calc(50% + 8px);margin-top:-1px;width:calc(50% - 8px)}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.done:before,.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.edit:before{border-bottom:1px solid #4a89dc}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.done:after{border-top:1px solid #4a89dc}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon{position:relative}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon:before{background:#fff;border-radius:50%;bottom:1px;content:"";display:block;left:1px;position:absolute;right:1px;top:1px;z-index:0}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon>*{position:relative;z-index:1}.novo-vertical-stepper-header{align-items:center;display:flex;max-height:24px;padding:24px}.novo-vertical-stepper-header .novo-step-icon,.novo-vertical-stepper-header .novo-step-icon-not-touched{margin-right:12px}[dir=rtl] .novo-vertical-stepper-header .novo-step-icon,[dir=rtl] .novo-vertical-stepper-header .novo-step-icon-not-touched{margin-left:12px;margin-right:0}.novo-horizontal-stepper-content{overflow:hidden}.novo-horizontal-stepper-content[aria-expanded=false]{height:0}.novo-horizontal-content-container{overflow:hidden;padding:0 24px 24px}.novo-vertical-content-container{border:0;margin-left:36px;position:relative}[dir=rtl] .novo-vertical-content-container{margin-left:0;margin-right:36px}.novo-stepper-vertical-line:before{border-left:1px solid #d9dadc;bottom:-16px;content:"";left:0;position:absolute;top:-16px;z-index:-1}[dir=rtl] .novo-stepper-vertical-line:before{left:auto;right:0}.novo-stepper-vertical-line.done:after,.novo-stepper-vertical-line.done:before,.novo-stepper-vertical-line.edit:before{border-left-color:1px solid #4a89dc}.novo-stepper-vertical novo-step-status{left:35px;position:absolute;top:25px;transform:scale(.8)}.novo-vertical-stepper-content{overflow:hidden}.novo-vertical-content{padding:0 24px 24px}.novo-step:last-child .novo-vertical-content-container{border:none}']}]}],qi.propDecorators={selectedIndex:[{type:t.Input}]};var Ji=function(e){function t(t,n){var o=e.call(this,t,n)||this;return o._orientation="vertical",o}return te(t,e),t}(Yi);Ji.decorators=[{type:t.Component,args:[{selector:"novo-vertical-stepper",template:'<div class="novo-step" *ngFor="let step of _steps; let i = index; let isLast = last">\n <novo-step-header class="novo-vertical-stepper-header"\n (click)="step.select()"\n (keydown)="_onKeydown($event)"\n [tabIndex]="_getFocusIndex() == i ? 0 : -1"\n [id]="_getStepLabelId(i)"\n [attr.aria-controls]="_getStepContentId(i)"\n [attr.aria-selected]="selectedIndex === i"\n [index]="i"\n [theme]="step.theme"\n [color]="step.color"\n [icon]="step.icon"\n [state]="getIndicatorType(i)"\n [label]="step.stepLabel || step.label"\n [selected]="selectedIndex === i"\n [active]="step.completed || selectedIndex === i || !linear"\n [optional]="step.optional"\n [iconOverrides]="_iconOverrides">\n </novo-step-header>\n\n <div class="novo-vertical-content-container" [class.novo-stepper-vertical-line]="!isLast" [ngClass]="getIndicatorType(i)">\n <div class="novo-vertical-stepper-content" role="tabpanel"\n [@stepTransition]="_getAnimationDirection(i)"\n [id]="_getStepContentId(i)"\n [attr.aria-labelledby]="_getStepLabelId(i)"\n [attr.aria-expanded]="selectedIndex === i">\n <div class="novo-vertical-content">\n <ng-container [ngTemplateOutlet]="step.content"></ng-container>\n </div>\n </div>\n </div>\n </div>\n',host:{class:"novo-stepper-vertical","aria-orientation":"vertical",role:"tablist"},animations:[Wi.verticalStepTransition],providers:[{provide:Yi,useExisting:Ji}],preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush,styles:['@-webkit-keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@keyframes rotate{0%{transform:rotate(0deg)}75%{transform:rotate(200deg)}to{transform:rotate(180deg)}}@-webkit-keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@keyframes half-rotate{0%{transform:rotate(45deg)}75%{transform:rotate(100deg)}to{transform:rotate(90deg)}}@-webkit-keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@keyframes rotateBack{0%{transform:rotate(90deg)}to{transform:rotate(0deg)}}@-webkit-keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}@keyframes show{0%{opacity:0;transform:translateX(-100%)}75%{transform:translateX(0)}to{opacity:1;transform:translateX(0)}}.novo-stepper-horizontal,.novo-stepper-vertical{display:block}.novo-horizontal-stepper-header-container{align-items:center;background:#f4f4f4;display:flex;justify-content:center;margin-bottom:1em;white-space:nowrap}.novo-stepper-horizontal-line{border-bottom:1px solid #d9dadc;flex:auto;height:80px;min-width:0}.novo-stepper-horizontal-line.complete{border-bottom:1px solid #4a89dc}.novo-horizontal-stepper-header{align-items:center;display:flex;flex-flow:column;height:80px;justify-content:center;overflow:visible;padding:0 24px}.novo-horizontal-stepper-header .novo-step-status{align-items:center;bottom:0;display:flex;height:1px;justify-content:center;position:absolute;width:100%}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line{position:absolute;width:100%}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line:before{border-bottom:1px solid #d9dadc;content:"";display:block;margin-right:8px;width:calc(50% - 8px)}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line:after{border-top:1px solid #d9dadc;content:"";display:block;margin-left:calc(50% + 8px);margin-top:-1px;width:calc(50% - 8px)}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.done:before,.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.edit:before{border-bottom:1px solid #4a89dc}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-line.done:after{border-top:1px solid #4a89dc}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon{position:relative}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon:before{background:#fff;border-radius:50%;bottom:1px;content:"";display:block;left:1px;position:absolute;right:1px;top:1px;z-index:0}.novo-horizontal-stepper-header .novo-step-status .novo-stepper-status-icon>*{position:relative;z-index:1}.novo-vertical-stepper-header{align-items:center;display:flex;max-height:24px;padding:24px}.novo-vertical-stepper-header .novo-step-icon,.novo-vertical-stepper-header .novo-step-icon-not-touched{margin-right:12px}[dir=rtl] .novo-vertical-stepper-header .novo-step-icon,[dir=rtl] .novo-vertical-stepper-header .novo-step-icon-not-touched{margin-left:12px;margin-right:0}.novo-horizontal-stepper-content{overflow:hidden}.novo-horizontal-stepper-content[aria-expanded=false]{height:0}.novo-horizontal-content-container{overflow:hidden;padding:0 24px 24px}.novo-vertical-content-container{border:0;margin-left:36px;position:relative}[dir=rtl] .novo-vertical-content-container{margin-left:0;margin-right:36px}.novo-stepper-vertical-line:before{border-left:1px solid #d9dadc;bottom:-16px;content:"";left:0;position:absolute;top:-16px;z-index:-1}[dir=rtl] .novo-stepper-vertical-line:before{left:auto;right:0}.novo-stepper-vertical-line.done:after,.novo-stepper-vertical-line.done:before,.novo-stepper-vertical-line.edit:before{border-left-color:1px solid #4a89dc}.novo-stepper-vertical novo-step-status{left:35px;position:absolute;top:25px;transform:scale(.8)}.novo-vertical-stepper-content{overflow:hidden}.novo-vertical-content{padding:0 24px 24px}.novo-step:last-child .novo-vertical-content-container{border:none}']}]}],Ji.ctorParameters=function(){return[{type:O.Directionality,decorators:[{type:t.Optional}]},{type:t.ChangeDetectorRef}]},Ji.propDecorators={selectedIndex:[{type:t.Input}]};var Xi=function(e,t){};Xi.decorators=[{type:t.Component,args:[{selector:"novo-step-status",template:'<div class="novo-stepper-status-line" [ngClass]="state"></div>\n<div [ngSwitch]="state" class="novo-stepper-status-icon">\n <novo-icon size="small" color="positive" *ngSwitchCase="\'edit\'">check-circle</novo-icon>\n <novo-icon size="small" color="positive" *ngSwitchCase="\'done\'">check-circle-filled</novo-icon>\n <novo-icon size="small" color="positive" *ngSwitchDefault>circle-o</novo-icon>\n</div>\n',preserveWhitespaces:!1,changeDetection:t.ChangeDetectionStrategy.OnPush,host:{class:"novo-step-status"}}]}],Xi.ctorParameters=function(){return[{type:Yi,decorators:[{type:t.Inject,args:[t.forwardRef((function(){return Yi}))]}]},{type:$i,decorators:[{type:t.Inject,args:[t.forwardRef((function(){return $i}))]}]}]},Xi.propDecorators={state:[{type:t.Input}]};var Qi=function(){};Qi.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,c.PortalModule,_,T.CdkStepperModule,za,v.A11yModule],exports:[qi,Ji,Zi,ji,Yi,$i,Xi],declarations:[qi,Ji,Zi,ji,Yi,$i,Xi]}]}];var er=function(){function e(e,n){var o=this;this.labelService=e,this.ref=n,this.selectionChange=new t.EventEmitter,this.displayTabIndex=0,this.filterText=new u.BehaviorSubject(""),this.loading=!0,this.showClearAll=!1,this.scrollViewportHeight=351,this.virtualScrollItemSize=39,this.getSelectedState=function(e){var t=e.filter((function(e){return e.selected})).length;if(t)return t===e.length?"selected":"indeterminate"},this.filter=function(e){o.displayTabs.forEach((function(t,n){return t.data=o.tabs[n].data.filter((function(n){return n[t.labelField].toLowerCase().includes(e.toLowerCase())}))})),o.ref.markForCheck()}}return Object.defineProperty(e.prototype,"displayTab",{get:function(){return this.displayTabs[this.displayTabIndex]},set:function(e){this.displayTabIndex=this.tabs.map((function(e){return e.typeName})).indexOf(e.typeName)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"minBufferPx",{get:function(){return this.scrollViewportHeight},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxBufferPx",{get:function(){return 2*this.scrollViewportHeight},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.setupDisplayData(),this.createChildrenReferences(),this.initializeDescendantSelection(),this.updateParentsAndQuickSelect(),this.updateClearAll(),this.loading=!1,this.filterTextSubscription=this.filterText.pipe(g.debounceTime(300)).subscribe({next:this.filter})},e.prototype.ngOnDestroy=function(){this.filterTextSubscription&&this.filterTextSubscription.unsubscribe()},e.prototype.changeTab=function(e){this.displayTab=e,this.scrollableInstance&&this.scrollableInstance.scrollTo({behavior:"auto",top:0})},e.prototype.getPixelHeight=function(e){return Number(getComputedStyle(e,"").height.match(/(\d+(\.\d+)?)px$/)[1])},e.prototype.setupDisplayData=function(){this.displayTabs=this.tabs.map((function(e){return Object.assign({},e)})),this.displayTab=this.tabs[0]},e.prototype.createChildrenReferences=function(){var e=this;this.tabs.forEach((function(t){if("childTypeName"in t){var n=e.tabs.find((function(e){return e.typeName===t.childTypeName})),o=e.makeCompareFunction(n.valueField),a=e.makeWarningFunction(t.typeName,n.typeName,n.valueField),i=n.data.slice().sort(o);t.data.filter((function(e){var t=e.children;return t&&t.length})).forEach((function(t){return e.replaceChildrenWithReferences(t,i,o,a)}))}})),this.quickSelectConfig&&(this.quickSelectConfig.items.filter((function(e){return"all"in e})).forEach((function(t){t.children=e.tabs.find((function(e){var n=e.typeName;return t.childTypeName===n})).data})),this.quickSelectConfig.items.filter((function(e){return!("all"in e)})).forEach((function(t){var n=e.tabs.find((function(e){return e.typeName===t.childTypeName})),o=e.makeCompareFunction(n.valueField),a=e.makeWarningFunction(t.label,n.typeName,n.valueField),i=n.data.slice().sort(o);e.replaceChildrenWithReferences(t,i,o,a)})))},e.prototype.makeCompareFunction=function(e){return function(t,n){var o=t&&t[e]||t,a=n&&n[e]||n;return o<a?-1:o>a?1:o===a?0:void 0}},e.prototype.replaceChildrenWithReferences=function(e,t,n,o){e.children=e.children.map((function(e){return a=e,r=n,function e(t,n){if(!(t>n)){var o=t+Math.floor((n-t)/2),s=r(a,i[o]);if(0===s)return i[o];if(-1===s)return e(t,o-1);if(1===s)return e(o+1,n);throw new Error("Input mismatch: "+JSON.stringify(a)+" not comparable to "+JSON.stringify(i[o]))}}(0,(i=t).length-1)||o(e);var a,i,r})).filter(Boolean)},e.prototype.makeWarningFunction=function(e,t,n){return function(o){var a=o[n]||o;console.warn("No "+t+" found with value "+a+" for parent "+e)}},e.prototype.onDropdownToggle=function(e){e&&(this.scrollViewportHeight=this.getPixelHeight(this.scrollableInstance.getElementRef().nativeElement),this.virtualScrollItemSize=this.getPixelHeight(this.scrollableInstance.getElementRef().nativeElement.querySelector("novo-list-item")))},e.prototype.onItemToggled=function(e){Array.isArray(e.children)&&this.updateDescendants(e.selected,e.children),this.updateParentsAndQuickSelect(),this.updateClearAll(e.selected),this.emitSelectedValues(),this.ref.markForCheck()},e.prototype.initializeDescendantSelection=function(){this.tabs.forEach((function(e){"childTypeName"in e&&e.data&&e.data.length&&e.data.forEach((function(e){e.selected&&e.children&&e.children.length&&e.children.forEach((function(e){e.selected=!0}))}))}))},e.prototype.updateDescendants=function(e,t){var n=this;t.forEach((function(t){e?t.selected=!0:delete t.selected,Array.isArray(t.children)&&n.updateDescendants(t.selected,t.children)}))},e.prototype.updateClearAll=function(e){this.showClearAll=!!e||this.tabs.some((function(e){return e.childTypeName?e.data.some((function(e){var t=e.selected,n=e.indeterminate;return t||n})):e.data.some((function(e){return e.selected}))}))},e.prototype.updateParentsAndQuickSelect=function(){var e=this;this.tabs.filter((function(e){return"childTypeName"in e&&!!e.childTypeName})).forEach((function(t){t.data.filter((function(e){var t=e.children;return t&&t.length})).forEach((function(t){["indeterminate","selected"].forEach((function(e){return delete t[e]}));var n=e.getSelectedState(t.children);n&&(t[n]=!0)}))})),this.quickSelectConfig&&this.quickSelectConfig.items.forEach((function(t){delete t.selected;var n=e.getSelectedState(t.children);n&&(t[n]=!0)}))},e.prototype.emitSelectedValues=function(){var e=this.tabs.map((function(e){return Object.assign(Object.assign({},e),{data:e.data.filter((function(e){return e.selected}))})}));this.selectionChange.emit(e)},e.prototype.deselectEverything=function(e){R.swallowEvent(e),this.showClearAll=!1,this.quickSelectConfig&&this.quickSelectConfig.items.forEach((function(e){delete e.selected})),this.tabs.forEach((function(e){e.childTypeName?e.data.forEach((function(e){delete e.selected,delete e.indeterminate,e.children.forEach((function(e){return delete e.selected}))})):e.data.forEach((function(e){return delete e.selected}))})),this.emitSelectedValues(),this.ref.markForCheck()},e.prototype.onClearFilter=function(e){R.swallowEvent(e),this.filterText.next("")},e.prototype.onFilter=function(e){this.filterText.next(e.target.value)},e}();er.decorators=[{type:t.Component,args:[{selector:"novo-tabbed-group-picker",template:'<novo-dropdown (toggled)="onDropdownToggle($event)">\n <button\n class="tabbed-group-picker-button"\n [theme]="buttonConfig.theme"\n [side]="buttonConfig.side"\n [icon]="buttonConfig.icon"\n [loading]="loading"\n >\n <div class="tabbed-group-picker-button-label">{{ buttonConfig.label }}</div>\n </button>\n <div class="tabbed-group-picker-search" data-automation-id="tabbed-group-picker-search">\n <input type="text" [placeholder]="labelService.search" [value]="filterText | async" (input)="onFilter($event)" />\n <i class="bhi-search" *ngIf="!(filterText | async)"></i>\n <i class="bhi-times" *ngIf="(filterText | async)" (click)="onClearFilter($event)"></i>\n </div>\n <div class="tabbed-group-picker-column-container">\n <div class="tabbed-group-picker-column left">\n <novo-nav theme="white" direction="vertical">\n <novo-tab *ngFor="let tab of displayTabs" [attr.data-automation-id]="tab.typeName" (activeChange)="changeTab(tab)">\n <span>{{ tab.typeLabel }} ({{ tab.data.length }})</span><i class="bhi-next"></i>\n </novo-tab>\n </novo-nav>\n <button *ngIf="showClearAll" class="clear-all-button" theme="dialogue" icon="times" side="right" color="grapefruit" (click)="deselectEverything($event)">{{ labelService.clear }}</button>\n </div>\n <div class="tabbed-group-picker-column right">\n <div class="quick-select" *ngIf="quickSelectConfig && !(filterText | async)">\n <div class="quick-select-label">{{ quickSelectConfig.label }}</div>\n <novo-list class="quick-select-list" direction="vertical">\n <novo-list-item\n class="quick-select-item"\n *ngFor="let quickSelect of quickSelectConfig.items"\n [attr.data-automation-id]="quickSelect.label"\n (click)="quickSelect.selected = !quickSelect.selected; onItemToggled(quickSelect)"\n >\n <item-content>\n <novo-checkbox\n [label]="quickSelect.label"\n [name]="\'selected\'"\n [(ngModel)]="quickSelect.selected"\n (ngModelChange)="onItemToggled(quickSelect)"\n ></novo-checkbox>\n </item-content>\n </novo-list-item>\n </novo-list>\n </div>\n <novo-list *ngIf="displayTab.data.length" direction="vertical">\n <cdk-virtual-scroll-viewport\n [itemSize]="virtualScrollItemSize"\n [maxBufferPx]="maxBufferPx"\n [minBufferPx]="minBufferPx"\n #tabbedGroupPickerVirtualScrollViewport\n >\n <novo-list-item\n *cdkVirtualFor="let item of displayTab.data"\n [attr.data-automation-id]="item[displayTab.labelField]"\n (click)="item.selected = !item.selected; onItemToggled(item)"\n >\n <item-content>\n <novo-checkbox\n [label]="item[displayTab.labelField]"\n [name]="\'selected\'"\n [indeterminate]="item.indeterminate"\n [(ngModel)]="item.selected"\n (ngModelChange)="onItemToggled(item)"\n >\n </novo-checkbox>\n </item-content>\n </novo-list-item>\n </cdk-virtual-scroll-viewport>\n </novo-list>\n <div class="tabbed-group-picker-empty-item" *ngIf="!displayTab.data.length && (filterText | async)">\n <i class="{{ displayTab.icon || \'bhi-search\' }}"></i>\n <div class="empty-item-main-message">{{ labelService.tabbedGroupPickerEmpty }}</div>\n <div class="empty-item-sub-message">{{ labelService.tabbedGroupClearSuggestion(displayTab.typeLabel) }}</div>\n </div>\n </div>\n </div>\n</novo-dropdown>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],er.ctorParameters=function(){return[{type:Ne},{type:t.ChangeDetectorRef}]},er.propDecorators={scrollableInstance:[{type:t.ViewChild,args:["tabbedGroupPickerVirtualScrollViewport"]}],buttonConfig:[{type:t.Input}],tabs:[{type:t.Input}],quickSelectConfig:[{type:t.Input}],selectionChange:[{type:t.Output}]};var tr=function(){};tr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,h.ScrollingModule,nt,pt,An,_,an],providers:[Ne],declarations:[er],exports:[er]}]}];var nr=function(){this.data={},this.value="",this.meta={}},or=function(e){function t(t){var n=e.call(this)||this;return n.labels=t,n}return te(t,e),t.prototype.getFormattedDate=function(){return this.labels.formatDate(this.value)},t}(nr);or.decorators=[{type:t.Component,args:[{selector:"date-cell",template:'\n <div class="date-cell">\n <label>{{ getFormattedDate() }}</label>\n </div>\n '}]}],or.ctorParameters=function(){return[{type:Ne}]},or.propDecorators={value:[{type:t.Input}]};var ar=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t.prototype.ngOnInit=function(){if(!this.meta.dropdownCellConfig)throw new Error('Missing "dropdownCellConfig" on the column setup')},t.prototype.onClick=function(e,t,n){(t.callback||e.callback)(this.data,n||t)},t}(nr);ar.decorators=[{type:t.Component,args:[{selector:"novo-dropdown-cell",template:'\n <novo-dropdown parentScrollSelector=".table-container" containerClass="novo-table-dropdown-cell">\n <button type="button" theme="secondary" icon="collapse" inverse>\n <span data-automation-id="novo-dropdown-cell-value">{{ value }}</span>\n </button>\n <list>\n <ng-container *ngFor="let config of meta.dropdownCellConfig; let i = index">\n <dropdown-item-header *ngIf="config.category">{{ config.category }}</dropdown-item-header>\n <item *ngFor="let option of config.options" (action)="onClick(config, option, option.value)"\n [class.active]="(option || option.value) === value">\n <span [attr.data-automation-id]="option.label || option">{{ option.label || option }}</span>\n <i *ngIf="(option || option.value) === value" class="bhi-check"></i>\n </item>\n <hr *ngIf="i < meta.dropdownCellConfig.length - 1"/>\n </ng-container>\n </list>\n </novo-dropdown>\n '}]}],ar.propDecorators={meta:[{type:t.Input}],value:[{type:t.Input}]};var ir=function(){function e(e){this.element=e}return e.prototype.ngAfterViewInit=function(){this.element.nativeElement.focus()},e}();ir.decorators=[{type:t.Directive,args:[{selector:"[keepFilterFocused]"}]}],ir.ctorParameters=function(){return[{type:t.ElementRef}]};var rr=function(){function e(e){this.labels=e,this.itemsPerPage=10,this.pageChange=new t.EventEmitter,this.itemsPerPageChange=new t.EventEmitter,this.onPageChange=new t.EventEmitter,this.maxPagesDisplayed=5}return Object.defineProperty(e.prototype,"disablePageSelection",{get:function(){return this.pageSelectDisabled},set:function(e){this.pageSelectDisabled=m.coerceBooleanProperty(e)},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.label=this.label||this.labels.itemsPerPage,this.rowOptions=this.rowOptions||this.getDefaultRowOptions()},e.prototype.ngOnChanges=function(e){this.page=this.page||1,this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages)},e.prototype.getDefaultRowOptions=function(){return[{value:10,label:"10"},{value:25,label:"25"},{value:50,label:"50"},{value:100,label:"100"}]},e.prototype.onPageSizeChanged=function(e){this.page=1,this.itemsPerPage=e.selected,this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.pageChange.emit(this.page),this.itemsPerPageChange.emit(this.itemsPerPage),this.onPageChange.emit({page:this.page,itemsPerPage:this.itemsPerPage})},e.prototype.selectPage=function(e,t){t&&t.preventDefault(),this.page=e,this.pages=this.getPages(this.page,this.totalPages),this.pageChange.emit(this.page),this.onPageChange.emit({page:this.page,itemsPerPage:this.itemsPerPage})},e.prototype.noPrevious=function(){return 1===this.page},e.prototype.noNext=function(){return this.page===this.totalPages},e.prototype.makePage=function(e,t,n){return{num:e,text:t,active:n}},e.prototype.getPages=function(e,t){var n=[],o=1,a=t;this.maxPagesDisplayed<t&&(a=(o=Math.max(e-Math.floor(this.maxPagesDisplayed/2),1))+this.maxPagesDisplayed-1)>t&&(o=(a=t)-this.maxPagesDisplayed+1);for(var i=o;i<=a;i++){var r=this.makePage(i,i.toString(),i===e);n.push(r)}return n},e.prototype.calculateTotalPages=function(){var e=this.itemsPerPage<1?1:Math.ceil(this.totalItems/this.itemsPerPage);return Math.max(e||0,1)},e}();rr.decorators=[{type:t.Component,args:[{selector:"novo-pagination",template:'\n <h5 class="rows">{{label}}</h5>\n <novo-select [options]="rowOptions" [placeholder]="labels.select" [(ngModel)]="itemsPerPage" (onSelect)="onPageSizeChanged($event)" data-automation-id="pager-select"></novo-select>\n <span class="spacer"></span>\n <ul class="pager" data-automation-id="pager">\n <li class="page" (click)="selectPage(page-1)" [ngClass]="{\'disabled\': noPrevious()}"><i class="bhi-previous" data-automation-id="pager-previous"></i></li>\n <li class="page" [ngClass]="{active: p.active}" [class.disabled]="disablePageSelection" *ngFor="let p of pages" (click)="selectPage(p.num, $event)">{{p.text}}</li>\n <li class="page" (click)="selectPage(page+1)" [ngClass]="{\'disabled\': noNext()}"><i class="bhi-next" data-automation-id="pager-next"></i></li>\n </ul>\n '}]}],rr.ctorParameters=function(){return[{type:Ne}]},rr.propDecorators={page:[{type:t.Input}],totalItems:[{type:t.Input}],itemsPerPage:[{type:t.Input}],rowOptions:[{type:t.Input}],label:[{type:t.Input}],disablePageSelection:[{type:t.Input}],pageChange:[{type:t.Output}],itemsPerPageChange:[{type:t.Output}],onPageChange:[{type:t.Output}]};var sr=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return te(t,e),t}(nr);sr.decorators=[{type:t.Component,args:[{selector:"percentage-cell",template:'\n <div class="percentage" *ngIf="value || value === 0">{{ value | percent:\'1.0-2\' }}</div>\n '}]}];var lr=function(){function e(e,t){this.element=e,this.componentUtils=t,this.value=""}return e.prototype.ngOnInit=function(){this.renderer&&(this.renderer.prototype instanceof nr?this.componentUtils.append(this.renderer,this.container).instance.data=this.data:this.value=this.renderer(this.data))},e}();lr.decorators=[{type:t.Component,args:[{selector:"novo-row-details",template:"\n <span #container></span> <span>{{ value }}</span>\n "}]}],lr.ctorParameters=function(){return[{type:t.ElementRef},{type:mt}]},lr.propDecorators={container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef,static:!0}]}],data:[{type:t.Input}],renderer:[{type:t.Input}]};var cr=function(){};cr.decorators=[{type:t.Component,args:[{selector:"novo-table-actions",template:"<ng-content></ng-content>"}]}];var dr=function(){function e(e,t){this.element=e,this.componentUtils=t,this.value="",this.element=e,this.componentUtils=t}return e.prototype.ngOnInit=function(){var e=this;if(this.column._type=this.column.type||"text",this.column.renderer)if(this.column.renderer.prototype instanceof nr){this.column._type="custom";var t=this.componentUtils.append(this.column.renderer,this.container);t.instance.meta=this.column,t.instance.data=this.row,t.instance.value=this.form&&this.hasEditor?this.form.value[this.column.name]:this.row[this.column.name]}else this.value=this.column.renderer(this.row);else this.value=this.form&&this.hasEditor?this.form.value[this.column.name]:this.row[this.column.name];this.form&&this.hasEditor&&(this.valueChangeSubscription=this.form.valueChanges.pipe(g.debounceTime(300),g.distinctUntilChanged()).subscribe((function(t){e.value=t[e.column.name]})))},e.prototype.ngOnDestroy=function(){this.valueChangeSubscription&&this.valueChangeSubscription.unsubscribe()},e.prototype.onClick=function(e){e&&(e.preventDefault(),e.stopPropagation()),this.column.onClick&&this.column.onClick(this.row)},e}();dr.decorators=[{type:t.Component,args:[{selector:"novo-table-cell",template:'\n <div [ngSwitch]="column._type">\n <span #container></span>\n <date-cell *ngSwitchCase="\'date\'" [value]="value"></date-cell>\n <a *ngSwitchCase="\'link\'" (click)="onClick($event)">{{ value }}</a> <span *ngSwitchDefault>{{ value }}</span>\n </div>\n '}]}],dr.ctorParameters=function(){return[{type:t.ElementRef},{type:mt}]},dr.propDecorators={container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef,static:!0}]}],column:[{type:t.Input}],row:[{type:t.Input}],form:[{type:t.Input}],hasEditor:[{type:t.Input}]};var pr=function(){function e(e,n){this.element=e,this.renderer=n,this.onFilterChange=new t.EventEmitter,this.element=e,this.renderer=n}return e.prototype.ngOnInit=function(){this.ngOnChanges()},e.prototype.ngOnChanges=function(e){var t="";this.config.freetextFilter?t=this.config.freetextFilter:this.config.filter&&(t=this.config.filter),this.renderer.setProperty(this.element,"value",t)},e.prototype.onChangeFilter=function(e){var t=this;clearTimeout(this.filterThrottle),We.ENTER===e.keyCode?(this.config.filter=e.target.value,this.onFilterChange.emit({filtering:this.config})):this.filterThrottle=setTimeout((function(){t.config.filter=e.target.value,t.onFilterChange.emit({filtering:t.config})}),300)},e.prototype.onClick=function(e){R.swallowEvent(e)},e}();pr.decorators=[{type:t.Directive,args:[{selector:"[novoTableFilter]"}]}],pr.ctorParameters=function(){return[{type:t.ElementRef},{type:t.Renderer2}]},pr.propDecorators={config:[{type:t.Input,args:["novoTableFilter"]}],onFilterChange:[{type:t.Output}],onChangeFilter:[{type:t.HostListener,args:["keydown",["$event"]]}],onClick:[{type:t.HostListener,args:["click",["$event"]]}]};var ur=function(){};ur.decorators=[{type:t.Component,args:[{selector:"novo-table-footer",template:"<ng-content></ng-content>"}]}];var mr=function(){};mr.decorators=[{type:t.Component,args:[{selector:"novo-table-header",template:"<ng-content></ng-content>"}]}];var hr=function(){function e(e){this.element=e,this.onOrderChange=new t.EventEmitter,this.element=e}return Object.defineProperty(e.prototype,"index",{get:function(){var e=null;this.element.nativeElement&&this.element.nativeElement.parentNode&&(e=Array.prototype.slice.call(this.element.nativeElement.parentNode.children).indexOf(this.element.nativeElement));return e},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){this.column.ordering&&(this.element.nativeElement.setAttribute("draggable",!0),this.table=this.findTable(this.element.nativeElement))},e.prototype.onDragStart=function(e){this.column.ordering&&(this.element.nativeElement.classList.add("dragging"),e.dataTransfer.effectAllowed="move",e.dataTransfer.setData("text/plain",JSON.stringify(this.column)),this.clone=this.table.cloneNode(!0),this.clone.style.position="absolute",this.clone.style.left="100%",this.clone.style.width="150px",this.deleteColumns(this.clone),document.body.appendChild(this.clone),e.dataTransfer.setDragImage(this.clone,75,30))},e.prototype.deleteColumns=function(e){if(e.rows.length>0)for(var t=e.rows,n=0;n<t.length;n++)if(n>10)e.deleteRow(-1);else for(var o=t[n].cells.length,a=0;a<o;a++)a<this.index?t[n].deleteCell(0):a>this.index&&t[n].deleteCell(-1)},e.prototype.findTable=function(e){for(var t=e;t;)if((t=t.parentNode)&&"table"===t.tagName.toLowerCase())return t},e.prototype.onDrag=function(e){return R.swallowEvent(e),!1},e.prototype.onDragEnd=function(e){return R.swallowEvent(e),this.element.nativeElement.classList.remove("over"),this.element.nativeElement.classList.remove("dragging"),document.body.removeChild(this.clone),!1},e.prototype.onDrop=function(e){R.swallowEvent(e),this.element.nativeElement.classList.remove("over");var t=JSON.parse(e.dataTransfer.getData("text/plain"));return this.onOrderChange.emit({first:t,second:this.column}),!1},e.prototype.onDragOver=function(e){return R.swallowEvent(e),e.dataTransfer.dropEffect="move",!1},e.prototype.onDragEnter=function(e){this.element.nativeElement.classList.add("over"),this.target=e.target},e.prototype.onDragLeave=function(e){this.element.nativeElement.classList.remove("over")},e}();hr.decorators=[{type:t.Directive,args:[{selector:"[novoThOrderable]",host:{"(dragstart)":"onDragStart($event)","(dragover)":"onDragOver($event)","(dragenter)":"onDragEnter($event)","(dragleave)":"onDragLeave($event)","(dragend)":"onDragEnd($event)","(drop)":"onDrop($event)"}}]}],hr.ctorParameters=function(){return[{type:t.ElementRef}]},hr.propDecorators={column:[{type:t.Input,args:["novoThOrderable"]}],onOrderChange:[{type:t.Output}]};var gr=function(){function e(){this.onSortChange=new t.EventEmitter}return e.prototype.onToggleSort=function(e){if(e&&e.preventDefault(),this.config&&this.column&&!1!==this.config.sorting&&!1!==this.column.sorting){switch(this.column.sort){case"asc":this.column.sort="desc";break;default:this.column.sort="asc"}this.onSortChange.emit(this.column)}},e}();gr.decorators=[{type:t.Directive,args:[{selector:"[novoThSortable]",host:{"(click)":"onToggleSort($event)"}}]}],gr.propDecorators={config:[{type:t.Input,args:["novoThSortable"]}],column:[{type:t.Input}],onSortChange:[{type:t.Output}]};var fr=function(){};fr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,ln,an,_],declarations:[mr,ur,cr,ir,rr,lr,dr,pr,hr,gr,or,sr,ar],exports:[mr,ur,cr,ir,rr,lr,dr,pr,hr,gr,or,sr,ar]}]}];var yr=function(e,t){void 0===e&&(e="Collection.REFRESH"),void 0===t&&(t=[]),this.type="",this.data=[],this.type=e,this.data=t};yr.REFRESH="Collection.REFRESH",yr.ADD="Collection.ADD",yr.REMOVE="Collection.REMOVE",yr.REMOVE_ALL="Collection.REMOVE_ALL",yr.REPLACE="Collection.REPLACE",yr.INVALIDATE_ALL="Collection.INVALIDATE_ALL",yr.SORT="Collection.SORT",yr.FILTER="Collection.FILTER",yr.CHANGE="Collection.CHANGE",yr.CURRENTPAGE_CHANGE="Collection.CURRENTPAGE_CHANGE",yr.PAGESIZE_CHANGE="Collection.PAGESIZE_CHANGE",yr.NUMBEROFPAGES_CHANGE="Collection.NUMBEROFPAGES_CHANGE";var vr,br=function(){function e(e){void 0===e&&(e=[]),this.dataChange=new t.EventEmitter,this.source=[],this.editData=[],this.isEditing=!1,this.filterData=[],this._filter={},this._sort=[],this.source=e,this.editData=this.copy(this.source),this.filterData=this.source.slice()}return Object.defineProperty(e.prototype,"length",{get:function(){return this.filterData.length},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"total",{get:function(){return this.filterData.length},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"list",{get:function(){return this.filterData},enumerable:!1,configurable:!0}),e.prototype.isEmpty=function(){return this.length<=0&&!this.isLoading()&&!this.hasErrors()},e.prototype.hasErrors=function(){return!1},e.prototype.isLoading=function(){return!1},e.prototype.isFiltered=function(){return Object.keys(this._filter).length>0},e.prototype.edit=function(){this.isEditing=!0,this.editData=this.copy(this.source)},e.prototype.undo=function(){this.isEditing=!1,this.source=this.copy(this.editData),this.refresh()},e.prototype.commit=function(){this.isEditing=!1,this.source=this.filterData.slice(),this.refresh()},e.prototype.addItem=function(e){this.isEditing?this.editData.push(e):this.source.push(e),this.onDataChange(new yr(yr.ADD,[e])),this.refresh()},e.prototype.addItemAt=function(e,t){this.isEditing?this.editData.splice(t,0,e):this.source.splice(t,0,e),this.onDataChange(new yr(yr.ADD,[e])),this.refresh()},e.prototype.addItems=function(e){var t,n;this.isEditing?(t=this.editData).push.apply(t,ae(e)):(n=this.source).push.apply(n,ae(e)),this.onDataChange(new yr(yr.ADD,e)),this.refresh()},e.prototype.addItemsAt=function(e,t){var n,o;this.isEditing?(n=this.editData).splice.apply(n,ae([t,0],e)):(o=this.source).splice.apply(o,ae([t,0],e))},e.prototype.clone=function(){return new e(this.isEditing?this.copy(this.editData):this.copy(this.source))},e.prototype.copy=function(e){return R.deepClone(e)},e.prototype.concat=function(e){this.addItems(e)},e.prototype.getItemAt=function(e){return this.isEditing?this.editData[e]:this.source[e]},e.prototype.getItemIndex=function(e){return this.isEditing?this.editData.indexOf(e):this.source.indexOf(e)},e.prototype.invalidate=function(){this.onDataChange(new yr(yr.INVALIDATE_ALL))},e.prototype.merge=function(e){var t,n;try{for(var o=ne(e),a=o.next();!a.done;a=o.next()){var i=a.value,r=~this.getItemIndex(i);r?this.replaceItem(i,r):this.addItem(i)}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}},e.prototype.removeAll=function(){this.source=[],this.editData=[],this.filterData=[],this.onDataChange(new yr(yr.REMOVE_ALL,[])),this.refresh()},e.prototype.removeItem=function(e){var t=this.getItemIndex(e);return this.removeItemAt(t)},e.prototype.removeItemAt=function(e){var t=!!this.source.splice(e,1);return this.refresh(),t},e.prototype.replaceItem=function(e,t){var n=this.getItemIndex(t);n>=0&&this.replaceItemAt(e,n)},e.prototype.replaceItemAt=function(e,t){this.filterData.splice(t,1,e)},Object.defineProperty(e.prototype,"sort",{get:function(){return this._sort},set:function(e){this._sort=e,this.refresh()},enumerable:!1,configurable:!0}),e.prototype.sortOn=function(e,t){return void 0===t&&(t=!1),this.filterData=this.filterData.sort(R.sortByField(e,t)),this.onDataChange(new yr(yr.SORT)),this.filterData},Object.defineProperty(e.prototype,"filter",{get:function(){return this._filter},set:function(e){this._filter=e,this.refresh()},enumerable:!1,configurable:!0}),e.prototype.filterOn=function(e,t){return void 0===t&&(t=null),this.filterData=this.filterData.filter(R.filterByField(e,t)),this.filterData},e.prototype.onDataChange=function(e){this.dataChange.emit(e)},e.prototype.refresh=function(){var e,t;this.filterData=this.isEditing?this.editData.slice():this.source.slice();try{for(var n=ne(this._sort.reverse()),o=n.next();!o.done;o=n.next()){var a=o.value;this.sortOn(a.field,a.reverse)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}for(var i in this._filter)i&&this.filterOn(i,this._filter[i]);this.onDataChange(new yr(yr.CHANGE,this.filterData))},e.prototype.toArray=function(){return this.isEditing?this.editData:this.source},e.prototype.toJSON=function(){return this.isEditing?this.editData:this.source},e}(),Cr=function(e){function t(t){void 0===t&&(t=[]);var n=e.call(this,t)||this;return n._page=1,n._numberOfPages=1,n._pageSize=10,n}return te(t,e),Object.defineProperty(t.prototype,"numberOfPages",{get:function(){var e=this.source.length/this.pageSize;return e=Math.ceil(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"page",{get:function(){return this._page},set:function(e){this._page=e,this.refresh()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"pageSize",{get:function(){return this._pageSize},set:function(e){this._pageSize=e,this.refresh()},enumerable:!1,configurable:!0}),t.prototype.next=function(){return this.page===this.numberOfPages||this.page++,this.page},t.prototype.prev=function(){return 1===this._page||this.page--,this.page},t.prototype.first=function(){return 1===this.page||(this.page=1),this.page},t.prototype.last=function(){return this.page===this.numberOfPages||(this.page=this.numberOfPages),this.page},t.prototype.refresh=function(){var e,t;this.filterData=this.isEditing?this.editData.slice():this.source.slice();try{for(var n=ne(this._sort.reverse()),o=n.next();!o.done;o=n.next()){var a=o.value;this.sortOn(a.field,a.reverse)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}for(var i in this._filter)i&&this.filterOn(i,this._filter[i]);if(this.page>=0){var r=(this.page-1)*this.pageSize,s=r+this.pageSize,l=this.filterData.slice(r,s);this.onDataChange(new yr(yr.CHANGE,l))}else this.onDataChange(new yr(yr.CHANGE,this.filterData))},t}(br);(vr=e.NovoTableMode||(e.NovoTableMode={}))[vr.VIEW=1]="VIEW",vr[vr.EDIT=2]="EDIT";var Sr=function(){function o(o,a,i){this.labels=o,this.formUtils=a,this.builder=i,this.config={},this.columns=[],this.skipSortAndFilterClear=!1,this.mode=e.NovoTableMode.VIEW,this.editable=!1,this.rowIdentifier="id",this.name="table",this.onRowClick=new t.EventEmitter,this.onRowSelect=new t.EventEmitter,this.onTableChange=new t.EventEmitter,this._rows=[],this.selected=[],this.activeId=0,this.master=!1,this.expandAll=!1,this.indeterminate=!1,this.lastPage=0,this.selectedPageCount=0,this.showSelectAllMessage=!1,this.pagedData=[],this.toggledDropdownMap={},this.NovoTableMode=e.NovoTableMode,this.tableForm=new n.FormGroup({}),this.footers=[],this.grossFlagToAvoidTheTableFromBeingUglyWhenHidingTheToast=!1,this.loading=!1,wt("[Deprecated]: The table is deprecated. Please migrate to novo-data-tables!")}return Object.defineProperty(o.prototype,"rows",{get:function(){return this._rows},set:function(e){this.dataProvider=e,e&&e.length>0&&this.setupColumnDefaults(),this.skipSortAndFilterClear||this.clearAllSortAndFilters()},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"dataProvider",{get:function(){return this._dataProvider},set:function(t){var n=this;this._dataProvider=Array.isArray(t)?new Cr(t):t,this._dataProvider.dataChange.pipe(g.debounceTime(100)).subscribe((function(t){switch(t.type){case yr.CHANGE:n._rows=t.data,n.tableForm=n.builder.group({rows:n.builder.array([])}),"checkbox"===n.config.rowSelectionStyle&&(n.pagedData=t.data,n.pageSelected=n.pagedData.filter((function(e){return e._selected})),n.rowSelectHandler());var o=[],a={};n.config.footers&&(n.config.footers.forEach((function(e){o.push.apply(o,ae(e.columns))})),o=o.filter((function(e,t,n){return n.indexOf(e)===t})));var i=n.tableForm.controls.rows;n._rows.forEach((function(e,t){var r=[];e.controls={},e._editing={},e._expanded=n.config.expandAll,e.rowId=n._rows.length,n.columns.forEach((function(t){var n=t.editorConfig?ea.create(t.editorType,t.editorConfig):new Wo({key:t.name});e.controls[t.name]=n,r.push(n)})),n.formUtils.setInitialValues(r,e,!1),i.push(n.formUtils.toFormGroup(r)),0!==o.length&&o.forEach((function(t){R.isBlank(a[t])&&(a[t]=0),a[t]+=e[t]}))})),n.mode===e.NovoTableMode.EDIT&&n.setTableEdit(),n.config.footers&&(n.footers=[],n.config.footers.forEach((function(e,t){var o={};o[e.labelColumn]=e.label,e.columns.forEach((function(t){"AVG"===e.method&&0!==n._rows.length?o[t]=a[t]/n._rows.length:o[t]=a[t]})),n.footers.push(o)})))}})),this.config.paging?(this._dataProvider.page=this.config.paging.current,this._dataProvider.pageSize=this.config.paging.itemsPerPage):(this._dataProvider.page=1,this._dataProvider.pageSize=500),t&&t.length>0&&this.setupColumnDefaults(),this._dataProvider.refresh()},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"editing",{get:function(){return this.mode===e.NovoTableMode.EDIT},enumerable:!1,configurable:!0}),Object.defineProperty(o.prototype,"formValue",{get:function(){return this.tableForm.value},enumerable:!1,configurable:!0}),o.prototype.onDropdownToggled=function(e,t){this.toggledDropdownMap[t]=e},o.prototype.focusInput=function(){this.filterInputs&&this.filterInputs.length&&this.filterInputs.forEach((function(e){e.nativeElement&&setTimeout((function(){return e.nativeElement.focus()}),0)}))},o.prototype.onPageChange=function(e){},o.prototype.getOptionDataAutomationId=function(e){return R.isBlank(e.value)?e:e.value},o.prototype.setupColumnDefaults=function(){var e=this;this.columns.forEach((function(t){if(t&&t.type)switch(t.type){case"date":t.options=t.options||e.getDefaultOptions(t)}}))},o.prototype.ngDoCheck=function(){this.config.paging&&this.config.paging.current!==this.lastPage&&(this.rowSelectHandler(),this.showSelectAllMessage=!1),this.lastPage=this.config.paging?this.config.paging.current:1},o.prototype.getPageStart=function(){return this.config.paging?(this.dataProvider.page-1)*this.dataProvider.pageSize:0},o.prototype.getPageEnd=function(){return this.config.paging&&this.dataProvider.pageSize>-1?this.getPageStart()+this.dataProvider.pageSize:this.rows.length},o.prototype.getRowControlForm=function(e){return this.tableForm.controls.rows.controls[e]},o.prototype.onFilterClick=function(e,t){!t.range||e.calendarShow?(Array.isArray(e.filter)&&e.multiple?~e.filter.indexOf(t)?(e.filter.splice(e.filter.indexOf(t),1),t.range&&(e.calenderShow=!1),0===e.filter.length&&(e.filter=null)):e.filter.push(t):e.multiple?(e.filter=new Array,e.filter.push(R.isBlank(t.value)?t:t.value)):e.filter=R.isBlank(t.value)?t:t.value,this.onFilterChange()):e.calenderShow=!0},o.prototype.onFilterClear=function(e){var t=this;setTimeout((function(){e.filter=null,e.freetextFilter=null,t.onFilterChange(),e.originalOptions&&(e.options=e.originalOptions)}))},o.prototype.clearAllSortAndFilters=function(){this.config.filtering&&this.columns.forEach((function(e){e.filter=null,e.sort=null}))},o.prototype.onFilterChange=function(e){var t,n;if(this.config.filtering){var o=this.columns.filter((function(e){return!R.isEmpty(e.filter)}));if(o.length){var a={},i=function(e){if(R.isFunction(e.match))a[e.name]=function(t,n){return e.match(n,e.filter)};else if(e.preFilter&&R.isFunction(e.preFilter))a=Object.assign({},a,e.preFilter(r.escapeCharacters(e.filter)));else if(Array.isArray(e.filter)){var t=e.filter;(t[0].value||t[0].label)&&(t=e.filter.map((function(e){return e.value}))),a[e.name]={any:t}}else e.type&&"date"===e.type?e.filter.startDate&&e.filter.endDate?a[e.name]={min:p.startOfDay(e.filter.startDate),max:p.startOfDay(p.addDays(p.startOfDay(e.filter.endDate),1))}:a[e.name]={min:e.filter.min?p.addDays(p.startOfToday(),e.filter.min):p.startOfToday(),max:e.filter.max?p.addDays(p.startOfTomorrow(),e.filter.max):p.startOfTomorrow()}:a[e.name]=e.filter},r=this;try{for(var s=ne(o),l=s.next();!l.done;l=s.next()){i(l.value)}}catch(e){t={error:e}}finally{try{l&&!l.done&&(n=s.return)&&n.call(s)}finally{if(t)throw t.error}}R.isFunction(this.config.filtering)?this.config.filtering(a):this._dataProvider.filter=a}else this._dataProvider.filter={};this.fireTableChangeEvent(),this.config.paging&&(this.config.paging.current=1),"checkbox"===this.config.rowSelectionStyle&&this.selectAll(!1)}},o.prototype.escapeCharacters=function(e){return"string"==typeof e?e.replace(/'/g,"''"):e},o.prototype.isFilterActive=function(e,t){var n=!1;return!e||R.isBlank(e.filter)||R.isBlank(t)||(n=Array.isArray(e.filter)?"string"!=typeof t?e.filter.some((function(e){return e.label===t.label})):e.filter.includes(t):typeof e.filter==typeof t?e.filter===t:e.filter===t.value),n},o.prototype.onSortChange=function(e){var t,n,o=this;this.currentSortColumn=e;var a=this.columns.filter((function(e){return e.sort&&e!==o.currentSortColumn}));try{for(var i=ne(a),r=i.next();!r.done;r=i.next()){r.value.sort=null}}catch(e){t={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(t)throw t.error}}e&&(R.isFunction(this.config.sorting)?this.config.sorting():R.isFunction(e.preSort)?this._dataProvider.sort=[].concat(e.preSort(e)):this._dataProvider.sort=[{field:e.compare||e.name,reverse:"desc"===e.sort}]),this.config.paging&&(this.config.paging.current=1),"checkbox"===this.config.rowSelectionStyle&&this.selectAll(!1)},o.prototype.fireTableChangeEvent=function(){var e={},t=this.columns.filter((function(e){return e.filter&&e.filter.length}));e.filter=!!t.length&&t,e.sort=!!this.currentSortColumn&&this.currentSortColumn,e.rows=this.rows,this.onTableChange.emit(e)},o.prototype.findColumnIndex=function(e){for(var t=0;t<this.columns.length;t+=1)if(this.columns[t].name===e)return t;return null},o.prototype.onOrderChange=function(e){var t=this.findColumnIndex(e.first.name),n=this.findColumnIndex(e.second.name);this.columns.splice(n,0,this.columns.splice(t,1)[0]),this.onSortChange(this.currentSortColumn)},o.prototype.expandAllOnPage=function(e){var t,n;this.config.expandAll=!e;try{for(var o=ne(this.dataProvider.list),a=o.next();!a.done;a=o.next()){a.value._expanded=this.config.expandAll}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}},o.prototype.selectPage=function(e){var t,n;if(this.master){this.indeterminate=!1;try{for(var o=ne(this.pagedData),a=o.next();!a.done;a=o.next()){a.value._selected=this.master}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}this.selected=this.dataProvider.list.filter((function(e){return e._selected})),this.pageSelected=this.pagedData.filter((function(e){return e._selected})),this.emitSelected(this.selected),this.selectedPageCount++,this.showSelectAllMessage=1===this.selectedPageCount&&this.selected.length!==this.dataProvider.total}else this.selectAll(!1),this.selectedPageCount=this.selectedPageCount>0?this.selectedPageCount-1:0,this.showSelectAllMessage=!1},o.prototype.selectAll=function(e){var t,n;this.master=e,this.indeterminate=!1;try{for(var o=ne(this.dataProvider.list),a=o.next();!a.done;a=o.next()){a.value._selected=e}}catch(e){t={error:e}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(t)throw t.error}}this.selected=e?this.dataProvider.list:[],this.showSelectAllMessage=!1,this.selectedPageCount=this.selectedPageCount>0?this.selectedPageCount-1:0,this.rowSelectHandler()},o.prototype.rowSelectHandler=function(e){this.pageSelected=this.pagedData.filter((function(e){return e._selected})),this.selected=this.dataProvider.list.filter((function(e){return e._selected})),0===this.pageSelected.length?(this.master=!1,this.indeterminate=!1):this.pageSelected.length===this.pagedData.length?(this.master=!0,this.indeterminate=!1):(this.master=!1,this.indeterminate=!0,this.showSelectAllMessage=!1,this.selectedPageCount=this.selectedPageCount>0?this.selectedPageCount-1:0),this.emitSelected(this.selected)},o.prototype.emitSelected=function(e){this.onRowSelect.emit({length:e.length,selected:e})},o.prototype.rowClickHandler=function(e){this.config.rowSelect&&(this.activeId=e.id||0,this.onRowClick.emit(e))},o.prototype.getDefaultOptions=function(e){var t=[{label:this.labels.past1Day,min:-1,max:0},{label:this.labels.past7Days,min:-7,max:0},{label:this.labels.past30Days,min:-30,max:0},{label:this.labels.past90Days,min:-90,max:0},{label:this.labels.past1Year,min:-366,max:0},{label:this.labels.next1Day,min:0,max:1},{label:this.labels.next7Days,min:0,max:7},{label:this.labels.next30Days,min:0,max:30},{label:this.labels.next90Days,min:0,max:90},{label:this.labels.next1Year,min:0,max:366}];return e&&e.range&&t.push({label:this.labels.customDateRange,range:!0}),t},o.prototype.onCalenderSelect=function(e,t){var n=this;setTimeout((function(){t.startDate&&t.endDate&&n.onFilterChange()}),10)},o.prototype.onFilterKeywords=function(e){if(e&&e.filtering&&e.filtering.freetextFilter){var t=e.filtering.freetextFilter.toLowerCase();e.filtering.originalOptions||(e.filtering.originalOptions=e.filtering.options);var n=e.filtering.originalOptions.filter((function(e){var n=e&&e.label?e.label:e;return(n=n.toLowerCase()?n.toLowerCase():n)===t||!(!~n.indexOf(t)&&!~n.indexOf(t))}));e.filtering.options=n,e.filtering.filter=e.filtering.freetextFilter}else e.filtering.options=e.filtering.originalOptions;this.onFilterChange()},o.prototype.setTableEdit=function(t,n){var o=this;this.mode=e.NovoTableMode.EDIT,this._dataProvider.edit(),this._rows.forEach((function(e,a){e._editing=e._editing||{},o.columns.forEach((function(o,i){o.viewOnly?e._editing[o.name]=!1:R.isEmpty(t)&&R.isEmpty(n)||!R.isEmpty(t)&&a===Number(t)&&R.isEmpty(n)?e._editing[o.name]=!0:R.isEmpty(t)||R.isEmpty(n)||a!==Number(t)||i!==Number(n)?e._editing[o.name]=!1:e._editing[o.name]=!0}))}))},o.prototype.leaveEditMode=function(t){var n=this;this.mode=e.NovoTableMode.VIEW,this._rows.forEach((function(e){e._editing=e._editing||{},n.columns.forEach((function(t){e._editing[t.name]=!1}))})),t?this._dataProvider.undo():this._dataProvider.commit(),this.hideToastMessage()},o.prototype.addEditableRow=function(e){void 0===e&&(e={});var t=this.tableForm.controls.rows,n={},o=[];n.controls={},n._editing={},n.rowId=this._rows.length+1,this.columns.forEach((function(e){var t=e.editorConfig?ea.create(e.editorType,e.editorConfig):new Wo({key:e.name});t.value=null,n.controls[e.name]=t,n._editing[e.name]=!e.viewOnly,o.push(t)})),this.formUtils.setInitialValues(o,e,!1),t.push(this.formUtils.toFormGroup(o)),this._rows.push(n)},o.prototype.validateAndGetUpdatedData=function(){var e=this;if(this.tableForm&&this.tableForm.controls&&this.tableForm.controls.rows){var t=[],n=[];return this.tableForm.controls.rows.controls.forEach((function(o,a){var i=null,r=null;Object.keys(o.controls).forEach((function(t){var n=o.controls[t];n&&n.dirty&&!n.errors?(i||(i={},e._rows[a].id&&(i.id=e._rows[a].id)),i[t]=e.tableForm.value.rows[a][t],e._rows[a][t]=i[t]):n&&n.errors&&(r||(r={}),r[t]=n.errors,n.markAsDirty(),n.markAsTouched())})),i&&t.push(i),r&&n.push({errors:r,row:e._rows[a],index:a})})),0===n.length?{changed:t}:{errors:n}}},o.prototype.cancelEditing=function(){this.leaveEditMode(!0)},o.prototype.saveChanges=function(){this.leaveEditMode(!1)},o.prototype.displayToastMessage=function(e,t){var n=this;this.loading=!1,this.toast=e,t&&setTimeout((function(){return n.hideToastMessage()}),t)},o.prototype.hideToastMessage=function(){var e=this;this.toast=null,this.grossFlagToAvoidTheTableFromBeingUglyWhenHidingTheToast=!0,setTimeout((function(){e.grossFlagToAvoidTheTableFromBeingUglyWhenHidingTheToast=!1}))},o.prototype.toggleLoading=function(e){this.loading=e},o.prototype.isColumnHidden=function(e){return this.editing?!!e.hideColumnOnEdit:!!e.hideColumnOnView},o}();Sr.decorators=[{type:t.Component,args:[{selector:"novo-table",host:{"[attr.theme]":"theme","[class.editing]":"mode === NovoTableMode.EDIT","[class.novo-table-loading]":"loading"},template:'\n <header *ngIf="columns.length">\n <ng-content select="novo-table-header"></ng-content>\n <div class="header-actions">\n <novo-pagination *ngIf="config.paging && !(dataProvider.isEmpty() && !dataProvider.isFiltered())"\n [rowOptions]="config.paging.rowOptions"\n [disablePageSelection]="config.paging.disablePageSelection"\n [(page)]="dataProvider.page"\n [(itemsPerPage)]="dataProvider.pageSize"\n [totalItems]="dataProvider.total"\n (onPageChange)="onPageChange($event)">\n </novo-pagination>\n <ng-content select="novo-table-actions"></ng-content>\n </div>\n </header>\n <div class="novo-table-loading-overlay" *ngIf="loading || dataProvider.isLoading()">\n <novo-loading></novo-loading>\n </div>\n <novo-toast *ngIf="toast" [theme]="toast?.theme" [icon]="toast?.icon" [message]="toast?.message"></novo-toast>\n <div class="table-container" *ngIf="!grossFlagToAvoidTheTableFromBeingUglyWhenHidingTheToast">\n <novo-form hideHeader="true" [form]="tableForm">\n <table class="table table-striped dataTable" [class.table-details]="config.hasDetails" role="grid">\n \x3c!-- skipSortAndFilterClear is a hack right now, will be removed once Canvas is refactored --\x3e\n <thead *ngIf="columns.length && (!dataProvider.isEmpty() || dataProvider.isFiltered() || skipSortAndFilterClear || editing)">\n <tr role="row">\n \x3c!-- DETAILS --\x3e\n <th class="row-actions" *ngIf="config.hasDetails">\n <button theme="icon" icon="next" (click)="expandAllOnPage(config.expandAll)" *ngIf="!config.expandAll" data-automation-id="expand-all"></button>\n <button theme="icon" icon="sort-desc" (click)="expandAllOnPage(config.expandAll)" *ngIf="config.expandAll" data-automation-id="collapse-all"></button>\n </th>\n \x3c!-- CHECKBOX --\x3e\n <th class="row-actions checkbox mass-action" *ngIf="config.rowSelectionStyle === \'checkbox\'">\n <novo-checkbox [(ngModel)]="master" [indeterminate]="pageSelected.length > 0 && pageSelected.length < pagedData.length" (ngModelChange)="selectPage($event)" data-automation-id="select-all-checkbox" [tooltip]="master ? labels.deselectAll : labels.selectAllOnPage" tooltipPosition="right"></novo-checkbox>\n </th>\n \x3c!-- TABLE HEADERS --\x3e\n <th *ngFor="let column of columns" [ngClass]="{ \'mass-action\': config?.rowSelectionStyle === \'checkbox\', \'actions\': column?.actions?.items?.length > 0, \'preview\': column?.name === \'preview\' }" [novoThOrderable]="column" (onOrderChange)="onOrderChange($event)" [hidden]="isColumnHidden(column)">\n <div class="th-group" [attr.data-automation-id]="column.id || column.name" *ngIf="!column.hideHeader">\n \x3c!-- LABEL & SORT ARROWS --\x3e\n <div class="th-title" [ngClass]="(config.sorting !== false && column.sorting !== false) ? \'sortable\' : \'\'" [novoThSortable]="config" [column]="column" (onSortChange)="onSortChange($event)">\n <label>{{ column.title || column.label }}</label>\n <div class="table-sort-icons" tooltipPosition="bottom" [tooltip]="labels.sort" [ngClass]="column.sort || \'\'" *ngIf="config.sorting !== false && column.sorting !== false">\n <i class="bhi-arrow-up"></i>\n <i class="bhi-arrow-down"></i>\n </div>\n </div>\n \x3c!-- FILTER DROP-DOWN --\x3e\n <novo-dropdown side="right" *ngIf="config.filtering !== false && column.filtering !== false" class="column-filters" (toggled)="onDropdownToggled($event, column.name)" parentScrollSelector=".table-container" containerClass="table-dropdown">\n <button type="button" theme="icon" icon="filter" tooltipPosition="bottom" [tooltip]="labels.filters" [class.filtered]="column.filter || column.filter===false" (click)="focusInput()"></button>\n \x3c!-- FILTER OPTIONS LIST --\x3e\n <list *ngIf="(column?.options?.length || column?.originalOptions?.length) && column?.type !== \'date\' && toggledDropdownMap[column.name]">\n <item class="filter-search">\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button theme="dialogue" color="negative" icon="times" (click)="onFilterClear(column)" *ngIf="column.filter || column.filter===false">{{ labels.clear }}</button>\n </div>\n <input type="text" *ngIf="!!column.allowCustomTextOption" [attr.id]="column.name + \'-input\'" [novoTableFilter]="column" (onFilterChange)="onFilterKeywords($event)" [(ngModel)]="column.freetextFilter" keepFilterFocused #filterInput/>\n </item>\n <item [ngClass]="{ active: isFilterActive(column, option) }" *ngFor="let option of column.options" (click)="onFilterClick(column, option)" [attr.data-automation-id]="getOptionDataAutomationId(option)">\n <span>{{ option?.label || option }}</span> <i class="bhi-check" *ngIf="isFilterActive(column, option)"></i>\n </item>\n </list>\n \x3c!-- FILTER SEARCH INPUT --\x3e\n <list *ngIf="!(column?.options?.length || column?.originalOptions?.length) && toggledDropdownMap[column.name]">\n <item class="filter-search">\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button theme="dialogue" color="negative" icon="times" (click)="onFilterClear(column)" *ngIf="column.filter">{{ labels.clear }}</button>\n </div>\n <input type="text" [attr.id]="column.name + \'-input\'" [novoTableFilter]="column" (onFilterChange)="onFilterChange($event)" [(ngModel)]="column.filter" keepFilterFocused #filterInput/>\n </item>\n </list>\n \x3c!-- FILTER DATE OPTIONS --\x3e\n <list *ngIf="column?.options?.length && column?.type === \'date\' && toggledDropdownMap[column.name]">\n <item class="filter-search" *ngIf="!column.calenderShow">\n <div class="header">\n <span>{{ labels.filters }}</span>\n <button theme="dialogue" color="negative" icon="times" (click)="onFilterClear(column)" *ngIf="column.filter">{{ labels.clear }}</button>\n </div>\n </item>\n <item [ngClass]="{ active: isFilterActive(column, option) }" *ngFor="let option of column.options" (click)="onFilterClick(column, option)" [keepOpen]="option.range" [hidden]="column.calenderShow" [attr.data-automation-id]="(option?.label || option)">\n {{ option?.label || option }} <i class="bhi-check" *ngIf="isFilterActive(column, option)"></i>\n </item>\n <div class="calendar-container" [hidden]="!column.calenderShow">\n <div (click)="column.calenderShow=false"><i class="bhi-previous"></i>{{ labels.backToPresetFilters }}</div>\n <novo-date-picker #rangePicker (onSelect)="onCalenderSelect(column, $event)" [(ngModel)]="column.filter" range="true"></novo-date-picker>\n </div>\n </list>\n </novo-dropdown>\n </div>\n </th>\n </tr>\n </thead>\n \x3c!-- TABLE DATA --\x3e\n <tbody *ngIf="!dataProvider.isEmpty() || editing">\n <tr class="table-selection-row" *ngIf="config.rowSelectionStyle === \'checkbox\' && showSelectAllMessage && config.selectAllEnabled" data-automation-id="table-selection-row">\n <td colspan="100%">\n {{labels.selectedRecords(selected.length)}} <a (click)="selectAll(true)" data-automation-id="all-matching-records">{{labels.totalRecords(dataProvider.total)}}</a>\n </td>\n </tr>\n <ng-template ngFor let-row="$implicit" let-i="index" [ngForOf]="rows">\n <tr class="table-row" [ngClass]="row.customClass || \'\'" [id]="name + \'-\' + row[rowIdentifier]" [attr.data-automation-id]="row.id" (click)="rowClickHandler(row)" [class.active]="row.id === activeId">\n <td class="row-actions" *ngIf="config.hasDetails">\n <button theme="icon" icon="next" (click)="row._expanded=!row._expanded" *ngIf="!row._expanded"></button>\n <button theme="icon" icon="sort-desc" (click)="row._expanded=!row._expanded" *ngIf="row._expanded"></button>\n </td>\n <td class="row-actions checkbox" *ngIf="config.rowSelectionStyle === \'checkbox\'">\n <novo-checkbox [(ngModel)]="row._selected" (ngModelChange)="rowSelectHandler(row)" data-automation-id="select-row-checkbox"></novo-checkbox>\n </td>\n <td *ngFor="let column of columns" [attr.data-automation-id]="column.id || column.name" [class.novo-form-row]="editable" [hidden]="isColumnHidden(column)">\n <novo-table-cell *ngIf="row._editing && !row._editing[column.name]" [hasEditor]="editable" [column]="column" [row]="row" [form]="getRowControlForm(i)"></novo-table-cell>\n <novo-control *ngIf="row._editing && row._editing[column.name]" condensed="true" [form]="getRowControlForm(i)" [control]="row.controls[column.name]"></novo-control>\n </td>\n </tr>\n <tr class="details-row" *ngIf="config.hasDetails" [hidden]="!row._expanded" [attr.data-automation-id]="\'details-row-\'+row.id">\n <td class="row-actions"></td>\n <td [attr.colspan]="config.rowSelectionStyle === \'checkbox\' ? (columns.length + 1) : columns.length">\n <novo-row-details [data]="row" [renderer]="config.detailsRenderer"></novo-row-details>\n </td>\n </tr>\n </ng-template>\n </tbody>\n \x3c!-- NO TABLE DATA PLACEHOLDER --\x3e\n <tbody class="table-message" *ngIf="dataProvider.isEmpty() && !dataProvider.isFiltered() && !editing" data-automation-id="empty-table">\n <tr>\n <td colspan="100%">\n <div #emptymessage><ng-content select="[table-empty-message]"></ng-content></div>\n <div class="table-empty-message" *ngIf="emptymessage.childNodes.length == 0">\n <h4><i class="bhi-search-question"></i> {{ labels.emptyTableMessage }}</h4>\n </div>\n </td>\n </tr>\n </tbody>\n \x3c!-- NO MATCHING RECORDS --\x3e\n <tbody class="table-message" *ngIf="dataProvider.isEmpty() && dataProvider.isFiltered()" data-automation-id="empty-table">\n <tr>\n <td colspan="100%">\n <div #nomatchmessage><ng-content select="[table-no-matching-records-message]"></ng-content></div>\n <div class="no-matching-records" *ngIf="nomatchmessage.childNodes.length == 0">\n <h4><i class="bhi-search-question"></i> {{ labels.noMatchingRecordsMessage }}</h4>\n </div>\n </td>\n </tr>\n </tbody>\n \x3c!-- TABLE DATA ERROR PLACEHOLDER --\x3e\n <tbody class="table-message" *ngIf="dataProvider.hasErrors()" data-automation-id="table-errors">\n <tr>\n <td colspan="100%">\n <div #errormessage><ng-content select="[table-error-message]"></ng-content></div>\n <div class="table-error-message" *ngIf="errormessage.childNodes.length == 0">\n <h4><i class="bhi-caution"></i> {{ labels.erroredTableMessage }}</h4>\n </div>\n </td>\n </tr>\n </tbody>\n <tfoot *ngIf="!config.footers" [ngClass]="dataProvider.length % 2 == 0 ? \'odd\' : \'even\'">\n <tr>\n <td colspan="100%">\n <ng-content select="novo-table-footer"></ng-content>\n </td>\n </tr>\n </tfoot>\n <tfoot *ngFor="let footer of footers;let i = index;" class="novo-table-total-footer">\n <tr>\n <td *ngFor="let column of columns" [attr.data-automation-id]="(column.id || column.name) + \'-total-\' + i">{{ footer[column.name] }}</td>\n </tr>\n </tfoot>\n </table>\n </novo-form>\n </div>\n '}]}],Sr.ctorParameters=function(){return[{type:Ne},{type:ia},{type:n.FormBuilder}]},Sr.propDecorators={filterInputs:[{type:t.ViewChildren,args:["filterInput",{read:t.ElementRef}]}],config:[{type:t.Input}],columns:[{type:t.Input}],theme:[{type:t.Input}],skipSortAndFilterClear:[{type:t.Input}],mode:[{type:t.Input}],editable:[{type:t.Input}],rowIdentifier:[{type:t.Input}],name:[{type:t.Input}],onRowClick:[{type:t.Output}],onRowSelect:[{type:t.Output}],onTableChange:[{type:t.Output}],rows:[{type:t.Input}],dataProvider:[{type:t.Input}]};var kr=function(){};kr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[Zn],exports:[Zn]}]}];var Ir=function(){};Ir.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule,n.FormsModule,Ua,fr,kr,_,U,an,ze,Vn,An,S.TextMaskModule],declarations:[Sr],exports:[Sr]}]}];var Er=function(){function e(){this.credentials=[],this.change=new t.EventEmitter}return e.prototype.grant=function(e){var t,n,o,a,i=[];if(e instanceof Array)try{for(var r=ne(e),s=r.next();!s.done;s=r.next()){var l=s.value;i.push(l.replace(/\s/gi,""))}}catch(e){t={error:e}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(t)throw t.error}}else if("object"==typeof e)for(var c in e)if(e[c]instanceof Array)try{for(var d=(o=void 0,ne(e[c])),p=d.next();!p.done;p=d.next()){l=p.value;i.push(c+"."+l)}}catch(e){o={error:e}}finally{try{p&&!p.done&&(a=d.return)&&a.call(d)}finally{if(o)throw o.error}}this.credentials=[].concat(this.credentials,i),this.change.emit(this.credentials)},e.prototype.has=function(e){return this.credentials.indexOf(e)>-1},e.prototype.revoke=function(e){var t=this.credentials.indexOf(e);this.credentials.splice(t,1),this.change.emit(this.credentials)},e.prototype.clear=function(){this.credentials=[],this.change.emit(this.credentials)},e.prototype.subscribe=function(e){this.change.subscribe(e)},e.prototype.checkRoutes=function(e,t){var n,o,a=this,i=[];try{for(var r=ne(e),s=r.next();!s.done;s=r.next()){var l=s.value;l.entities&&~l.entities.indexOf(t.entityType)&&(l.permissions instanceof Function?l.permissions(t,this)&&i.push(l):l.permissions&&l.permissions.length?l.permissions.every((function(e){return a.has(e)}))&&i.push(l):i.push(l))}}catch(e){n={error:e}}finally{try{s&&!s.done&&(o=r.return)&&o.call(r)}finally{if(n)throw n.error}}return i},e}();Er.decorators=[{type:t.Injectable}];var wr=function(){function e(e,t,n){this.templateRef=e,this.viewContainer=t,this.security=n,this.permissions="",this.isDisplayed=!1,this.security.subscribe(this.check.bind(this))}return Object.defineProperty(e.prototype,"bhUnless",{set:function(e){this.permissions=e||"",this.check()},enumerable:!1,configurable:!0}),e.prototype.check=function(){var e,t,n=this,o=!1;if(~this.permissions.indexOf("||")){var a=this.permissions.split("||");try{for(var i=ne(a),r=i.next();!r.done;r=i.next()){var s=r.value;this.security.has(s.trim())&&(o=!0)}}catch(t){e={error:t}}finally{try{r&&!r.done&&(t=i.return)&&t.call(i)}finally{if(e)throw e.error}}}else o=this.permissions.split("&&").every((function(e){return n.security.has(e.trim())}));o?this.isDisplayed||(this.isDisplayed=!0,this.viewContainer.createEmbeddedView(this.templateRef)):(this.isDisplayed=!1,this.viewContainer.clear())},e}();wr.decorators=[{type:t.Directive,args:[{selector:"[bhUnless]"}]}],wr.ctorParameters=function(){return[{type:t.TemplateRef},{type:t.ViewContainerRef},{type:Er}]},wr.propDecorators={bhUnless:[{type:t.Input}]};var Tr=function(){};Tr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[wr],exports:[wr]}]}];var Or=function(){function e(){this.baseEntity="",this.ENTITY_SHORT_NAMES={Lead:"lead",ClientContact:"contact",ClientContact1:"contact",ClientContact2:"contact",ClientContact3:"contact",ClientContact4:"contact",ClientContact5:"contact",ClientCorporation:"company",ClientCorporation1:"company",ClientCorporation2:"company",ClientCorporation3:"company",ClientCorporation4:"company",ClientCorporation5:"company",Opportunity:"opportunity",Task:"task",Note:"note",CorporateUser:"user",Candidate:"candidate",JobOrder:"job",JobOrder1:"job",JobOrder2:"job",JobOrder3:"job",JobOrder4:"job",JobOrder5:"job",Placement:"placement",JobSubmission:"submission",CandidateReference:"references",DistributionList:"distributionList",Appointment:"appointment"}}return e.prototype.ngOnInit=function(){var e,t;this.metaDisplay=R.deepClone(this.meta),this.metaDisplay.type="TO_ONE",this.baseEntity=this.meta.associatedEntity.entity;try{for(var n=ne(this.data.data),o=n.next();!o.done;o=n.next()){var a=o.value;a.isLinkable=this.isLinkable(a),a.class=this.getClass(a)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(e)throw e.error}}},e.prototype.getClass=function(e){return this.ENTITY_SHORT_NAMES[e.personSubtype]},e.prototype.openLink=function(e){e.openLink(e)},e.prototype.isLinkable=function(e){return e.openLink},e}();Or.decorators=[{type:t.Component,args:[{selector:"novo-entity-list",changeDetection:t.ChangeDetectionStrategy.OnPush,template:'\n <div *ngFor="let entity of data.data" class="entity">\n <a *ngIf="entity.isLinkable" (click)="openLink(entity)">\n <i class="bhi-circle {{ entity.class }}"></i>{{ entity | render : metaDisplay }}\n </a>\n <span *ngIf="!entity.isLinkable && entity.personSubtype">\n <i class="bhi-circle {{ entity.class }}"></i>{{ entity | render : metaDisplay }}\n </span>\n <span *ngIf="!entity.isLinkable && !entity.personSubtype">\n {{ entity | render : metaDisplay }}\n </span>\n </div>\n '}]}],Or.ctorParameters=function(){return[]},Or.propDecorators={data:[{type:t.Input}],meta:[{type:t.Input}]};var Pr,Ar,Dr=function(){function e(e,t,n){this.changeDetector=e,this.sanitizationService=t,this.labels=n}return e.prototype.equals=function(e,t){if(e===t)return!0;if(null===e||null===t)return!1;if(e!=e&&t!=t)return!0;var n,o,a,i=typeof e;if(i===typeof t&&"object"===i){if(!Array.isArray(e)){if(Array.isArray(t))return!1;for(o in a=Object.create(null),e)if(e[o]){if(!this.equals(e[o],t[o]))return!1;a[o]=!0}for(o in t)if(!(o in a)&&void 0!==t[o])return!1;return!0}if(!Array.isArray(t))return!1;if((n=e.length)===t.length){for(o=0;o<n;o++)if(!this.equals(e[o],t[o]))return!1;return!0}}return!1},e.prototype.getEntityLabel=function(e,t){switch(t){case"CorporateUser":case"ClientContact":case"ClientContact1":case"ClientContact2":case"ClientContact3":case"ClientContact4":case"ClientContact5":case"Lead":case"Candidate":case"Person":return((e.firstName||"")+" "+(e.lastName||"")).trim();case"ClientCorporation":case"ClientCorporation1":case"ClientCorporation2":case"ClientCorporation3":case"ClientCorporation4":case"ClientCorporation5":return(""+(e.name||"")).trim();case"JobOrder":case"JobOrder1":case"JobOrder2":case"JobOrder3":case"JobOrder4":case"JobOrder5":case"Opportunity":return(""+(e.title||"")).trim();case"Placement":var n="";return e.candidate&&(n=(e.candidate.firstName+" "+e.candidate.lastName).trim()),e.jobOrder&&(n=(n+" - "+e.jobOrder.title).trim()),n;default:return""}},e.prototype.render=function(e,t){var n=null,o=e;if(e&&e._subtype&&!t)return this.getEntityLabel(e,e._subtype);if(null==e||!t)return o;if(t.formatter&&"function"==typeof t.formatter)return t.formatter(e,t);n="TO_MANY"===t.type?"ToMany":"TO_ONE"===t.type?t.associatedEntity.entity:"DATETIME"===t.dataSpecialization?"DateTime":"YEAR"===t.dataSpecialization?"Year":"DATE"===t.dataSpecialization&&"Date"===t.dataType?"Date":"Timestamp"===t.dataType?"Timestamp":["mobile","phone","phone1","phone2","phone3","workPhone"].indexOf(t.name)>-1?"Phone":t.name&&"email"===t.name.substring(0,5)?"Email":t.name&&"address.countryID"===t.name||"Country"===t.optionsType?"Country":"SkillText"===t.optionsType?"SkillText":t.options||"SELECT"===t.inputType||"CHECKBOX"===t.inputType?"Options":["MONEY","PERCENTAGE","HTML","SSN"].indexOf(t.dataSpecialization)>-1?this.capitalize(t.dataSpecialization.toLowerCase()):t.dataType||"default";try{switch(n){case"Address":case"Address1":case"AddressWithoutCountry":case"SecondaryAddress":case"BillingAddress":var a=gn(Number(e.countryName));o="",(e.address1||e.address2)&&(o+=(e.address1||"")+" "+(e.address2||"")+"<br />\n"),o+=(e.city||"")+" "+(e.state||"")+" "+(e.zip||"")+(e.city||e.state||e.zip?"<br />\n":""),o+=(a?a.name:e.countryName||"")+(a||e.countryName?"<br />\n":""),o=this.sanitizationService.bypassSecurityTrustHtml(o.trim());break;case"DateTime":case"Timestamp":o=this.labels.formatDateShort(e);break;case"Date":o=this.labels.formatDate(new Date(e));break;case"Year":o=new Date(e).getFullYear();break;case"Phone":case"Email":o=e;break;case"Money":o=this.labels.formatCurrency(e);break;case"Percentage":o=this.labels.formatNumber(parseFloat(e).toString(),{style:"percent",minimumFractionDigits:2});break;case"Double":case"BigDecimal":o=this.labels.formatNumber(e,{minimumFractionDigits:this.getNumberDecimalPlaces(e)});break;case"Integer":o=e;break;case"BusinessSector":case"Category":case"Certification":case"ClientCorporation":case"CorporationDepartment":case"DistributionList":case"Skill":case"Tearsheet":case"Specialty":o=e.label||e.name||"";break;case"SkillText":o=Array.isArray(e)?e.join(", "):e;break;case"Lead":case"Candidate":case"ClientContact":case"CorporateUser":case"Person":o=e.label||(e.firstName||"")+" "+(e.lastName||"");break;case"Opportunity":case"JobOrder":o=e.label||e.title||"";break;case"Placement":e.candidate&&(o=(e.candidate.firstName||"")+" "+(e.candidate.lastName||"")),e.jobOrder&&(o=e.candidate?o+" - "+(e.jobOrder.title||""):""+(e.jobOrder.title||""));break;case"JobSubmission":o=e.label||(e.jobOrder?e.jobOrder.title+" - ":"")+" "+(e.candidate?e.candidate.firstName:"")+" "+(e.candidate?e.candidate.lastName:"");break;case"WorkersCompensationRate":o=(e.compensation?e.compensation.code+" - ":"")+" "+(e.compensation?e.compensation.name:"");break;case"Options":o=this.options(e,t.options,t);break;case"ToMany":["Candidate","CorporateUser","Person"].indexOf(t.associatedEntity.entity)>-1?(o=this.concat(e.data,"firstName","lastName"),e.data.length<e.total&&(o=o+", "+this.labels.getToManyPlusMore({quantity:e.total-e.data.length}))):["Category","BusinessSector","Skill","Specialty","ClientCorporation","CorporationDepartment"].indexOf(t.associatedEntity.entity)>-1?(o=this.concat(e.data,"name"),e.data.length<e.total&&(o=o+", "+this.labels.getToManyPlusMore({quantity:e.total-e.data.length}))):o="MailListPushHistoryDetail"===t.associatedEntity.entity?this.concat(e.data,"externalListName"):""+(e.total||"");break;case"Country":var i=gn(Number(e));o=i?i.name:e;break;case"Html":Array.isArray(e)&&(e=e.join(" ")),"string"==typeof o&&(o=this.sanitizationService.bypassSecurityTrustHtml(e.replace(/\<a/gi,'<a target="_blank"')));break;case"CandidateComment":o=e.comments?this.labels.formatDateShort(e.dateLastModified)+" ("+e.name+") - "+e.comments:"";break;default:o=e.trim?e.trim():e}return o}catch(e){return console.error("WARNING: There was a problem rendering the value of the field: "+t.label+". Please check the configuration"),console.error(e),o}},e.prototype.updateValue=function(e,t){this.value=this.render(e,t),this.changeDetector.markForCheck()},e.prototype.transform=function(e,t){return null==e?"":(this.equals(e,this.lastValue)&&this.equals(t,this.lastArgs)||(this.lastValue=e,this.lastArgs=t,this.updateValue(this.lastValue,this.lastArgs)),this.value)},e.prototype.concat=function(e){for(var t,n,o,a,i=[],r=1;r<arguments.length;r++)i[r-1]=arguments[r];var s=[];try{for(var l=ne(e),c=l.next();!c.done;c=l.next()){var d=c.value,p=[];try{for(var u=(o=void 0,ne(i)),m=u.next();!m.done;m=u.next()){var h=m.value;p.push(""+d[h])}}catch(e){o={error:e}}finally{try{m&&!m.done&&(a=u.return)&&a.call(u)}finally{if(o)throw o.error}}s.push(p.join(" "))}}catch(e){t={error:e}}finally{try{c&&!c.done&&(n=l.return)&&n.call(l)}finally{if(t)throw t.error}}return s.join(", ")},e.prototype.options=function(e,t,n){Array.isArray(e)||(e=[e]);try{return e.map((function(e){var n,o;try{for(var a=ne(t),i=a.next();!i.done;i=a.next()){var r=i.value;if(r.value===e)return r.label}}catch(e){n={error:e}}finally{try{i&&!i.done&&(o=a.return)&&o.call(a)}finally{if(n)throw n.error}}return e}))}catch(t){if(!n.optionsType)throw Error(t);return e}},e.prototype.getNumberDecimalPlaces=function(e){var t;e&&(t=((parseFloat(e).toString()||"").split(".")[1]||"").length);return t||1},e.prototype.capitalize=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},e}();Dr.decorators=[{type:t.Pipe,args:[{name:"render",pure:!1}]},{type:t.Injectable}],Dr.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:f.DomSanitizer},{type:Ne}]},(Pr=e.NOVO_VALUE_TYPE||(e.NOVO_VALUE_TYPE={}))[Pr.DEFAULT=0]="DEFAULT",Pr[Pr.ENTITY_LIST=1]="ENTITY_LIST",Pr[Pr.LINK=2]="LINK",Pr[Pr.INTERNAL_LINK=3]="INTERNAL_LINK",(Ar=e.NOVO_VALUE_THEME||(e.NOVO_VALUE_THEME={}))[Ar.DEFAULT=0]="DEFAULT",Ar[Ar.MOBILE=1]="MOBILE";var xr=function(){function t(){this.meta={type:"SCALAR",label:""},this.theme=e.NOVO_VALUE_THEME.DEFAULT,this.NOVO_VALUE_TYPE=e.NOVO_VALUE_TYPE,this.NOVO_VALUE_THEME=e.NOVO_VALUE_THEME,this.customClass=""}return Object.defineProperty(t.prototype,"label",{get:function(){return this.meta.label},set:function(e){this.meta.label=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"type",{get:function(){return this.meta.type},set:function(e){this.meta.type=e},enumerable:!1,configurable:!0}),t.prototype.ngOnInit=function(){R.isEmpty(this.meta)&&(this.meta={label:""})},Object.defineProperty(t.prototype,"isMobile",{get:function(){return this.theme===e.NOVO_VALUE_THEME.MOBILE},enumerable:!1,configurable:!0}),t.prototype.iconClass=function(e){var t="";return e&&e.iconCls?(t="bhi-"+e.iconCls+" actions",e.onIconClick&&(t+=" clickable"),t):t},Object.defineProperty(t.prototype,"isDefault",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"showLabel",{get:function(){return this._type===e.NOVO_VALUE_TYPE.INTERNAL_LINK||this._type===e.NOVO_VALUE_TYPE.LINK||this._type===e.NOVO_VALUE_TYPE.ENTITY_LIST},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"showIcon",{get:function(){return this.meta&&this.meta.icons&&this.meta.icons.length&&!R.isEmpty(this.data)},enumerable:!1,configurable:!0}),t.prototype.onValueClick=function(e){e.onIconClick&&"function"==typeof e.onIconClick&&e.onIconClick(this.data,this.meta)},t.prototype.openLink=function(){this.meta&&this.meta.openLink&&"function"==typeof this.meta.openLink&&this.meta.openLink(this.data,this.meta)},t.prototype.ngOnChanges=function(t){if(this.meta&&this.isLinkField(this.meta,this.data))this._type=e.NOVO_VALUE_TYPE.LINK,new RegExp("^(http|https)://","i").test(this.data)?this.url=this.data:this.url="http://"+this.data;else if(this.isEntityList(this.meta.type))this._type=e.NOVO_VALUE_TYPE.ENTITY_LIST;else if(this.isHTMLField(this.meta))this.customClass=this.meta.customClass?this.meta.customClass:"",this.meta.stripHTML&&this.data&&this.data.replace&&(this.data=this.data.replace(/<(?!style|\/style).+?>/gi,"").trim());else if(this.meta&&this.meta.associatedEntity)switch(this.meta.associatedEntity.entity){case"ClientCorporation":case"ClientContact":case"Candidate":case"Opportunity":case"JobOrder":case"Placement":case"Lead":this._type=e.NOVO_VALUE_TYPE.INTERNAL_LINK}},t.prototype.isLinkField=function(t,n){var o=new RegExp("^(https?://(?:www.|(?!www))[^s.]+.[^s]{2,}|www.[^s]+.[^s]{2,})$","gi"),a=R.isString(n)&&o.exec(n.trim());return["companyURL","clientCorporationCompanyURL"].indexOf(t.name)>-1||!!a||t.type===e.NOVO_VALUE_TYPE.LINK},t.prototype.isEntityList=function(e){return"TO_MANY"===e},t.prototype.isHTMLField=function(e){return"HTML"===e.dataSpecialization||"TEXTAREA"===e.inputType},t}();xr.decorators=[{type:t.Component,args:[{selector:"novo-value",template:'\n <ng-container [ngSwitch]="_type">\n <div class="value-outer" *ngIf="showLabel">\n <label>{{ meta.label }}</label>\n <span class="value">\n <i *ngIf="meta.showEntityIcon" class="bhi-circle {{meta.entityIconClass}}"></i>\n <a *ngSwitchCase="NOVO_VALUE_TYPE.INTERNAL_LINK" (click)="openLink()" [innerHTML]="data | render : meta"></a>\n <a *ngSwitchCase="NOVO_VALUE_TYPE.LINK" class="value" [href]="url" target="_blank" [innerHTML]="data | render : meta"></a>\n </span>\n <novo-entity-list *ngSwitchCase="NOVO_VALUE_TYPE.ENTITY_LIST" [data]=\'data\' [meta]="meta"></novo-entity-list>\n </div>\n <div *ngSwitchDefault class="value-outer" [ngClass]="customClass">\n <label>{{ meta.label }}</label>\n <div *ngIf="isDefault" class="value" [innerHTML]="data | render : meta"></div>\n </div>\n <div class="actions" *ngIf="showIcon">\n <i *ngFor="let icon of meta.icons" [class]="iconClass(icon)" (click)="onValueClick(icon)"></i>\n </div>\n </ng-container>\n '}]}],xr.propDecorators={data:[{type:t.Input}],meta:[{type:t.Input}],theme:[{type:t.Input}],label:[{type:t.Input}],type:[{type:t.Input}],isMobile:[{type:t.HostBinding,args:["class.mobile"]}]};var Rr=function(){};Rr.decorators=[{type:t.NgModule,args:[{imports:[s.CommonModule],declarations:[xr,Dr,Or],exports:[xr,Dr,Or]}]}];var Mr=function(){};Mr.decorators=[{type:t.NgModule,args:[{imports:[n.ReactiveFormsModule],exports:[re,_,ze,je,Le,kr,U,Ha,nt,Rn,Va,Ma,Aa,an,ln,pt,St,mn,zi,Nt,Gt,Vn,bo,Co,Kt,Ga,Ui,Ir,fr,Ua,An,ut,Wa,ni,lo,Ln,vt,Qa,Rr,B,za,xo,Tr,jt,Qi,h.ScrollingModule,tr],providers:[{provide:mt,useClass:mt},{provide:Hn,useClass:Hn},{provide:Ne,useClass:Ne},{provide:dn,useClass:dn},{provide:Ja,useClass:Ja},{provide:Za,useClass:Ya},{provide:qa,useClass:qa},{provide:aa,useClass:aa},{provide:ia,useClass:ia}]}]}];var Fr,Lr=[{provide:dn,useClass:dn},{provide:la,useClass:la},{provide:ua,useClass:ua},{provide:Ja,useClass:Ja},{provide:Yn,useClass:Yn},{provide:mt,useClass:mt},{provide:Za,useClass:Ya},{provide:qa,useClass:qa},{provide:aa,useClass:aa},fa,Hn,Er,ya],Nr=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:ae(Lr)}},e.forChild=function(){return{ngModule:e}},e}();Nr.decorators=[{type:t.NgModule,args:[{imports:[]}]}],(Fr=e.AppBridgeHandler||(e.AppBridgeHandler={}))[Fr.HTTP=0]="HTTP",Fr[Fr.OPEN=1]="OPEN",Fr[Fr.OPEN_LIST=2]="OPEN_LIST",Fr[Fr.CLOSE=3]="CLOSE",Fr[Fr.REFRESH=4]="REFRESH",Fr[Fr.PIN=5]="PIN",Fr[Fr.REGISTER=6]="REGISTER",Fr[Fr.UPDATE=7]="UPDATE",Fr[Fr.REQUEST_DATA=8]="REQUEST_DATA",Fr[Fr.CALLBACK=9]="CALLBACK",Fr[Fr.PING=10]="PING";var Br="get",Hr="post",_r="put",Gr="delete",Vr="register",Ur="open",Kr="openList",zr="close",jr="refresh",$r="pin",Wr="ping",Zr="update",Yr="httpGET",qr="httpPOST",Jr="httpPUT",Xr="httpDELETE",Qr="customEvent",es="requestData",ts="callback",ns=function(){function e(){}return e.prototype.create=function(e){return new as(e)},e}(),os=function(){function e(e){this.http=e}return e.prototype.create=function(e){return new is(e,this.http)},e}(),as=function(){function t(e){if(void 0===e&&(e="AppBridge"),this.id=""+Date.now(),this._registeredFrames=[],this._handlers={},this._tracing=!1,this._eventListeners={},this.traceName=e,postRobot){postRobot.CONFIG.LOG_LEVEL="error";try{this._setupHandlers()}catch(e){}}}return Object.defineProperty(t.prototype,"tracing",{set:function(e){this._tracing=e},enumerable:!1,configurable:!0}),t.prototype.handle=function(e,t){this._handlers[e]=t},t.prototype._trace=function(e,t){this._tracing&&console.log("["+(this.traceName||this.id)+'] "'+e+'"',t)},t.prototype._setupHandlers=function(){var e=this;postRobot.on(Vr,(function(t){return e._trace(Vr,t),e._registeredFrames.push(t),e.register(t.data).then((function(e){return{windowName:e}}))})),postRobot.on(Zr,(function(t){return e._trace(Zr,t),e.update(t.data).then((function(e){return{success:e}}))})),postRobot.on(Ur,(function(t){return e._trace(Ur,t),e.open(t.data).then((function(e){return{success:e}}))})),postRobot.on(Kr,(function(t){return e._trace(Kr,t),e.openList(t.data).then((function(e){return{success:e}}))})),postRobot.on(zr,(function(t){e._trace(zr,t);var n=e._registeredFrames.findIndex((function(e){return e.data.id===t.data.id}));return-1!==n&&e._registeredFrames.splice(n,1),e.close(t.data).then((function(e){return{success:e}}))})),postRobot.on(jr,(function(t){return e._trace(jr,t),e.refresh(t.data).then((function(e){return{success:e}}))})),postRobot.on($r,(function(t){return e._trace($r,t),e.pin(t.data).then((function(e){return{success:e}}))})),postRobot.on(Wr,(function(t){return e._trace(Wr,t),e.httpGET("ping").then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(es,(function(t){return e._trace(es,t),e.requestData(t.data).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(ts,(function(t){return e._trace(ts,t),e.callback(t.data).then((function(e){return{success:e}}))})),postRobot.on(Yr,(function(t){return e._trace(Yr,t),e.httpGET(t.data.relativeURL).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(qr,(function(t){return e._trace(qr,t),e.httpPOST(t.data.relativeURL,t.data.data).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(Jr,(function(t){return e._trace(Jr,t),e.httpPUT(t.data.relativeURL,t.data.data).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(Xr,(function(t){return e._trace(Xr,t),e.httpDELETE(t.data.relativeURL).then((function(e){return{data:e.data,error:e.error}}))})),postRobot.on(Qr,(function(t){e._trace(Qr,t),e._eventListeners[t.data.event]&&e._eventListeners[t.data.event].forEach((function(e){e(t.data.data)})),e._registeredFrames.length>0&&e._registeredFrames.forEach((function(e){postRobot.send(e.source,Qr,t.data)}))}))},t.prototype.open=function(t){var n=this;return new Promise((function(o,a){n._handlers[e.AppBridgeHandler.OPEN]?n._handlers[e.AppBridgeHandler.OPEN](t,(function(e){e?o(!0):a(!1)})):(Object.assign(t,{id:n.id,windowName:n.windowName}),postRobot.sendToParent(Ur,t).then((function(e){n._trace(Ur+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)})))}))},t.prototype.openList=function(t){var n=this;return new Promise((function(o,a){if(n._handlers[e.AppBridgeHandler.OPEN_LIST])n._handlers[e.AppBridgeHandler.OPEN_LIST](t,(function(e){e?o(!0):a(!1)}));else{Object.assign({},{type:"List",entityType:t.type,keywords:t.keywords,criteria:t.criteria}),postRobot.sendToParent(Kr,t).then((function(e){n._trace(Kr+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)}))}}))},t.prototype.update=function(t){var n=this;return new Promise((function(o,a){n._handlers[e.AppBridgeHandler.UPDATE]?n._handlers[e.AppBridgeHandler.UPDATE](t,(function(e){e?o(!0):a(!1)})):(Object.assign(t,{id:n.id,windowName:n.windowName}),postRobot.sendToParent(Zr,t).then((function(e){n._trace(Zr+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)})))}))},t.prototype.close=function(t){var n=this;return new Promise((function(o,a){if(n._handlers[e.AppBridgeHandler.CLOSE])n._handlers[e.AppBridgeHandler.CLOSE](t,(function(e){e?o(!0):a(!1)}));else{t&&console.info("[AppBridge] - close(packet) is deprecated! Please just use close()!");var i={id:n.id,windowName:n.windowName};postRobot.sendToParent(zr,i).then((function(e){n._trace(zr+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)}))}}))},t.prototype.refresh=function(t){var n=this;return new Promise((function(o,a){if(n._handlers[e.AppBridgeHandler.REFRESH])n._handlers[e.AppBridgeHandler.REFRESH](t,(function(e){e?o(!0):a(!1)}));else{t&&console.info("[AppBridge] - refresh(packet) is deprecated! Please just use refresh()!");var i={id:n.id,windowName:n.windowName};postRobot.sendToParent(jr,i).then((function(e){n._trace(jr+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)}))}}))},t.prototype.ping=function(){var t=this;return new Promise((function(n,o){t._handlers[e.AppBridgeHandler.PING]?t._handlers[e.AppBridgeHandler.PING]({},(function(e,t){n({data:e,error:t})})):postRobot.sendToParent(Wr,{}).then((function(e){n({data:e.data.data,error:e.data.error})})).catch((function(e){o(null)}))}))},t.prototype.pin=function(t){var n=this;return new Promise((function(o,a){if(n._handlers[e.AppBridgeHandler.PIN])n._handlers[e.AppBridgeHandler.PIN](t,(function(e){e?o(!0):a(!1)}));else{t&&console.info("[AppBridge] - pin(packet) is deprecated! Please just use pin()!");var i={id:n.id,windowName:n.windowName};postRobot.sendToParent($r,i).then((function(e){n._trace($r+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)}))}}))},t.prototype.requestData=function(t){var n=this;return new Promise((function(o,a){n._handlers[e.AppBridgeHandler.REQUEST_DATA]?n._handlers[e.AppBridgeHandler.REQUEST_DATA](t,(function(e){e?o({data:e}):a(!1)})):(Object.assign(t,{id:n.id,windowName:n.windowName}),postRobot.sendToParent(es,t).then((function(e){n._trace(es+" (callback)",e),e.data?o({data:e.data.data}):a(!1)})).catch((function(e){a(!1)})))}))},t.prototype.callback=function(t){var n=this;return new Promise((function(o,a){n._handlers[e.AppBridgeHandler.CALLBACK]?n._handlers[e.AppBridgeHandler.CALLBACK](t,(function(e){e?o(!0):a(!1)})):(Object.assign(t,{id:n.id,windowName:n.windowName}),postRobot.sendToParent(ts,t).then((function(e){n._trace(ts+" (callback)",e),e.data?o(!0):a(!1)})).catch((function(e){a(!1)})))}))},t.prototype.register=function(t){var n=this;return void 0===t&&(t={}),new Promise((function(o,a){n._handlers[e.AppBridgeHandler.REGISTER]?n._handlers[e.AppBridgeHandler.REGISTER](t,(function(e){o(e||null)})):(Object.assign(t,{id:n.id}),postRobot.sendToParent(Vr,t).then((function(e){n._trace(Vr+" (callback)",e),e.data?(n.windowName=e.data.windowName,o(e.data.windowName)):o(null)})).catch((function(e){n._trace(Vr+" - FAILED - (no parent)",e),a(e)})))}))},t.prototype.httpGET=function(t,n){var o=this;return void 0===n&&(n=1e4),new Promise((function(a,i){o._handlers[e.AppBridgeHandler.HTTP]?o._handlers[e.AppBridgeHandler.HTTP]({verb:Br,relativeURL:t},(function(e,t){a({data:e,error:t})})):postRobot.sendToParent(Yr,{relativeURL:t},{timeout:n}).then((function(e){a({data:e.data.data,error:e.data.error})})).catch((function(e){i(null)}))}))},t.prototype.httpPOST=function(t,n,o){var a=this;return void 0===o&&(o=1e4),new Promise((function(i,r){a._handlers[e.AppBridgeHandler.HTTP]?a._handlers[e.AppBridgeHandler.HTTP]({verb:Hr,relativeURL:t,data:n},(function(e,t){i({data:e,error:t})})):postRobot.sendToParent(qr,{relativeURL:t,data:n},{timeout:o}).then((function(e){i({data:e.data.data,error:e.data.error})})).catch((function(e){r(null)}))}))},t.prototype.httpPUT=function(t,n,o){var a=this;return void 0===o&&(o=1e4),new Promise((function(i,r){a._handlers[e.AppBridgeHandler.HTTP]?a._handlers[e.AppBridgeHandler.HTTP]({verb:_r,relativeURL:t,data:n},(function(e,t){i({data:e,error:t})})):postRobot.sendToParent(Jr,{relativeURL:t,data:n},{timeout:o}).then((function(e){i({data:e.data.data,error:e.data.error})})).catch((function(e){r(null)}))}))},t.prototype.httpDELETE=function(t,n){var o=this;return void 0===n&&(n=1e4),new Promise((function(a,i){o._handlers[e.AppBridgeHandler.HTTP]?o._handlers[e.AppBridgeHandler.HTTP]({verb:Gr,relativeURL:t},(function(e,t){a({data:e,error:t})})):postRobot.sendToParent(Xr,{relativeURL:t},{timeout:n}).then((function(e){a({data:e.data.data,error:e.data.error})})).catch((function(e){i(null)}))}))},t.prototype.fireEvent=function(e,t){return new Promise((function(n,o){postRobot.sendToParent(Qr,{event:e,data:t}).then((function(e){n(e)})).catch((function(e){o(null)}))}))},t.prototype.fireEventToChildren=function(e,t){this._registeredFrames.length>0&&this._registeredFrames.forEach((function(n){postRobot.send(n.source,Qr,{event:e,eventType:e,data:t})}))},t.prototype.fireEventToChild=function(e,t,n){e instanceof HTMLIFrameElement&&(e=e.contentWindow),postRobot.send(e,Qr,{event:t,data:n})},t.prototype.addEventListener=function(e,t){this._eventListeners[e]||(this._eventListeners[e]=[]),this._eventListeners[e].push(t)},t}(),is=function(e){function t(t,n){void 0===t&&(t="DevAppBridge");var o=e.call(this,t)||this;o.http=n;var a=o.getCookie("UlEncodedIdentity");if(a&&a.length){var i=JSON.parse(decodeURIComponent(a)).sessions.reduce((function(e,t){return e[t.name]=t.value.endpoint,e}),{});o.baseURL=i.rest}return o}return te(t,e),t.prototype._setupHandlers=function(){},t.prototype.httpGET=function(e){return this.http.get(this.baseURL+"/"+e,{withCredentials:!0}).toPromise()},t.prototype.httpPOST=function(e,t){return this.http.post(this.baseURL+"/"+e,t,{withCredentials:!0}).toPromise()},t.prototype.httpPUT=function(e,t){return this.http.put(this.baseURL+"/"+e,t,{withCredentials:!0}).toPromise()},t.prototype.httpDELETE=function(e){return this.http.delete(this.baseURL+"/"+e,{withCredentials:!0}).toPromise()},t.prototype.getCookie=function(e){if(document)for(var t=e+"=",n=document.cookie.split(";"),o=0;o<n.length;o++){for(var a=n[o];" "===a.charAt(0);)a=a.substring(1);if(0===a.indexOf(t))return a.substring(t.length,a.length)}return!1},t}(as);e.AceEditorControl=Go,e.ActivityTableDataSource=Fi,e.ActivityTableRenderers=oi,e.AddressControl=Fo,e.AppBridge=as,e.AppBridgeService=ns,e.ArrayCollection=br,e.BaseControl=Ro,e.BasePickerResults=kt,e.BaseRenderer=nr,e.BrowserGlobalRef=Ya,e.COUNTRIES=hn,e.CardActionsElement=Be,e.CardElement=He,e.CheckListControl=Lo,e.CheckboxControl=No,e.ChecklistPickerResults=Dt,e.CollectionEvent=yr,e.ComponentUtils=mt,e.ControlFactory=ea,e.CustomControl=ta,e.DataTableBigDecimalRendererPipe=io,e.DataTableInterpolatePipe=eo,e.DateCell=or,e.DateControl=Bo,e.DateTableCurrencyRendererPipe=ro,e.DateTableDateRendererPipe=to,e.DateTableDateTimeRendererPipe=no,e.DateTableNumberRendererPipe=ao,e.DateTableTimeRendererPipe=oo,e.DateTimeControl=Ho,e.DayOfMonthPipe=Me,e.DecodeURIPipe=Q,e.Deferred=ra,e.DevAppBridge=is,e.DevAppBridgeService=os,e.DistributionListPickerResults=Ft,e.EditorControl=_o,e.EndOfWeekDisplayPipe=Fe,e.EntityList=Or,e.EntityPickerResult=Pt,e.EntityPickerResults=At,e.FieldInteractionApi=fa,e.FileControl=Vo,e.FormUtils=ia,e.FormValidators=Mo,e.GlobalRef=Za,e.GooglePlacesModule=Qa,e.GooglePlacesService=Ja,e.GroupByPipe=ie,e.GroupedControl=Qo,e.GroupedMultiPickerResults=xt,e.Helpers=R,e.HoursPipe=Re,e.KeyCodes=We,e.LocalStorageService=qa,e.MixedMultiPickerResults=Rt,e.MonthDayPipe=De,e.MonthPipe=Ae,e.NativeSelectControl=Uo,e.NovoAccordion=So,e.NovoAceEditor=N,e.NovoAceEditorModule=B,e.NovoActivityTable=Vi,e.NovoActivityTableActions=Ni,e.NovoActivityTableCustomFilter=Hi,e.NovoActivityTableCustomHeader=Bi,e.NovoActivityTableEmptyMessage=_i,e.NovoActivityTableNoResultsMessage=Gi,e.NovoActivityTableState=ai,e.NovoAddressElement=bn,e.NovoAutoSize=va,e.NovoButtonElement=H,e.NovoButtonModule=_,e.NovoCKEditorElement=Ut,e.NovoCalendarAllDayEventElement=Oe,e.NovoCalendarDateChangeElement=le,e.NovoCalendarDayEventElement=we,e.NovoCalendarDayViewElement=Ee,e.NovoCalendarHourSegmentElement=Te,e.NovoCalendarModule=Le,e.NovoCalendarMonthDayElement=Ce,e.NovoCalendarMonthHeaderElement=be,e.NovoCalendarMonthViewElement=ve,e.NovoCalendarWeekEventElement=Ie,e.NovoCalendarWeekHeaderElement=ke,e.NovoCalendarWeekViewElement=Se,e.NovoCardModule=je,e.NovoCategoryDropdownElement=Ze,e.NovoCategoryDropdownModule=ut,e.NovoCheckListElement=En,e.NovoCheckboxElement=kn,e.NovoChipElement=gt,e.NovoChipsElement=ft,e.NovoChipsModule=Gt,e.NovoCommonModule=jt,e.NovoControlElement=ba,e.NovoControlGroup=Ca,e.NovoControlTemplates=Sa,e.NovoDataTable=on,e.NovoDataTableClearButton=Zt,e.NovoDataTableFilterUtils=$t,e.NovoDataTableModule=lo,e.NovoDatePickerElement=Bn,e.NovoDatePickerInputElement=Gn,e.NovoDatePickerModule=Vn,e.NovoDateTimePickerElement=uo,e.NovoDateTimePickerInputElement=ho,e.NovoDateTimePickerModule=Co,e.NovoDragulaElement=un,e.NovoDragulaModule=mn,e.NovoDragulaService=dn,e.NovoDropDownItemHeaderElement=en,e.NovoDropdownCell=ar,e.NovoDropdownElement=Jt,e.NovoDropdownListElement=Qt,e.NovoDropdownModule=an,e.NovoDynamicFormElement=Ea,e.NovoElementProviders=Nr,e.NovoElementsModule=Mr,e.NovoEventTypeLegendElement=se,e.NovoExpansionModule=xo,e.NovoExpansionPanel=To,e.NovoExpansionPanelActionRow=Oo,e.NovoExpansionPanelContent=Eo,e.NovoExpansionPanelDescription=Ao,e.NovoExpansionPanelHeader=Po,e.NovoExpansionPanelTitle=Do,e.NovoFieldsetHeaderElement=ka,e.NovoFile=wn,e.NovoFileInputElement=Pn,e.NovoFormControl=na,e.NovoFormElement=wa,e.NovoFormExtrasModule=An,e.NovoFormGroup=oa,e.NovoFormModule=Ua,e.NovoHeaderComponent=Ba,e.NovoHeaderModule=Ha,e.NovoHeaderSpacer=Fa,e.NovoHorizontalStepper=qi,e.NovoIconComponent=Ka,e.NovoIconModule=za,e.NovoIsLoadingDirective=Ke,e.NovoItemAvatarElement=it,e.NovoItemContentElement=ct,e.NovoItemDateElement=lt,e.NovoItemElement=Xt,e.NovoItemEndElement=dt,e.NovoItemHeaderElement=st,e.NovoItemTitleElement=rt,e.NovoLabelService=Ne,e.NovoListElement=ot,e.NovoListItemElement=at,e.NovoListModule=pt,e.NovoLoadedDirective=Ue,e.NovoLoadingElement=_e,e.NovoLoadingModule=ze,e.NovoModalElement=da,e.NovoModalModule=Va,e.NovoModalNotificationElement=pa,e.NovoModalParams=sa,e.NovoModalRef=la,e.NovoModalService=ua,e.NovoMultiPickerElement=$a,e.NovoMultiPickerModule=Wa,e.NovoNavContentElement=et,e.NovoNavElement=Ye,e.NovoNavHeaderElement=tt,e.NovoNavOutletElement=Qe,e.NovoNovoCKEditorModule=Kt,e.NovoOverlayModule=vt,e.NovoOverlayTemplateComponent=yt,e.NovoPickerElement=Ot,e.NovoPickerModule=Nt,e.NovoPipesModule=re,e.NovoPopOverModule=ni,e.NovoQuickNoteModule=Ma,e.NovoRadioElement=Pa,e.NovoRadioGroup=Oa,e.NovoRadioModule=Aa,e.NovoRowChipElement=Ht,e.NovoRowChipsElement=_t,e.NovoSearchBoxElement=Fn,e.NovoSearchBoxModule=Ln,e.NovoSelectElement=sn,e.NovoSelectModule=ln,e.NovoSelection=ri,e.NovoSimpleActionCell=Ci,e.NovoSimpleCell=vi,e.NovoSimpleCellDef=ui,e.NovoSimpleCellHeader=ki,e.NovoSimpleCheckboxCell=bi,e.NovoSimpleCheckboxHeaderCell=yi,e.NovoSimpleColumnDef=hi,e.NovoSimpleEmptyHeaderCell=fi,e.NovoSimpleFilterFocus=Si,e.NovoSimpleHeaderCell=gi,e.NovoSimpleHeaderCellDef=mi,e.NovoSimpleHeaderRow=Di,e.NovoSimpleHeaderRowDef=Pi,e.NovoSimpleRow=xi,e.NovoSimpleRowDef=Ai,e.NovoSimpleTableModule=Ui,e.NovoSimpleTablePagination=Ii,e.NovoSkeletonDirective=Ve,e.NovoSliderElement=Ki,e.NovoSliderModule=zi,e.NovoSortFilter=ii,e.NovoSpinnerElement=Ge,e.NovoStep=Zi,e.NovoStepHeader=$i,e.NovoStepLabel=ji,e.NovoStepStatus=Xi,e.NovoStepper=Yi,e.NovoStepperModule=Qi,e.NovoSwitchElement=Ct,e.NovoSwitchModule=St,e.NovoTabButtonElement=Je,e.NovoTabElement=qe,e.NovoTabLinkElement=Xe,e.NovoTabModule=nt,e.NovoTabbedGroupPickerElement=er,e.NovoTabbedGroupPickerModule=tr,e.NovoTable=Li,e.NovoTableActionsElement=cr,e.NovoTableElement=Sr,e.NovoTableExtrasModule=fr,e.NovoTableFooterElement=ur,e.NovoTableHeaderElement=mr,e.NovoTableKeepFilterFocus=ir,e.NovoTableModule=Ir,e.NovoTemplate=zt,e.NovoTemplateService=ya,e.NovoTilesElement=xn,e.NovoTilesModule=Rn,e.NovoTimePickerElement=fo,e.NovoTimePickerInputElement=vo,e.NovoTimePickerModule=bo,e.NovoTipWellElement=_a,e.NovoTipWellModule=Ga,e.NovoToastElement=Zn,e.NovoToastModule=kr,e.NovoToastService=Yn,e.NovoTooltipModule=U,e.NovoUtilActionComponent=Na,e.NovoUtilsComponent=La,e.NovoValueElement=xr,e.NovoValueModule=Rr,e.NovoVerticalStepper=Ji,e.OptionsService=aa,e.OutsideClick=$e,e.PagedArrayCollection=Cr,e.Pagination=rr,e.PercentageCell=sr,e.PickerControl=Ko,e.PickerResults=It,e.PlacesListComponent=Xa,e.PluralPipe=X,e.PopOverContent=ei,e.PopOverDirective=ti,e.QuickNoteControl=jo,e.QuickNoteElement=Ra,e.QuickNoteResults=Da,e.RadioControl=$o,e.ReadOnlyControl=Wo,e.RemoteActivityTableService=Ri,e.RemoteDataTableService=co,e.RenderPipe=Dr,e.RowDetails=lr,e.Security=Er,e.SelectControl=Zo,e.SkillsSpecialtyPickerResults=Mt,e.StaticActivityTableService=Mi,e.StaticDataTableService=qt,e.TableCell=dr,e.TableFilter=pr,e.TablePickerControl=zo,e.TextAreaControl=Yo,e.TextBoxControl=qo,e.ThOrderable=hr,e.ThSortable=gr,e.TilesControl=Jo,e.TimeControl=Xo,e.TooltipDirective=V,e.Unless=wr,e.UnlessModule=Tr,e.WeekdayPipe=Pe,e.WorkersCompCodesPickerResults=Lt,e.YearPipe=xe,e.findByCountryCode=function(e){return hn.find((function(t){return t.code===e.trim()}))},e.findByCountryId=gn,e.findByCountryName=function(e){return hn.find((function(t){return t.name===e.trim()}))},e.getCountries=function(){return hn.map((function(e){return e.name}))},e.getStateObjects=fn,e.getStates=yn,e.notify=wt,e.ɵa=Ia,e.ɵb=ca,e.ɵc=G,e.ɵd=Wt,e.ɵe=nn,e.ɵf=tn,e.ɵg=Hn,e.ɵh=Jn,e.ɵi=Un,e.ɵj=jn,e.ɵk=$n,e.ɵl=Xn,e.ɵm=Kn,e.ɵn=qn,e.ɵo=zn,e.ɵp=Wn,e.ɵq=so,e.ɵr=Io,e.ɵs=ma,e.ɵt=ha,e.ɵu=Wi,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
17
17
|
//# sourceMappingURL=novo-elements.umd.min.js.map
|