!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/animations"),require("reflect-metadata"),require("@angular/common"),require("@angular/core"),require("@angular/forms"),require("ngx-logger"),require("rxjs"),require("@angular/platform-browser"),require("rxjs/operators"),require("date-fns"),require("date-fns/differenceInCalendarDays"),require("date-fns/endOfDay"),require("date-fns/endOfMonth"),require("date-fns/endOfWeek"),require("date-fns/locale"),require("date-fns/endOfYear"),require("date-fns/format"),require("date-fns/getDate"),require("date-fns/getDaysInMonth"),require("date-fns/isAfter"),require("date-fns/isBefore"),require("date-fns/isEqual"),require("date-fns/isSameMonth"),require("date-fns/isSameYear"),require("date-fns/isThisMonth"),require("date-fns/isThisYear"),require("date-fns/isToday"),require("date-fns/isWeekend"),require("date-fns/max"),require("date-fns/min"),require("date-fns/startOfDay"),require("date-fns/startOfMonth"),require("date-fns/startOfWeek"),require("date-fns/startOfYear"),require("date-fns/eachDayOfInterval"),require("@angular/common/http"),require("@ngx-translate/core"),require("@angular/router")):"function"==typeof define&&define.amd?define("@junte/ui",["exports","@angular/animations","reflect-metadata","@angular/common","@angular/core","@angular/forms","ngx-logger","rxjs","@angular/platform-browser","rxjs/operators","date-fns","date-fns/differenceInCalendarDays","date-fns/endOfDay","date-fns/endOfMonth","date-fns/endOfWeek","date-fns/locale","date-fns/endOfYear","date-fns/format","date-fns/getDate","date-fns/getDaysInMonth","date-fns/isAfter","date-fns/isBefore","date-fns/isEqual","date-fns/isSameMonth","date-fns/isSameYear","date-fns/isThisMonth","date-fns/isThisYear","date-fns/isToday","date-fns/isWeekend","date-fns/max","date-fns/min","date-fns/startOfDay","date-fns/startOfMonth","date-fns/startOfWeek","date-fns/startOfYear","date-fns/eachDayOfInterval","@angular/common/http","@ngx-translate/core","@angular/router"],e):e(((t=t||self).junte=t.junte||{},t.junte.ui={}),t.ng.animations,null,t.ng.common,t.ng.core,t.ng.forms,t["ngx-logger"],t.rxjs,t.ng.platformBrowser,t.rxjs.operators,t["date-fns"],t.differenceInCalendarDays,t.endOfDay,t.endOfMonth,t.endOfWeek,t["date-fns/locale"],t.endOfYear,t.format$1,t.getDate,t.getDaysInMonth,t.isAfter,t.isBefore,t.isEqual$2,t.isSameMonth,t.isSameYear,t.isThisMonth,t.isThisYear,t.isToday,t.isWeekend,t.max$1,t.min$1,t.startOfDay,t.startOfMonth,t.startOfWeek,t.startOfYear,t.eachDayOfInterval,t.ng.common.http,t["@ngx-translate/core"],t.ng.router)}(this,(function(t,e,n,o,i,r,a,s,l,p,c,d,u,g,h,f,m,y,b,v,j,k,w,C,T,O,I,S,x,M,P,_,B,z,H,E,F,R,A){"use strict";d=d&&d.hasOwnProperty("default")?d.default:d,u=u&&u.hasOwnProperty("default")?u.default:u,g=g&&g.hasOwnProperty("default")?g.default:g,h=h&&h.hasOwnProperty("default")?h.default:h,m=m&&m.hasOwnProperty("default")?m.default:m,y=y&&y.hasOwnProperty("default")?y.default:y,b=b&&b.hasOwnProperty("default")?b.default:b,v=v&&v.hasOwnProperty("default")?v.default:v,j=j&&j.hasOwnProperty("default")?j.default:j,k=k&&k.hasOwnProperty("default")?k.default:k,w=w&&w.hasOwnProperty("default")?w.default:w,C=C&&C.hasOwnProperty("default")?C.default:C,T=T&&T.hasOwnProperty("default")?T.default:T,O=O&&O.hasOwnProperty("default")?O.default:O,I=I&&I.hasOwnProperty("default")?I.default:I,S=S&&S.hasOwnProperty("default")?S.default:S,x=x&&x.hasOwnProperty("default")?x.default:x,M=M&&M.hasOwnProperty("default")?M.default:M,P=P&&P.hasOwnProperty("default")?P.default:P,_=_&&_.hasOwnProperty("default")?_.default:_,B=B&&B.hasOwnProperty("default")?B.default:B,z=z&&z.hasOwnProperty("default")?z.default:z,H=H&&H.hasOwnProperty("default")?H.default:H,E=E&&E.hasOwnProperty("default")?E.default:E;
/*! *****************************************************************************
    Copyright (c) Microsoft Corporation. All rights reserved.
    Licensed under the Apache License, Version 2.0 (the "License"); you may not use
    this file except in compliance with the License. You may obtain a copy of the
    License at http://www.apache.org/licenses/LICENSE-2.0

    THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
    WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
    MERCHANTABLITY OR NON-INFRINGEMENT.

    See the Apache Version 2.0 License for specific language governing permissions
    and limitations under the License.
    ***************************************************************************** */
var L=function(t,e){return(L=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function D(t,e){function n(){this.constructor=t}L(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var N=function(){return(N=Object.assign||function(t){for(var e,n=1,o=arguments.length;n<o;n++)for(var i in e=arguments[n])Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t}).apply(this,arguments)};function q(t,e,n,o){var i,r=arguments.length,a=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,o);else for(var s=t.length-1;s>=0;s--)(i=t[s])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);return r>3&&a&&Object.defineProperty(e,n,a),a}function V(t,e){return function(n,o){e(n,o,t)}}function G(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function W(t){var e="function"==typeof Symbol&&Symbol.iterator,n=e&&t[e],o=0;if(n)return n.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&o>=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Y(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var o,i,r=n.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(o=r.next()).done;)a.push(o.value)}catch(t){i={error:t}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(i)throw i.error}}return a}function U(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Y(arguments[e]));return t}var $,X,Q,K,J,Z,tt,et,nt,ot,it,rt,at,st,lt,pt,ct,dt,ut,gt,ht,ft,mt,yt,bt=e.keyframes([e.style({transform:"translateX(100%)",offset:0,"z-index":"10"}),e.style({transform:"translateX(0%)",offset:1})]),vt=e.keyframes([e.style({transform:"translateX(0%)",offset:0}),e.style({transform:"translateX(-100%)",opacity:"0",offset:1})]),jt={position:"fixed",overflow:"hidden",backfaceVisibility:"hidden",transformStyle:"preserve-3d"},kt=[e.transition("void => *",[]),e.transition("false => *",[]),e.transition("* => false",[])],wt=e.trigger("moveFromRight",U(kt,[e.transition("* => *",[e.query(":enter, :leave",e.style(jt),{optional:!0}),e.group([e.query(":enter",[e.animate("{{enterTiming}}s {{enterDelay}}s ease",bt)],{optional:!0}),e.query(":leave",[e.animate("{{leaveTiming}}s {{leaveDelay}}s ease",vt)],{optional:!0})]),e.query(":enter, :leave",e.animateChild(),{optional:!0})],{params:{enterTiming:"10",leaveTiming:"10",enterDelay:"0",leaveDelay:"0"}})])),Ct={label:{metrics:"Metrics",search:"Search",dark:"Dark",light:"Light"},action:{reload:"Reload",hide_sidebar:"Hide sidebar",ok:"Ok",cancel:"Cancel",select_all:"Select all"}},Tt={masks:{date:"__/__/____",time:"__:__",datetime:"__/__/____, __:__"}};($=t["ɵbs"]||(t["ɵbs"]={})).block="block",$.modal="modal",$.text="text",$.box="box",(X=t.GanttTypes||(t.GanttTypes={})).month="month",X.year="year",(Q=t["ɵw"]||(t["ɵw"]={})).button="button",Q.submit="submit",(K=t["ɵdc"]||(t["ɵdc"]={})).date="date",K.time="time",K.dateTime="dateTime",(J=t["ɵba"]||(t["ɵba"]={})).text="text",J.password="password",J.number="number",J.email="email",(Z=t["ɵbb"]||(t["ɵbb"]={})).normal="normal",Z.failed="failed",Z.success="success",(tt=t["ɵbc"]||(t["ɵbc"]={})).on="on",tt.off="off",(et=t["ɵbf"]||(t["ɵbf"]={})).single="single",et.multiple="multiple",(nt=t["ɵbi"]||(t["ɵbi"]={})).avatar="avatar",nt.text="text",nt.image="image",nt.card="card",(ot=t["ɵbq"]||(t["ɵbq"]={})).self="self",ot.blank="blank",ot.parent="parent",ot.top="top",(it=t["ɵbw"]||(t["ɵbw"]={})).page="page",it.offset="offset",function(t){t.dropdown="dropdown"}(rt||(rt={})),(at=t.Breakpoint||(t.Breakpoint={})).mobile="mobile",at.tablet="tablet",at.desktop="desktop",at.wide="wide",function(t){t.white="#FFFFFF",t.black="#000000",t.blue="#E7F5FF",t.blue100="#E6E9FA",t.orange="#EE8030",t.green="#00CCB1",t.greenDark="#00B89F",t.teal="#1D2932",t.red="#FF6262",t.redDark="#DE5B5B",t.yellow="#F8DB42",t.purple="#3949AB",t.purpleDark="#00227B",t.purpleLight="#6F74DD",t.purpleLighten="#C4C9E7",t.gray="#C4C4C4",t.gray100="#F5F5F5",t.gray200="#F7F7F7",t.gray300="#F0F0F0",t.gray400="#E9E9E9",t.paleNavy="#F3F4FC",t.gray600="#C4C4C4",t.gray700="#D0D0D0",t.gray800="#828282",t.gray900="#4F4F4F",t.grayDark="#343434"}(st||(st={})),(lt=t["ɵx"]||(t["ɵx"]={})).adapted="adapted",lt.clickable="clickable",lt.badge="badge",lt.dropdown="dropdown",lt.selectAll="selectAll",lt.allowEmpty="allowEmpty",lt.search="search",lt.smarty="smarty",lt.reload="reload",lt.multiplex="multiplex",lt.today="today",lt.marks="marks",lt.multiline="multiline",lt.pulse="pulse",(pt=t["ɵbx"]||(t["ɵbx"]={})).width="width",pt.height="height",(ct=t["ɵp"]||(t["ɵp"]={})).start="start",ct.center="center",ct.end="end",ct.baseline="baseline",ct.stretch="stretch",(dt=t["ɵq"]||(t["ɵq"]={})).start="start",dt.center="center",dt.end="end",dt.between="between",dt.around="around",dt.evenly="evenly",function(t){t.row="row",t.column="column",t.rowReverse="rowReverse",t.columnReverse="columnReverse"}(ut||(ut={})),(gt=t["ɵr"]||(t["ɵr"]={})).wrap="wrap",gt.noWrap="nowrap",gt.reverse="reverse",function(t){t.start="start",t.center="center",t.end="end",t.between="between",t.around="around",t.evenly="evenly",t.stretch="stretch"}(ht||(ht={})),function(t){t.start="start",t.center="center",t.end="end",t.stretch="stretch",t.baseline="baseline",t.auto="auto"}(ft||(ft={})),(mt=t["ɵo"]||(t["ɵo"]={})).none="none",mt.tiny="tiny",mt.small="small",mt.normal="normal",mt.big="big",mt.large="large",mt.huge="huge",(yt=t["ɵbo"]||(t["ɵbo"]={})).screen="screen",yt.default="default",yt.fluid="fluid";var Ot,It,St,xt,Mt,Pt,_t,Bt,zt,Ht,Et,Ft,Rt,At,Lt,Dt,Nt,qt,Vt,Gt={power:"power:svg:default:main|stroked",dashboard:"dashboard:svg:default:main|stroked|other",settings:"settings:svg:default:main|stroked|other",calendar:"calendar:svg:default:other|stroked",compass:"compass:svg:default:other|stroked",map:"map:svg:default:other|stroked",money:"money:svg:default:other|stroked",solar:"solar:svg:default:other|stroked",moon:"moon:svg:default:other|stroked",poop:"poop:svg:default:other|stroked",knowledge:"knowledge:svg:default:other|stroked",lock:"lock:svg:default:main|stroked",unlock:"unlock:svg:default:main|stroked",checked:"checked:svg:default:main|stroked",actions:"actions:svg:default:main|filled",add:"add:svg:default:main|stroked",edit:"edit:svg:default:main|stroked",save:"save:svg:default:main|stroked",delete:"delete:svg:default:main|stroked",copy:"copy:svg:default:main|stroked",cancel:"cancel:svg:default:main|stroked",reload:"reload:svg:default:main|stroked",cut:"cut:svg:default:main|stroked",move:"move:svg:default:main|stroked",close:"close:svg:default:main|stroked",closeSmall:"close-small:svg:default:main|stroked",expand:"expand:svg:default:main|stroked",print:"print:svg:default:main|stroked",filter:"filter:svg:default:main|stroked",create:"create:svg:default:main|stroked",smallUp:"small-up:svg:default:main|stroked",smallDown:"small-down:svg:default:main|stroked",send:"send:svg:default:main|stroked",today:"today:svg:default:main|filled",search:"search:svg:default:main|stroked",menu:"menu:svg:default:main|stroked",home:"home:svg:default:main|stroked",more:"more:svg:default:main|stroked",information:"information:svg:default:main|stroked",question:"question:svg:default:main|stroked",warning:"warning:svg:default:main|stroked",stop:"stop:svg:default:main|stroked",time:"time:svg:default:main|stroked",help:"help:svg:default:main|stroked",image:"image:svg:default:other|stroked",camera:"camera:svg:default:other|stroked",first:"first:svg:default:other|stroked",last:"last:svg:default:other|stroked",pause:"pause:svg:default:other|stroked",play:"play:svg:default:other|stroked",signin:"signin:svg:default:other|stroked",signout:"signout:svg:default:other|stroked",link:"link:svg:default:other|stroked",email:"email:svg:default:other|stroked",anchor:"anchor:svg:default:other|stroked",download:"download:svg:default:other|stroked",cloud:"cloud:svg:default:other|stroked",sync:"sync:svg:default:other|stroked",sorting:"sorting:svg:default:other|stroked",view:"view:svg:default:other|stroked",viewHide:"view-hide:svg:default:other|stroked",bubble:"bubble:svg:default:other|stroked",selectClose:"select-close:svg:default:other|stroked",selectOpen:"select-open:svg:default:other|stroked",code:"code:svg:default:other|stroked",bug:"bug:svg:default:other|stroked",like:"like:svg:default:other|stroked",dislike:"dislike:svg:default:other|stroked",profile:"profile:svg:default:other|stroked",bell:"bell:svg:default:other|stroked",team:"team:svg:default:other|stroked",user:"user:svg:default:other|stroked",messages:"messages:svg:default:other|stroked",doubleChevronLeft:"chevron-double-left:svg:default:controls|stroked",doubleChevronRight:"chevron-double-right:svg:default:controls|stroked",chevronDown:"chevron-down:svg:default:controls|stroked",chevronLeft:"chevron-left:svg:default:controls|stroked",chevronRight:"chevron-right:svg:default:controls|stroked",chevronUp:"chevron-up:svg:default:controls|stroked",arrowUp:"arrow-up:svg:default:controls|stroked",arrowDown:"arrow-down:svg:default:controls|stroked",arrowLeft:"arrow-left:svg:default:controls|stroked",arrowRight:"arrow-right:svg:default:controls|stroked",evil:"evil:svg:emoji:emoji|filled",laughter:"laughter:svg:emoji:emoji|filled",sad:"sad:svg:emoji:emoji|filled",shocked:"shocked:svg:emoji:emoji|filled",skull:"skull:svg:emoji:emoji|filled",smile:"smile:svg:emoji:emoji|filled",wink:"evil:svg:emoji:emoji|filled",neutral:"neutral:svg:emoji:emoji|filled",checkboxUnchecked:"checkbox-unchecked:svg:default:controls|filled",checkboxChecked:"checkbox-checked:svg:default:controls|filled",radioUnchecked:"radio-unchecked:svg:default:controls|filled",radioChecked:"radio-checked:svg:default:controls|filled",abkhazia:"abkhazia:svg:countries:flags",afghanistan:"afghanistan:svg:countries:flags",alandIslands:"aland-islands:svg:countries:flags",albania:"albania:svg:countries:flags",algeria:"algeria:svg:countries:flags",americanSamoa:"american-samoa:svg:countries:flags",andorra:"andorra:svg:countries:flags",angola:"angola:svg:countries:flags",anguilla:"anguilla:svg:countries:flags",antiguaAndBarbuda:"antigua-and-barbuda:svg:countries:flags",argentina:"argentina:svg:countries:flags",armenia:"armenia:svg:countries:flags",aruba:"aruba:svg:countries:flags",australia:"australia:svg:countries:flags",austria:"austria:svg:countries:flags",azerbaijan:"azerbaijan:svg:countries:flags",azoresIslands:"azores-islands:svg:countries:flags",bahamas:"bahamas:svg:countries:flags",bahrain:"bahrain:svg:countries:flags",balearicIslands:"balearic-islands:svg:countries:flags",bangladesh:"bangladesh:svg:countries:flags",barbados:"barbados:svg:countries:flags",basqueCountry:"basque-country:svg:countries:flags",belarus:"belarus:svg:countries:flags",belgium:"belgium:svg:countries:flags",belize:"belize:svg:countries:flags",benin:"benin:svg:countries:flags",bermuda:"bermuda:svg:countries:flags",bhutan:"bhutan:svg:countries:flags",bolivia:"bolivia:svg:countries:flags",bonaire:"bonaire:svg:countries:flags",bosniaAndHerzegovina:"bosnia-and-herzegovina:svg:countries:flags",botswana:"botswana:svg:countries:flags",brazil:"brazil:svg:countries:flags",britishColumbia:"british-columbia:svg:countries:flags",britishIndianOceanTerritory:"british-indian-ocean-territory:svg:countries:flags",britishVirginIslands:"british-virgin-islands:svg:countries:flags",brunei:"brunei:svg:countries:flags",bulgaria:"bulgaria:svg:countries:flags",burkinaFaso:"burkina-faso:svg:countries:flags",burundi:"burundi:svg:countries:flags",cambodia:"cambodia:svg:countries:flags",cameroon:"cameroon:svg:countries:flags",canada:"canada:svg:countries:flags",canaryIslands:"canary-islands:svg:countries:flags",capeVerde:"cape-verde:svg:countries:flags",caymanIslands:"cayman-islands:svg:countries:flags",centralAfricanRepublic:"central-african-republic:svg:countries:flags",ceuta:"ceuta:svg:countries:flags",chad:"chad:svg:countries:flags",chile:"chile:svg:countries:flags",china:"china:svg:countries:flags",christmasIsland:"christmas-island:svg:countries:flags",cocosIsland:"cocos-island:svg:countries:flags",colombia:"colombia:svg:countries:flags",comoros:"comoros:svg:countries:flags",cookIslands:"cook-islands:svg:countries:flags",corsica:"corsica:svg:countries:flags",costaRica:"costa-rica:svg:countries:flags",croatia:"croatia:svg:countries:flags",cuba:"cuba:svg:countries:flags",curacao:"curacao:svg:countries:flags",cyprus:"cyprus:svg:countries:flags",czechRepublic:"czech-republic:svg:countries:flags",democraticRepublicOfCongo:"democratic-republic-of-congo:svg:countries:flags",denmark:"denmark:svg:countries:flags",djibouti:"djibouti:svg:countries:flags",dominica:"dominica:svg:countries:flags",dominicanRepublic:"dominican-republic:svg:countries:flags",eastTimor:"east-timor:svg:countries:flags",ecuador:"ecuador:svg:countries:flags",egypt:"egypt:svg:countries:flags",elSalvador:"el-salvador:svg:countries:flags",england:"england:svg:countries:flags",equatorialQuinea:"equatorial-guinea:svg:countries:flags",eritrea:"eritrea:svg:countries:flags",ersey:"ersey:svg:countries:flags",estonia:"estonia:svg:countries:flags",ethiopia:"ethiopia:svg:countries:flags",europeanUnion:"european-union:svg:countries:flags",falklandIslands:"falkland-islands:svg:countries:flags",faroeIslands:"faroe-islands:svg:countries:flags",fiji:"fiji:svg:countries:flags",finland:"finland:svg:countries:flags",france:"france:svg:countries:flags",frenchPolynesia:"french-polynesia:svg:countries:flags",gabon:"gabon:svg:countries:flags",galapagosIslands:"galapagos-islands:svg:countries:flags",gambia:"gambia:svg:countries:flags",georgia:"georgia:svg:countries:flags",germany:"germany:svg:countries:flags",ghana:"ghana:svg:countries:flags",gibraltar:"gibraltar:svg:countries:flags",greece:"greece:svg:countries:flags",greenland:"greenland:svg:countries:flags",grenada:"grenada:svg:countries:flags",guam:"guam:svg:countries:flags",guatemala:"guatemala:svg:countries:flags",guernsey:"guernsey:svg:countries:flags",guinea:"guinea:svg:countries:flags",guineaBissau:"guinea-bissau:svg:countries:flags",haiti:"haiti:svg:countries:flags",hawaii:"hawaii:svg:countries:flags",honduras:"honduras:svg:countries:flags",hongKong:"hong-kong:svg:countries:flags",hungary:"hungary:svg:countries:flags",iceland:"iceland:svg:countries:flags",india:"india:svg:countries:flags",indonesia:"indonesia:svg:countries:flags",iran:"iran:svg:countries:flags",iraq:"iraq:svg:countries:flags",ireland:"ireland:svg:countries:flags",isleOfMan:"isle-of-man:svg:countries:flags",israel:"israel:svg:countries:flags",italy:"italy:svg:countries:flags",ivoryCoast:"ivory-coast:svg:countries:flags",jamaica:"jamaica:svg:countries:flags",japan:"japan:svg:countries:flags",jordan:"jordan:svg:countries:flags",kazakhstan:"kazakhstan:svg:countries:flags",kenya:"kenya:svg:countries:flags",kosovo:"kosovo:svg:countries:flags",kuwait:"kuwait:svg:countries:flags",kyrgyzstan:"kyrgyzstan:svg:countries:flags",laos:"laos:svg:countries:flags",latvia:"latvia:svg:countries:flags",lebanon:"lebanon:svg:countries:flags",lesotho:"lesotho:svg:countries:flags",liberia:"liberia:svg:countries:flags",libya:"libya:svg:countries:flags",liechtenstein:"liechtenstein:svg:countries:flags",lithuania:"lithuania:svg:countries:flags",luxembourg:"luxembourg:svg:countries:flags",macao:"macao:svg:countries:flags",madagascar:"madagascar:svg:countries:flags",madeira:"madeira:svg:countries:flags",malawi:"malawi:svg:countries:flags",malaysia:"malaysia:svg:countries:flags",maldives:"maldives:svg:countries:flags",mali:"mali:svg:countries:flags",malta:"malta:svg:countries:flags",marshallIsland:"marshall-island:svg:countries:flags",martinique:"martinique:svg:countries:flags",mauritania:"mauritania:svg:countries:flags",mauritius:"mauritius:svg:countries:flags",melilla:"melilla:svg:countries:flags",mexico:"mexico:svg:countries:flags",micronesia:"micronesia:svg:countries:flags",moldova:"moldova:svg:countries:flags",monaco:"monaco:svg:countries:flags",mongolia:"mongolia:svg:countries:flags",montenegro:"montenegro:svg:countries:flags",montserrat:"montserrat:svg:countries:flags",morocco:"morocco:svg:countries:flags",mozambique:"mozambique:svg:countries:flags",myanmar:"myanmar:svg:countries:flags",namibia:"namibia:svg:countries:flags",nauru:"nauru:svg:countries:flags",nepal:"nepal:svg:countries:flags",netherlands:"netherlands:svg:countries:flags",newZealand:"new-zealand:svg:countries:flags",nicaragua:"nicaragua:svg:countries:flags",niger:"niger:svg:countries:flags",nigeria:"nigeria:svg:countries:flags",niue:"niue:svg:countries:flags",norfolkIsland:"norfolk-island:svg:countries:flags",northKorea:"north-korea:svg:countries:flags",northenCyprus:"northen-cyprus:svg:countries:flags",northernMarianasIslands:"northern-marianas-islands:svg:countries:flags",norway:"norway:svg:countries:flags",oman:"oman:svg:countries:flags",orkneyIslands:"orkney-islands:svg:countries:flags",ossetia:"ossetia:svg:countries:flags",otan:"otan:svg:countries:flags",pakistan:"pakistan:svg:countries:flags",palau:"palau:svg:countries:flags",palestine:"palestine:svg:countries:flags",panama:"panama:svg:countries:flags",papuaNewGuinea:"papua-new-guinea:svg:countries:flags",paraguay:"paraguay:svg:countries:flags",peru:"peru:svg:countries:flags",philippines:"philippines:svg:countries:flags",pitcairnIslands:"pitcairn-islands:svg:countries:flags",poland:"poland:svg:countries:flags",portugal:"portugal:svg:countries:flags",puertoRico:"puerto-rico:svg:countries:flags",qatar:"qatar:svg:countries:flags",rapaNui:"rapa-nui:svg:countries:flags",republicOfMacedonia:"republic-of-macedonia:svg:countries:flags",republicOfTheCongo:"republic-of-the-congo:svg:countries:flags",romania:"romania:svg:countries:flags",russia:"russia:svg:countries:flags",rwanda:"rwanda:svg:countries:flags",sabaIsland:"saba-island:svg:countries:flags",sahrawiArabDemocraticRepublic:"sahrawi-arab-democratic-republic:svg:countries:flags",saintKittsAndNevis:"saint-kitts-and-nevis:svg:countries:flags",samoa:"samoa:svg:countries:flags",sanMarino:"san-marino:svg:countries:flags",saoTomeAndPrincipe:"sao-tome-and-principe:svg:countries:flags",sardinia:"sardinia:svg:countries:flags",saudiArabia:"saudi-arabia:svg:countries:flags",scotland:"scotland:svg:countries:flags",senegal:"senegal:svg:countries:flags",serbia:"serbia:svg:countries:flags",seychelles:"seychelles:svg:countries:flags",sicily:"sicily:svg:countries:flags",sierraLeone:"sierra-leone:svg:countries:flags",singapore:"singapore:svg:countries:flags",sintEustatius:"sint-eustatius:svg:countries:flags",sintMaarten:"sint-maarten:svg:countries:flags",slovakia:"slovakia:svg:countries:flags",slovenia:"slovenia:svg:countries:flags",solomonIslands:"solomon-islands:svg:countries:flags",somalia:"somalia:svg:countries:flags",somaliland:"somaliland:svg:countries:flags",southAfrica:"south-africa:svg:countries:flags",southKorea:"south-korea:svg:countries:flags",southSudan:"south-sudan:svg:countries:flags",spain:"spain:svg:countries:flags",sriLanka:"sri-lanka:svg:countries:flags",stBarts:"st-barts:svg:countries:flags",stLucia:"st-lucia:svg:countries:flags",stVincentAndTheGrenadines:"st-vincent-and-the-grenadines:svg:countries:flags",sudan:"sudan:svg:countries:flags",suriname:"suriname:svg:countries:flags",sweden:"sweden:svg:countries:flags",switzerland:"switzerland:svg:countries:flags",syria:"syria:svg:countries:flags",taiwan:"taiwan:svg:countries:flags",tajikistan:"tajikistan:svg:countries:flags",tanzania:"tanzania:svg:countries:flags",thailand:"thailand:svg:countries:flags",tibet:"tibet:svg:countries:flags",togo:"togo:svg:countries:flags",tokelau:"tokelau:svg:countries:flags",tonga:"tonga:svg:countries:flags",transnistria:"transnistria:svg:countries:flags",trinidadAndTobago:"trinidad-and-tobago:svg:countries:flags",tubalu:"tubalu:svg:countries:flags",tunisia:"tunisia:svg:countries:flags",turkey:"turkey:svg:countries:flags",turkmenistan:"turkmenistan:svg:countries:flags",turksAndCaicos:"turks-and-caicos:svg:countries:flags",ukraine:"ukraine:svg:countries:flags",uganda:"uganda:svg:countries:flags",unitedArabEmirates:"united-arab-emirates:svg:countries:flags",unitedKingdom:"united-kingdom:svg:countries:flags",unitedNations:"united-nations:svg:countries:flags",unitedStatesOfAmerica:"united-states-of-america:svg:countries:flags",uruguay:"uruguay:svg:countries:flags",uzbekistn:"uzbekistn:svg:countries:flags",vanuatu:"vanuatu:svg:countries:flags",vaticanCity:"vatican-city:svg:countries:flags",venezuela:"venezuela:svg:countries:flags",vietnam:"vietnam:svg:countries:flags",virginIslands:"virgin-islands:svg:countries:flags",wales:"wales:svg:countries:flags",yemen:"yemen:svg:countries:flags",zambia:"zambia:svg:countries:flags",zimbabwe:"zimbabwe:svg:countries:flags",rocket:"rocket:svg:default:stroked",arnold:"arnold:svg:apps:apps",angular:"angular:svg:apps:apps",gitlab:"gitlab:svg:apps:apps",dribbble:"dribbble:svg:apps:apps",github:"github:svg:apps:apps",figma:"figma:svg:apps:apps",stackblitz:"stackblitz:svg:apps:apps",animated:{runningMan:"running-man:animated:default:animated",success:"success:animated:default:animated",settings:"settings:animated:default:animated|filled",bell:"bell:animated:default:animated|filled",reload:"reload:animated:default:animated|filled",spinner:"spinner:animated:default:animated|stroked"}};!function(t){t.unidentified="Unidentified",t.enter="Enter",t.backspace="Backspace",t.tab="Tab",t.arrowLeft="ArrowLeft",t.arrowTop="ArrowTop",t.arrowRight="ArrowRight",t.arrowBottom="ArrowBottom",t.zero="0",t.one="1",t.two="2",t.three="3",t.four="4",t.five="5",t.six="6",t.seven="7",t.eight="8",t.nine="9",t.v="v"}(Ot||(Ot={})),function(t){t.altKey="altKey",t.ctrlKey="ctrlKey",t.shiftKey="shiftKey",t.metaKey="metaKey"}(It||(It={})),(St=t["ɵn"]||(t["ɵn"]={})).horizontal="horizontal",St.vertical="vertical",(xt=t["ɵu"]||(t["ɵu"]={})).ghost="ghost",xt.fill="fill",xt.transparent="transparent",(Mt=t["ɵbe"]||(t["ɵbe"]={})).default="default",Mt.absolute="absolute",Mt.fixed="fixed",(Pt=t.Position||(t.Position={})).left="left",Pt.right="right",Pt.top="top",Pt.bottom="bottom",Pt.rightTop="rightTop",Pt.leftTop="leftTop",Pt.rightBottom="rightBottom",Pt.leftBottom="leftBottom",Pt.inline="inline",Pt.center="center",(_t=t["ɵt"]||(t["ɵt"]={})).primary="primary",_t.secondary="secondary",_t.success="success",_t.fail="fail",(Bt=t["ɵs"]||(t["ɵs"]={})).circle="circle",Bt.square="square",(zt=t["ɵm"]||(t["ɵm"]={})).auto="auto",zt.tiny="tiny",zt.small="small",zt.normal="normal",zt.large="large",(Ht=t["ɵbd"]||(t["ɵbd"]={})).loading="loading",Ht.warning="warning",Ht.checked="checked",Ht.error="error",function(t){t.bold="bold",t.normal="normal",t.thin="thin"}(Et||(Et={})),(Ft=t["ɵbt"]||(t["ɵbt"]={})).default="default",Ft.tabs="tabs",Ft.tags="tags",(Rt=t["ɵy"]||(t["ɵy"]={})).left="left",Rt.right="right",Rt.center="center",(At=t["ɵz"]||(t["ɵz"]={})).capitalize="capitalize",At.uppercase="uppercase",At.lowercase="lowercase",function(t){t.light="light",t.dark="dark"}(Lt||(Lt={})),(Dt=t.Triggers||(t.Triggers={})).hover="hover",Dt.click="click",(Nt=t["ɵbr"]||(t["ɵbr"]={})).fullMatch="fullMatch",Nt.wildcard="wildcard",(qt=t["ɵbp"]||(t["ɵbp"]={})).required="required",qt.minLength="minlength",qt.maxLength="maxlength",qt.min="min",qt.max="max",qt.email="email",qt.pattern="pattern",qt.phone="phone",(Vt=t["ɵv"]||(t["ɵv"]={})).fluid="fluid",Vt.default="default";var Wt,Yt=function(){function e(){}return e.gutter=t["ɵo"],e.theme=Lt,e.scheme=t["ɵt"],e.size=t["ɵm"],e.stroke=Et,e.outline=t["ɵu"],e.position=t.Position,e.breakpoint=t.Breakpoint,e.behaviour=rt,e.shape=t["ɵs"],e.orientation=t["ɵn"],e.width=t["ɵv"],e.height=t["ɵbo"],e.color=st,e.icons=Gt,e.matching=t["ɵbr"],e.feature=t["ɵx"],e.state=t["ɵbd"],e.fit=t["ɵbx"],e.target=t["ɵbq"],e.align=t["ɵp"],e.justify=t["ɵq"],e.direction=ut,e.wrap=t["ɵr"],e.validator=t["ɵbp"],e.placement=t["ɵbe"],e.trigger=t.Triggers,e.context=t["ɵbs"],e.text={align:t["ɵy"],transform:t["ɵz"]},e.datePicker={type:t["ɵdc"]},e.skeleton={type:t["ɵbi"]},e.pager={mode:t["ɵbw"]},e.input={type:t["ɵba"],scheme:t["ɵbb"],autocomplete:t["ɵbc"]},e.select={mode:t["ɵbf"]},e.button={type:t["ɵw"]},e.gantt={type:t.GanttTypes},e.menu={style:t["ɵbt"]},e.keyboard={key:Ot,modifier:It},e}(),Ut=Symbol("component_api_properties_field_meta"),$t=Symbol("component_api_methods_field_meta"),Xt=Symbol("component_api_content_field_meta"),Qt=function(){},Kt=function(){},Jt=function(){};function Zt(t){return function(e,n){var o=e.constructor,i=Reflect.getMetadata(Ut,o)||{};i[n]=t,Reflect.defineMetadata(Ut,i,o)}}function te(t){return function(e,n){var o=e.constructor,i=Reflect.getMetadata($t,o)||{};i[n]=t,Reflect.defineMetadata($t,i,o)}}function ee(t){return function(e,n){var o=e.constructor,i=Reflect.getMetadata(Xt,o)||{};i[n]=t,Reflect.defineMetadata(Xt,i,o)}}function ne(t,e){return JSON.stringify(t)===JSON.stringify(e)}!function(t){t.single="single",t.multiple="multiple"}(Wt||(Wt={}));var oe=function(t){void 0===t&&(t=null),t&&Object.assign(this,t)},ie=new i.InjectionToken("selectable_signals"),re=new i.EventEmitter;function ae(){return re}var se=function(){function t(t,e){var n=this;this.signals=t,this.logger=e,this.config=new oe({mode:Wt.single,enabled:!0,features:[]}),this.disabled=!1,this._mode=Wt.single,this.onChange=function(){return n.logger.error("value accessor is not registered")},this.onTouched=function(){return n.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return n.onChange=t},this.registerOnTouched=function(t){return n.onTouched=t},this.onBlur=function(){return n.onTouched()}}var e;return e=t,Object.defineProperty(t.prototype,"selected",{get:function(){var t=this.config.value;return-1!==this.state.findIndex((function(e){return ne(e,t)}))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"configure",{set:function(t){Object.assign(this.config,t)},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){var t=this;this.signals.subscribe((function(e){return t.state=e}))},t.prototype.writeValue=function(t){this.state=t?Array.isArray(t)?t:[t]:[]},t.prototype.setDisabledState=function(t){this.disabled=t},t.prototype.select=function(){var t=this.config,e=t.mode,n=t.value,o=t.enabled,i=t.features;if(o){switch(e){case Wt.single:var r=this.state.length>0?this.state[0]:null;if(r){var a=ne(r,n);if(a&&!i.includes(Yt.feature.allowEmpty))return;this.state=a?[]:[n],this.onChange(a?null:n)}else this.state=[n],this.onChange(n);break;case Wt.multiple:var s=this.state.findIndex((function(t){return ne(t,n)}));-1!==s?this.state.splice(s,1):this.state.push(n),this.onChange(this.state)}this.signals.emit(this.state)}},t.ctorParameters=function(){return[{type:i.EventEmitter,decorators:[{type:i.Inject,args:[ie]}]},{type:a.NGXLogger}]},q([i.HostBinding("attr.data-disabled"),G("design:type",Object)],t.prototype,"disabled",void 0),q([i.HostBinding("attr.data-selected"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"selected",null),q([i.HostBinding("attr.data-mode"),G("design:type",String)],t.prototype,"_mode",void 0),q([Zt({description:"Selectable configuration",type:"{mode?: SelectMode, value: any, enabled?: boolean, features?: Feature[]}",default:"{}"}),i.Input("jntSelectable"),G("design:type",Object),G("design:paramtypes",[Object])],t.prototype,"configure",null),q([i.HostListener("blur"),G("design:type",Object)],t.prototype,"onBlur",void 0),q([i.HostListener("click"),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],t.prototype,"select",null),t=e=q([i.Directive({selector:"[jntSelectable]",providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return e})),multi:!0},{provide:ie,useFactory:ae}]}),V(0,i.Inject(ie)),G("design:paramtypes",[i.EventEmitter,a.NGXLogger])],t)}(),le=function(){function t(){}return t=q([i.NgModule({declarations:[se],imports:[o.CommonModule],exports:[se]})],t)}(),pe=function(){function t(){this.shortcuts=[]}return t.prototype.select=function(t){var e=this.shortcuts.find((function(e){return e.key===t.key}));e&&(!e.modifier||e.modifier===It.altKey&&t.altKey||e.modifier===It.ctrlKey&&t.ctrlKey||e.modifier===It.shiftKey&&t.shiftKey||e.modifier===It.metaKey&&t.metaKey)&&(e.action(),t.preventDefault())},q([Zt({description:"Shortcuts array",type:"[{key: ui.kayboard.key, modifier: ui.keyboard.modifier, action: Function}]",default:"[]"}),i.Input("jntShortcuts"),G("design:type",Array)],t.prototype,"shortcuts",void 0),q([i.HostListener("keydown",["$event"]),G("design:type",Function),G("design:paramtypes",[KeyboardEvent]),G("design:returntype",void 0)],t.prototype,"select",null),t=q([i.Directive({selector:"[jntShortcuts]"})],t)}(),ce=function(){function t(){}return t=q([i.NgModule({declarations:[pe],imports:[o.CommonModule],exports:[pe]})],t)}();function de(t,e){return JSON.stringify(t)===JSON.stringify(e)}var ue=function(t){if("object"==typeof t&&null!==t){if("function"==typeof Object.getPrototypeOf){var e=Object.getPrototypeOf(t);return e===Object.prototype||null===e}return"[object Object]"===Object.prototype.toString.call(t)}return!1},ge=ue,he=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return t.reduce((function(t,e){return Object.keys(e).forEach((function(n){Array.isArray(t[n])&&Array.isArray(e[n])?t[n]=Array.from(new Set(t[n].concat(e[n]))):ue(t[n])&&ue(e[n])?t[n]=he(t[n],e[n]):t[n]=e[n]})),t}),{})},fe=he,me=function(){function t(){this.store={}}return t.prototype.contains=function(t){return void 0!==this.store[t]},t.prototype.get=function(t){return this.store[t]},t.prototype.set=function(t,e){this.store[t]=e},t.ɵprov=i["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t=q([i.Injectable({providedIn:"root"})],t)}(),ye=function(){function t(){}return t.prototype.transform=function(t){return t.filter((function(t){return null!==t}))},t=q([i.Pipe({name:"filterEmpty"})],t)}(),be=function(){function t(){}return t.prototype.transform=function(t,e){return void 0===e&&(e=0),t>0?U(Array(t).keys()).map((function(t){return e?t+e:t})):[]},t=q([i.Pipe({name:"mockArray"})],t)}(),ve=function(){function t(){}return t.prototype.transform=function(t,e){return void 0===e&&(e=", "),t.join(e)},t=q([i.Pipe({name:"join"})],t)}(),je=function(){function t(){}return t.prototype.transform=function(t){return t.slice(0,-1)},t=q([i.Pipe({name:"pop"})],t)}(),ke=function(){function t(){}return t.prototype.transform=function(t,e){var n=t||[];if(Array.isArray(e)){for(var o=0;o<e.length;o++)if(n.includes(e[o]))return!0;return!1}return n.includes(e)},t=q([i.Pipe({name:"includes",pure:!1})],t)}(),we=function(){function t(){}return t=q([i.NgModule({declarations:[be,ve,ke,je,ye],imports:[o.CommonModule],exports:[be,ve,ke,je,ye]})],t)}();function Ce(t,e){var n=Math.round(parseInt(t,16)-e),o=n>255?255:n<0?0:n;return o.toString(16).length>1?o.toString(16):"0"+o.toString(16)}function Te(t,e){return e=255*e/100,"#"+Ce((t=t.startsWith("#")?t.substring(1,t.length):t).substring(0,2),e)+Ce(t.substring(2,4),e)+Ce(t.substring(4,6),e)}var Oe,Ie=function(){function t(){}return t.prototype.transform=function(t,e){return Te(t,e)},t=q([i.Pipe({name:"lightenDarken"})],t)}(),Se=[299,587,114];function xe(t){return 3===(e=(e=t).substr(1)).length&&(e=e.split("").map((function(t){return t+t})).join("")),Se.map((function(t,n){return t*parseInt(e.substr(2*n,2),16)/1e3})).reduce((function(t,e){return t+e}))>=150?Oe.dark:Oe.light;var e}!function(t){t.light="#FFF",t.dark="#4F4F4F"}(Oe||(Oe={}));var Me,Pe,_e,Be,ze=function(){function t(){}return t.prototype.transform=function(t){return xe(t).toString()},t=q([i.Pipe({name:"textBrightness"})],t)}(),He=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],exports:[Ie,ze],declarations:[Ie,ze]})],t)}(),Ee=function(){function t(t){this._sanitizer=t}return t.prototype.transform=function(t){return t?this._sanitizer.bypassSecurityTrustHtml(t):""},t.ctorParameters=function(){return[{type:l.DomSanitizer,decorators:[{type:i.Inject,args:[l.DomSanitizer]}]}]},t=q([i.Pipe({name:"sanitizeHtml"}),V(0,i.Inject(l.DomSanitizer)),G("design:paramtypes",[l.DomSanitizer])],t)}(),Fe=function(){function t(){}return t.prototype.transform=function(t){return t||"—"},t=q([i.Pipe({name:"empty"})],t)}(),Re=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],declarations:[Fe,Ee],exports:[Fe,Ee]})],t)}(),Ae=function(){function t(){}return t.prototype.transform=function(t){return Math.round(t)},t=q([i.Pipe({name:"round"})],t)}(),Le=function(){function t(){}return t.prototype.transform=function(t){return Math.trunc(t)},t=q([i.Pipe({name:"trunc"})],t)}(),De=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],declarations:[Le,Ae],exports:[Le,Ae]})],t)}(),Ne=function(){function e(){this.host="jnt-stack-host",this._orientation=t["ɵn"].vertical,this._gutter=t["ɵo"].normal,this._padding=t["ɵo"].none,this._align=t["ɵp"].start,this._justify=t["ɵq"].start,this._wrap=t["ɵr"].noWrap}return Object.defineProperty(e.prototype,"orientation",{set:function(e){this._orientation=e||t["ɵn"].vertical},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"gutter",{set:function(e){this._gutter=e||t["ɵo"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"spacing",{set:function(t){this._spacing=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"padding",{set:function(e){this._padding=e||t["ɵo"].none},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"align",{set:function(e){this._align=e||t["ɵp"].start},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"justify",{set:function(e){this._justify=e||t["ɵq"].start},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"wrap",{set:function(e){this._wrap=e||t["ɵr"].noWrap},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-orientation"),G("design:type",Object)],e.prototype,"_orientation",void 0),q([i.HostBinding("attr.data-gutter"),G("design:type",Object)],e.prototype,"_gutter",void 0),q([i.HostBinding("attr.data-spacing"),G("design:type",String)],e.prototype,"_spacing",void 0),q([i.HostBinding("attr.data-padding"),G("design:type",String)],e.prototype,"_padding",void 0),q([i.HostBinding("attr.data-align"),G("design:type",String)],e.prototype,"_align",void 0),q([i.HostBinding("attr.data-justify"),G("design:type",String)],e.prototype,"_justify",void 0),q([i.HostBinding("attr.data-wrap"),G("design:type",String)],e.prototype,"_wrap",void 0),q([Zt({description:"Defined main axis of elements align",path:"ui.orientation",default:t["ɵn"].vertical,options:[t["ɵn"].vertical,t["ɵn"].horizontal]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"orientation",null),q([Zt({description:"Space between elements in main axis",path:"ui.gutter",default:t["ɵo"].normal,options:[t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].big,t["ɵo"].large,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"gutter",null),q([Zt({description:"Space between elements when wrapping on horizontal mode",path:"ui.gutter",options:[t["ɵo"].none,t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].big,t["ɵo"].large,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"spacing",null),q([Zt({description:"Padding for stack",path:"ui.gutter",options:[t["ɵo"].none,t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].big,t["ɵo"].large,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"padding",null),q([Zt({description:"Align of elements in main axis",path:"ui.align",default:t["ɵp"].start,options:[t["ɵp"].start,t["ɵp"].center,t["ɵp"].end,t["ɵp"].baseline,t["ɵp"].stretch]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"align",null),q([Zt({description:"Align of elements in secondary axis",path:"ui.justify",default:t["ɵq"].start,options:[t["ɵq"].start,t["ɵq"].center,t["ɵq"].end,t["ɵq"].between,t["ɵq"].around,t["ɵq"].evenly]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"justify",null),q([Zt({description:"Wrapping of elements in main axis",path:"ui.wrap",default:t["ɵr"].noWrap,options:[t["ɵr"].noWrap,t["ɵr"].wrap,t["ɵr"].reverse]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"wrap",null),e=q([i.Component({selector:"jnt-stack",template:"<ng-content></ng-content>"})],e)}(),qe=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],declarations:[Ne],entryComponents:[Ne],exports:[Ne]})],t)}(),Ve=function(){function e(){this.host="jnt-spinner-host",this._size=t["ɵm"].normal}return Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([Zt({description:"Spinner size",path:"ui.size",default:t["ɵm"].normal,options:[t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),e=q([i.Component({selector:"jnt-spinner",template:'<svg child-of="jnt-spinner-host" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">\n  <path child-of="jnt-spinner-host" data-stroke-spinner1 d="M26.59 19C25.55 23 21.6 27 16.0001 27C10.4 27 6.55 23 5.41003 19" stroke="white" stroke-width="2" stroke-linecap="round"></path>\n  <path child-of="jnt-spinner-host" data-stroke-spinner2 d="M5.41003 13C6.55 9 10.4046 5 16.0001 5C21.5956 5 25.55 9 26.59 13" stroke="white" stroke-width="2" stroke-linecap="round"></path>\n</svg>'})],e)}(),Ge=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],declarations:[Ve],entryComponents:[Ve],exports:[Ve]})],t)}(),We=function(){function e(e){var n,o,r,a=this;this.queries=((n={})[t.Breakpoint.mobile]=window.matchMedia("(max-width: 768px)"),n[t.Breakpoint.tablet]=window.matchMedia("(min-width: 769px) and (max-width: 992px)"),n[t.Breakpoint.desktop]=window.matchMedia("(min-width: 993px) and (max-width: 1200px)"),n[t.Breakpoint.wide]=window.matchMedia("(min-width: 1201px)"),n),this.current=null,this.changed=new i.EventEmitter(null);var s=function(t){var n=t,o=l.queries[t],i=function(t){t.matches&&e.run((function(){a.current=n,a.changed.emit(n)}))};i(o),o.addListener((function(t){return i(t)}))},l=this;try{for(var p=W(Object.keys(this.queries)),c=p.next();!c.done;c=p.next()){s(c.value)}}catch(t){o={error:t}}finally{try{c&&!c.done&&(r=p.return)&&r.call(p)}finally{if(o)throw o.error}}}return e.ctorParameters=function(){return[{type:i.NgZone}]},e=q([i.Injectable(),G("design:paramtypes",[i.NgZone])],e)}(),Ye=function(){function t(){this.platform={iOS:!!navigator.userAgent.match(/iPhone|iPad|iPod/i),android:!!navigator.userAgent.match(/Android/i),blackBerry:!!navigator.userAgent.match(/BlackBerry/i),windowsMobile:!!navigator.userAgent.match(/IEMobile/i),mac:!!navigator.userAgent.match(/Mac/i),linux:!!navigator.userAgent.match(/Linux/i),windows:!!navigator.userAgent.match(/Windows|Win32|Win64/i)},this.mobile=!!navigator.userAgent.match(/Mobile/i)||this.platform.iOS||this.platform.android||this.platform.blackBerry||this.platform.windowsMobile,this.desktop=void 0===window.orientation}return t=q([i.Injectable()],t)}(),Ue=function(){function t(t,e,n){this.templateRef=t,this.viewContainerRef=e,this.device=n}return t.prototype.ngOnInit=function(){this.matched(this.device)},t.prototype.matched=function(t){this.view||(t?this.view=this.viewContainerRef.createEmbeddedView(this.templateRef):this.view&&(this.viewContainerRef.clear(),this.view=null))},t}(),$e=function(t){function e(e,n,o){return t.call(this,e,n,o.mobile)||this}return D(e,t),e.ctorParameters=function(){return[{type:i.TemplateRef},{type:i.ViewContainerRef},{type:Ye}]},e=q([i.Directive({selector:"[jntForMobileDevice]"}),G("design:paramtypes",[i.TemplateRef,i.ViewContainerRef,Ye])],e)}(Ue),Xe=function(t){function e(e,n,o){return t.call(this,e,n,o.platform.iOS)||this}return D(e,t),e.ctorParameters=function(){return[{type:i.TemplateRef},{type:i.ViewContainerRef},{type:Ye}]},e=q([i.Directive({selector:"[jntForIOSPlatform]"}),G("design:paramtypes",[i.TemplateRef,i.ViewContainerRef,Ye])],e)}(Ue),Qe=function(t){function e(e,n,o){return t.call(this,e,n,o.platform.android)||this}return D(e,t),e.ctorParameters=function(){return[{type:i.TemplateRef},{type:i.ViewContainerRef},{type:Ye}]},e=q([i.Directive({selector:"[jntForAndroidPlatform]"}),G("design:paramtypes",[i.TemplateRef,i.ViewContainerRef,Ye])],e)}(Ue),Ke=function(t){function e(e,n,o){return t.call(this,e,n,o.desktop)||this}return D(e,t),e.ctorParameters=function(){return[{type:i.TemplateRef},{type:i.ViewContainerRef},{type:Ye}]},e=q([i.Directive({selector:"[jntForDesktop]"}),G("design:paramtypes",[i.TemplateRef,i.ViewContainerRef,Ye])],e)}(Ue),Je=[t.Breakpoint.mobile,t.Breakpoint.tablet,t.Breakpoint.desktop,t.Breakpoint.wide],Ze=function(){function t(t,e,n){this.breakpoint=t,this.templateRef=e,this.viewContainerRef=n,this.destroyed=!1,this._target=[]}return t.prototype.ngOnInit=function(){var t=this;this.matched(this.breakpoint.current),this.breakpoint.changed.pipe(p.takeWhile((function(){return!t.destroyed}))).subscribe((function(e){return t.matched(e)}))},t.prototype.ngOnDestroy=function(){this.destroyed=!0},t.prototype.matched=function(t){this._target.includes(t)?this.view||(this.view=this.viewContainerRef.createEmbeddedView(this.templateRef)):this.view&&(this.viewContainerRef.clear(),this.view=null)},t}(),tn=function(t){function e(e,n,o){return t.call(this,e,n,o)||this}return D(e,t),Object.defineProperty(e.prototype,"target",{set:function(t){this._target=[t]},enumerable:!0,configurable:!0}),e.ctorParameters=function(){return[{type:We},{type:i.TemplateRef},{type:i.ViewContainerRef}]},q([Zt({name:"jntFor",description:"Target break point for rendering",path:"ui.breakpoints",options:Je}),i.Input("jntFor"),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"target",null),e=q([i.Directive({selector:"[jntFor]"}),G("design:paramtypes",[We,i.TemplateRef,i.ViewContainerRef])],e)}(Ze),en=((Me={})[t.Breakpoint.mobile]=[t.Breakpoint.mobile,t.Breakpoint.tablet,t.Breakpoint.desktop,t.Breakpoint.wide],Me[t.Breakpoint.tablet]=[t.Breakpoint.tablet,t.Breakpoint.desktop,t.Breakpoint.wide],Me[t.Breakpoint.desktop]=[t.Breakpoint.desktop,t.Breakpoint.wide],Me[t.Breakpoint.wide]=[t.Breakpoint.wide],Me),nn=function(t){function e(e,n,o){return t.call(this,e,n,o)||this}return D(e,t),Object.defineProperty(e.prototype,"target",{set:function(t){this._target=en[t]},enumerable:!0,configurable:!0}),e.ctorParameters=function(){return[{type:We},{type:i.TemplateRef},{type:i.ViewContainerRef}]},q([Zt({name:"jntMinFor",description:"Min break point for rendering",path:"ui.breakpoints",options:Je}),i.Input("jntMinFor"),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"target",null),e=q([i.Directive({selector:"[jntMinFor]"}),G("design:paramtypes",[We,i.TemplateRef,i.ViewContainerRef])],e)}(Ze),on=((Pe={})[t.Breakpoint.mobile]=[t.Breakpoint.mobile],Pe[t.Breakpoint.tablet]=[t.Breakpoint.mobile,t.Breakpoint.tablet],Pe[t.Breakpoint.desktop]=[t.Breakpoint.mobile,t.Breakpoint.tablet,t.Breakpoint.desktop],Pe[t.Breakpoint.wide]=[t.Breakpoint.mobile,t.Breakpoint.tablet,t.Breakpoint.desktop,t.Breakpoint.wide],Pe),rn=function(t){function e(e,n,o){return t.call(this,e,n,o)||this}return D(e,t),Object.defineProperty(e.prototype,"target",{set:function(t){this._target=on[t]},enumerable:!0,configurable:!0}),e.ctorParameters=function(){return[{type:We},{type:i.TemplateRef},{type:i.ViewContainerRef}]},q([Zt({name:"jntMaxFor",description:"Max break point for rendering",path:"ui.breakpoints",options:Je}),i.Input("jntMaxFor"),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"target",null),e=q([i.Directive({selector:"[jntMaxFor]"}),G("design:paramtypes",[We,i.TemplateRef,i.ViewContainerRef])],e)}(Ze),an=function(){function t(){}return t=q([i.NgModule({declarations:[tn,nn,rn,$e,Xe,Qe,Ke],exports:[tn,nn,rn,$e,Xe,Qe,Ke],providers:[We,Ye]})],t)}(),sn=function(){function t(){}return t.prototype.transform=function(t){return c.getYear(t)},t=q([i.Pipe({name:"jntGetYear"})],t)}(),ln=function(){function t(){}return t.prototype.transform=function(t,e){return c.addMonths(t,e)},t=q([i.Pipe({name:"jntAddMonth"})],t)}(),pn=function(){function t(){}return t.prototype.transform=function(t,e){return c.addYears(t,e)},t=q([i.Pipe({name:"jntAddYears"})],t)}(),cn=function(){function t(){}return t.prototype.transform=function(t,e){return d(t,e)},t=q([i.Pipe({name:"jntDifferenceInCalendarDays"})],t)}(),dn=function(){function t(){}return t.prototype.transform=function(t){return u(t)},t=q([i.Pipe({name:"jntEndOfDay"})],t)}(),un=function(){function t(){}return t.prototype.transform=function(t){return g(t)},t=q([i.Pipe({name:"jntEndOfMonth"})],t)}(),gn=function(){function t(){}return t=q([i.Injectable()],t)}(),hn={assets:"assets",hash:c.format(new Date,"ddLLyyyy"),i18n:Ct,weekStartsOn:0,locale:{ui:Tt,dfns:f.enUS}},fn=function(){function t(t){this.config=t}return t.prototype.transform=function(t){return h(t,{locale:this.config.locale.dfns,weekStartsOn:this.config.weekStartsOn})},t.ctorParameters=function(){return[{type:gn}]},t=q([i.Pipe({name:"jntEndOfWeek"}),G("design:paramtypes",[gn])],t)}(),mn=function(){function t(){}return t.prototype.transform=function(t){return m(t)},t=q([i.Pipe({name:"jntEndOfYear"})],t)}(),yn=function(){function t(t){this.config=t}return t.prototype.transform=function(t,e){return y(t,e,{locale:this.config.locale.dfns,weekStartsOn:this.config.weekStartsOn})},t.ctorParameters=function(){return[{type:gn}]},t=q([i.Pipe({name:"jntFormat"}),G("design:paramtypes",[gn])],t)}(),bn=function(){function t(){}return t.prototype.transform=function(t){return b(t)},t=q([i.Pipe({name:"jntGetDate"})],t)}(),vn=function(){function t(){}return t.prototype.transform=function(t){return v(t)},t=q([i.Pipe({name:"jntGetDaysInMonth"})],t)}(),jn=function(){function t(){}return t.prototype.transform=function(t,e){return j(t,e)},t=q([i.Pipe({name:"jntIsAfter"})],t)}(),kn=function(){function t(){}return t.prototype.transform=function(t,e){return k(t,e)},t=q([i.Pipe({name:"jntIsBefore"})],t)}(),wn=function(){function t(){}return t.prototype.transform=function(t,e){return w(t,e)},t=q([i.Pipe({name:"jntIsEqual"})],t)}(),Cn=function(){function t(){}return t.prototype.transform=function(t,e){return C(t,e)},t=q([i.Pipe({name:"jntIsSameMonth"})],t)}(),Tn=function(){function t(){}return t.prototype.transform=function(t,e){return T(t,e)},t=q([i.Pipe({name:"jntIsSameYear"})],t)}(),On=function(){function t(){}return t.prototype.transform=function(t){return O(t)},t=q([i.Pipe({name:"jntIsThisMonth"})],t)}(),In=function(){function t(){}return t.prototype.transform=function(t){return I(t)},t=q([i.Pipe({name:"jntIsThisYear"})],t)}(),Sn=function(){function t(){}return t.prototype.transform=function(t){return S(t)},t=q([i.Pipe({name:"jntIsToday"})],t)}(),xn=function(){function t(){}return t.prototype.transform=function(t){return x(t)},t=q([i.Pipe({name:"jntIsWeekend"})],t)}(),Mn=function(){function t(){}return t.prototype.transform=function(t){return M(t)},t=q([i.Pipe({name:"jntMax"})],t)}(),Pn=function(){function t(){}return t.prototype.transform=function(t){return P(t)},t=q([i.Pipe({name:"jntMin"})],t)}(),_n=function(){function t(){}return t.prototype.transform=function(t){return _(t)},t=q([i.Pipe({name:"jntStartOfDay"})],t)}(),Bn=function(){function t(){}return t.prototype.transform=function(t){return B(t)},t=q([i.Pipe({name:"jntStartOfMonth"})],t)}(),zn=function(){function t(t){this.config=t}return t.prototype.transform=function(t){return z(t,{locale:this.config.locale.dfns,weekStartsOn:this.config.weekStartsOn})},t.ctorParameters=function(){return[{type:gn}]},t=q([i.Pipe({name:"jntStartOfWeek"}),G("design:paramtypes",[gn])],t)}(),Hn=function(){function t(){}return t.prototype.transform=function(t){return H(t)},t=q([i.Pipe({name:"jntStartOfYear"})],t)}(),En=function(){function t(){}return t.prototype.transform=function(t,e){return c.subMonths(t,e)},t=q([i.Pipe({name:"jntSubMonth"})],t)}(),Fn=function(){function t(){}return t.prototype.transform=function(t,e){return c.subYears(t,e)},t=q([i.Pipe({name:"jntSubYears"})],t)}(),Rn={x1:"eeeee",x2:"eeeeee",x3:"eee",full:"eeee"},An=function(){function t(t){this.config=t}return t.prototype.transform=function(t,e){void 0===e&&(e="full");var n={locale:this.config.locale.dfns,weekStartsOn:this.config.weekStartsOn},o=new Date,i=E({start:z(o,n),end:h(o,n)});return y(i[t],Rn[e],n)},t.ctorParameters=function(){return[{type:gn}]},t=q([i.Pipe({name:"jntWeekdayName"}),G("design:paramtypes",[gn])],t)}(),Ln=function(){function t(){}return t=q([i.NgModule({declarations:[yn,cn,_n,Bn,Hn,zn,dn,un,mn,fn,vn,bn,jn,kn,wn,Cn,Tn,Sn,xn,Mn,Pn,An,On,In,ln,En,pn,Fn,sn],exports:[yn,cn,_n,Bn,Hn,zn,dn,un,mn,fn,vn,bn,jn,kn,wn,Cn,Tn,Sn,xn,Mn,Pn,An,On,In,ln,En,pn,Fn,sn]})],t)}();!function(t){t.font="font",t.svg="svg",t.animated="animated"}(_e||(_e={})),function(t){t.stroked="stroked",t.filled="filled"}(Be||(Be={}));var Dn=function(){function t(t,e,n,o,i){this.http=t,this.renderer=e,this.cache=n,this.hostRef=o,this.config=i,this.host="jnt-animated-icon-host",this.iconset$=new s.BehaviorSubject("default"),this.icon$=new s.BehaviorSubject(null)}return Object.defineProperty(t.prototype,"iconset",{get:function(){return this.iconset$.getValue()},set:function(t){this.iconset$.next(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"icon",{get:function(){return this.icon$.getValue()},set:function(t){this.icon$.next(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"color",{get:function(){return this._color},set:function(t){this._color=t,this.svg&&this.render()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasColor",{get:function(){return!!this.color},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){var t=this;s.combineLatest([this.iconset$,this.icon$]).pipe(p.filter((function(t){var e=Y(t,2),n=e[0],o=e[1];return!!n&&!!o})),p.distinctUntilChanged()).subscribe((function(){return t.load()}))},t.prototype.render=function(){this.color&&(this.tags.includes(Be.stroked)&&this.svg.setAttribute("stroke",this.color),this.tags.includes(Be.filled)&&this.svg.setAttribute("fill",this.color));var t=this.hostRef.nativeElement;this.renderer.setProperty(t,"innerHTML",this.svg.outerHTML)},t.prototype.load=function(){var t=this,e=this.config.assets+"/icons/animated/"+this.iconset+"/"+this.icon+".svg?hash="+this.config.hash,n=this.cache.get(e);void 0===n?this.http.get(e,{responseType:"text"}).pipe(p.map((function(t){return(new DOMParser).parseFromString(t,"application/xml")}))).subscribe((function(o){n=o.documentElement;var i=function(e){e.setAttribute("child-of",t.host);for(var n=0;n<e.children.length;n++)i(e.children[n])};i(n),n.setAttribute("width","100%"),n.setAttribute("height","100%"),t.svg=n,t.render(),t.cache.set(e,n)})):(this.svg=n,this.render())},t.ctorParameters=function(){return[{type:F.HttpClient},{type:i.Renderer2},{type:me},{type:i.ElementRef},{type:gn}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.Input(),G("design:type",String),G("design:paramtypes",[String])],t.prototype,"iconset",null),q([i.HostBinding("attr.data-icon"),i.Input(),G("design:type",String),G("design:paramtypes",[String])],t.prototype,"icon",null),q([Zt({description:"Color for icon",type:"[ui.color]"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],t.prototype,"color",null),q([i.HostBinding("attr.data-has-color"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"hasColor",null),q([i.Input(),i.HostBinding("attr.data-tags"),G("design:type",Array)],t.prototype,"tags",void 0),t=q([i.Component({selector:"jnt-animated-icon",template:'<svg child-of="jnt-animated-icon-host" viewBox="0 0 32 32" data-mock>\n  <path child-of="jnt-animated-icon-host" d="M25.313 4c1.438 0 2.688 1.25 2.688 2.688v18.625c0 1.438-1.25 2.688-2.688 2.688h-18.625c-1.438 0-2.688-1.25-2.688-2.688v-18.625c0-1.438 1.25-2.688 2.688-2.688h18.625zM25.313 6.688h-18.625v18.625h18.625v-18.625z"></path>\n</svg>'}),G("design:paramtypes",[F.HttpClient,i.Renderer2,me,i.ElementRef,gn])],t)}(),Nn=function(){function t(){this.host="jnt-font-icon-host",this.iconset="junte-ui-icons-default",this.color=null}return Object.defineProperty(t.prototype,"class",{get:function(){return this.iconset+"-"+this.icon},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.HostBinding("attr.data-icon"),i.Input(),G("design:type",String)],t.prototype,"icon",void 0),q([i.HostBinding("style.font-family"),i.Input(),G("design:type",Object)],t.prototype,"iconset",void 0),q([i.HostBinding("class"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"class",null),q([Zt({description:"Color for icon",type:"[ui.color]"}),i.Input(),G("design:type",Object)],t.prototype,"color",void 0),t=q([i.Component({selector:"jnt-font-icon",template:""})],t)}(),qn=function(){function e(){this.host="jnt-icon-host",this.iconType=_e,this._size=t["ɵm"].auto,this._stroke=Et.normal,this.type=_e.font,this.iconset="junte-ui-icons-default",this.color=null}return Object.defineProperty(e.prototype,"icon",{set:function(t){var e;if(t){var n=Y(t.split(":"),4),o=n[0],i=n[1],r=n[2],a=n[3];e=Y([o,i||_e.font,r||"junte-ui-icons-default",a?a.split("|"):[]],4),this._icon=e[0],this.type=e[1],this.iconset=e[2],this.tags=e[3]}else console.warn("Icon query was not passed")},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"stroke",{get:function(){return this._stroke},set:function(t){this._stroke=t||Et.normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([i.HostBinding("attr.data-icon"),G("design:type",String)],e.prototype,"_icon",void 0),q([i.HostBinding("attr.data-type"),G("design:type",String)],e.prototype,"type",void 0),q([i.HostBinding("attr.tags"),G("design:type",Array)],e.prototype,"tags",void 0),q([Zt({description:"Icon query in special format",type:"[name:type:iconset]"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"icon",null),q([Zt({description:"Stroke for icon",type:"[ui.stroke]"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"stroke",null),q([Zt({description:"Size for icon",type:"[ui.size]"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Color for icon",type:"[ui.color]"}),i.Input(),G("design:type",Object)],e.prototype,"color",void 0),e=q([i.Component({selector:"jnt-icon",template:'<ng-container [ngSwitch]="type">\n  <jnt-font-icon child-of="jnt-icon-host" *ngSwitchCase="iconType.font"\n                 [icon]="_icon"\n                 [iconset]="iconset"\n                 [color]="color"></jnt-font-icon>\n  <jnt-svg-icon child-of="jnt-icon-host" *ngSwitchCase="iconType.svg"\n                [icon]="_icon"\n                [iconset]="iconset"\n                [stroke]="stroke"\n                [color]="color"\n                [tags]="tags"></jnt-svg-icon>\n  <jnt-animated-icon child-of="jnt-icon-host" *ngSwitchCase="iconType.animated"\n                     [icon]="_icon"\n                     [iconset]="iconset"\n                     [color]="color"\n                     [tags]="tags"></jnt-animated-icon>\n</ng-container>'})],e)}(),Vn=function(){function t(t,e,n,o,i){this.config=t,this.http=e,this.cache=n,this.hostRef=o,this.renderer=i,this.host="jnt-svg-icon-host",this.icon$=new s.BehaviorSubject(null),this.iconset$=new s.BehaviorSubject("default"),this._stroke=Et.normal}return Object.defineProperty(t.prototype,"iconset",{get:function(){return this.iconset$.getValue()},set:function(t){this.iconset$.next(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"icon",{get:function(){return this.icon$.getValue()},set:function(t){this.icon$.next(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"stroke",{get:function(){return this._stroke},set:function(t){this._stroke=t||Et.normal},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"color",{get:function(){return this._color},set:function(t){this._color=t,this.svg&&this.render()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasColor",{get:function(){return!!this.color},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){var t=this;s.combineLatest([this.iconset$,this.icon$]).pipe(p.filter((function(t){var e=Y(t,2),n=e[0],o=e[1];return!!n&&!!o})),p.distinctUntilChanged()).subscribe((function(){return t.load()}))},t.prototype.render=function(){this.color&&(this.tags.includes(Be.stroked)&&this.svg.setAttribute("stroke",this.color),this.tags.includes(Be.filled)&&this.svg.setAttribute("fill",this.color));var t=this.hostRef.nativeElement;this.renderer.setProperty(t,"innerHTML",this.svg.outerHTML)},t.prototype.load=function(){var t=this,e=this.config.assets+"/icons/svg/"+this.iconset+".xml?hash="+this.config.hash,n=e+"|"+this.icon,o=this.cache.get(n);if(void 0===o){var i=this.cache.get(e);void 0===i&&(i=new s.BehaviorSubject(null),this.cache.set(e,i),this.http.get(e,{responseType:"text"}).subscribe((function(t){return i.next((new DOMParser).parseFromString(t,"application/xml"))}))),i.pipe(p.filter((function(t){return!!t}))).subscribe((function(e){if(!(o=e.querySelector("[id="+t.icon+"]")))throw new Error("icon ["+t.icon+"] not found");var i=function(e){e.setAttribute("child-of",t.host);for(var n=0;n<e.children.length;n++)i(e.children[n])};i(o),o.setAttribute("width","100%"),o.setAttribute("height","100%"),t.svg=o,t.render(),t.cache.set(n,o)}))}else this.svg=o,this.render()},t.ctorParameters=function(){return[{type:gn},{type:F.HttpClient},{type:me},{type:i.ElementRef},{type:i.Renderer2}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.Input(),G("design:type",String),G("design:paramtypes",[String])],t.prototype,"iconset",null),q([i.HostBinding("attr.data-icon"),i.Input(),G("design:type",String),G("design:paramtypes",[String])],t.prototype,"icon",null),q([i.HostBinding("attr.data-stroke"),G("design:type",String)],t.prototype,"_stroke",void 0),q([i.Input(),i.HostBinding("attr.data-tags"),G("design:type",Array)],t.prototype,"tags",void 0),q([i.Input(),G("design:type",String),G("design:paramtypes",[String])],t.prototype,"stroke",null),q([Zt({description:"Color for icon",type:"[ui.color]"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],t.prototype,"color",null),q([i.HostBinding("attr.data-has-color"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"hasColor",null),t=q([i.Component({selector:"jnt-svg-icon",template:'<svg child-of="jnt-svg-icon-host" child-of="jnt-svg-icon-host" width="100%" height="100%" viewBox="0 0 32 32">\n  <path child-of="jnt-svg-icon-host" child-of="jnt-svg-icon-host"\n        d="M25.313 4c1.438 0 2.688 1.25 2.688 2.688v18.625c0 1.438-1.25 2.688-2.688 2.688h-18.625c-1.438 0-2.688-1.25-2.688-2.688v-18.625c0-1.438 1.25-2.688 2.688-2.688h18.625zM25.313 6.688h-18.625v18.625h18.625v-18.625z"></path>\n</svg>'}),G("design:paramtypes",[gn,F.HttpClient,me,i.ElementRef,i.Renderer2])],t)}(),Gn=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,F.HttpClientModule],declarations:[qn,Nn,Dn,Vn],entryComponents:[qn],exports:[qn]})],t)}(),Wn=function(){function e(){this.host="jnt-badge-host",this._position=t.Position.rightTop,this._color=st.purple,this._overflow=null}return Object.defineProperty(e.prototype,"overflow",{get:function(){return this._overflow},set:function(t){this._overflow=t||null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"color",{get:function(){return this._color},set:function(t){this._color=t||st.purple},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"position",{set:function(e){this._position=e||t.Position.inline},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-position"),G("design:type",String)],e.prototype,"_position",void 0),q([Zt({description:"Text to show in badge",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"text",void 0),q([Zt({description:"Number to show in badge",type:"number"}),i.Input(),G("design:type",Number)],e.prototype,"value",void 0),q([Zt({description:"Max count to show",type:"number",default:"99"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"overflow",null),q([Zt({description:"Badge background color",type:"string",default:"ui.color.primary"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"color",null),q([Zt({description:"Badge position",path:"ui.position",default:"inline",options:[t.Position.inline,t.Position.rightTop,t.Position.leftTop]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"position",null),e=q([i.Component({selector:"jnt-badge",template:'<ng-content></ng-content>\n<div child-of="jnt-badge-host" data-text [style.background-color]="color"\n     [style.color]="color | textBrightness">\n  {{!!text ? text : (overflow === null || overflow > value ? value : overflow + \'+\')}}\n</div>'})],e)}(),Yn=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,He],declarations:[Wn],entryComponents:[Wn],exports:[Wn]})],t)}(),Un=function(){function n(){this.host="jnt-button-host",this.ui=Yt,this._type=t["ɵw"].button,this._scheme=t["ɵt"].primary,this._size=t["ɵm"].normal,this._outline=t["ɵu"].fill,this._width=t["ɵv"].default,this._shape=t["ɵs"].square,this.loading=!1,this.disabled=!1,this.click=new i.EventEmitter}return Object.defineProperty(n.prototype,"shape",{set:function(e){this._shape=e||t["ɵs"].square},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"_icon",{set:function(e){this.icon="string"==typeof e?{icon:e,position:t.Position.left}:e},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"scheme",{set:function(e){this._scheme=e||t["ɵt"].primary},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"size",{get:function(){return this._size},set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"withText",{get:function(){return!!this.text},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"outline",{set:function(e){this._outline=e||t["ɵu"].fill},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"width",{set:function(e){this._width=e||t["ɵv"].default},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"disable",{get:function(){return this.disabled||this.loading},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"type",{get:function(){return this._type},set:function(e){this._type=e||t["ɵw"].button},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],n.prototype,"host",void 0),q([i.HostBinding("attr.data-scheme"),G("design:type",String)],n.prototype,"_scheme",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],n.prototype,"_size",void 0),q([i.HostBinding("attr.data-outline"),G("design:type",String)],n.prototype,"_outline",void 0),q([i.HostBinding("attr.data-width"),G("design:type",String)],n.prototype,"_width",void 0),q([i.HostBinding("attr.data-shape"),G("design:type",String)],n.prototype,"_shape",void 0),q([Zt({description:"Button shape",path:"ui.shape",default:t["ɵs"].square,options:[t["ɵs"].circle,t["ɵs"].square]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"shape",null),q([Zt({description:"Set the loading status of button",type:"boolean",default:"false"}),i.HostBinding("attr.data-loading"),i.Input(),G("design:type",Object)],n.prototype,"loading",void 0),q([Zt({name:"icon",description:"Icon for button",type:"string | {icon: string, position: Position}"}),i.Input("icon"),G("design:type",Object),G("design:paramtypes",[Object])],n.prototype,"_icon",null),q([Zt({description:"Button color scheme",path:"ui.scheme",options:[t["ɵt"].primary,t["ɵt"].secondary,t["ɵt"].success,t["ɵt"].fail],default:t["ɵt"].primary}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"scheme",null),q([Zt({description:"Button size",path:"ui.size",options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large],default:t["ɵm"].normal}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"size",null),q([i.HostBinding("attr.data-with-text"),G("design:type",Object),G("design:paramtypes",[])],n.prototype,"withText",null),q([Zt({description:"Button outline",path:"ui.outline",default:t["ɵu"].fill,options:[t["ɵu"].transparent,t["ɵu"].ghost,t["ɵu"].fill]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"outline",null),q([Zt({description:"Button width",path:"ui.width",default:t["ɵv"].default,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"width",null),q([i.HostBinding("attr.data-disabled"),G("design:type",Object),G("design:paramtypes",[])],n.prototype,"disable",null),q([Zt({description:"Set disabled state",type:"boolean",default:"false"}),i.Input(),G("design:type",Object)],n.prototype,"disabled",void 0),q([Zt({description:"Button typeControl",path:"ui.button.type",default:t["ɵw"].button,options:[t["ɵw"].button,t["ɵw"].submit]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"type",null),q([Zt({description:"Text on button",type:"string"}),i.Input(),G("design:type",String)],n.prototype,"text",void 0),q([Zt({description:"Click event",path:"EventEmitter"}),i.Output(),G("design:type",Object)],n.prototype,"click",void 0),q([i.ContentChildren(Wn),G("design:type",i.QueryList)],n.prototype,"badges",void 0),n=q([i.Component({selector:"jnt-button",template:'<button child-of="jnt-button-host" [type]="type" [disabled]="disabled || loading">\n  <jnt-spinner child-of="jnt-button-host" data-loading *ngIf="loading" [@appear]="loading"></jnt-spinner>\n  <jnt-stack child-of="jnt-button-host" [orientation]="ui.orientation.horizontal"\n             [align]="ui.align.center"\n             [gutter]="ui.gutter.small">\n    <jnt-icon child-of="jnt-button-host" *ngIf="!!icon && icon.position === ui.position.left"\n              [@visibility]="loading  ? \'hide\' : \'show\'"\n              [icon]="icon?.icon">\n    </jnt-icon>\n\n    <div child-of="jnt-button-host" data-text *ngIf="!!text"\n         [@visibility]="loading  ? \'hide\' : \'show\'">\n      {{text}}\n    </div>\n\n    <jnt-stack child-of="jnt-button-host" data-badges *ngIf="badges.length > 0"\n               [@visibility]="loading  ? \'hide\' : \'show\'"\n               [orientation]="ui.orientation.horizontal"\n               [gutter]="ui.gutter.tiny">\n      <jnt-badge child-of="jnt-button-host" data-badge *ngFor="let badge of badges"\n                 [color]="badge.color"\n                 [value]="badge.value"\n                 [overflow]="badge.overflow"\n                 [position]="ui.position.inline">\n      </jnt-badge>\n    </jnt-stack>\n\n    <jnt-icon child-of="jnt-button-host" *ngIf="!!icon && icon.position === ui.position.right"\n              [@visibility]="loading  ? \'hide\' : \'show\'"\n              [icon]="icon?.icon">\n    </jnt-icon>\n\n    <div child-of="jnt-button-host" data-empty *ngIf="!icon && !badges.length && !text" [@visibility]="loading  ? \'hide\' : \'show\'"></div>\n  </jnt-stack>\n</button>',animations:[e.trigger("appear",[e.state("void",e.style({opacity:0,width:"200px",height:"200px"})),e.state("*",e.style({opacity:1,width:"*",height:"*"})),e.transition("void => *",[e.animate(".5s ease-in-out")])]),e.trigger("visibility",[e.state("show",e.style({visibility:"visible",opacity:1})),e.state("hide",e.style({visibility:"collapse",opacity:0})),e.transition("show <=> hide",[e.animate(".5s ease-in-out")])])]})],n)}(),$n=function(){function e(){this.host="jnt-button-group-host",this.ui=Yt,this.size=t["ɵm"].normal,this.scheme=t["ɵt"].primary,this.outline=t["ɵu"].fill,this.width=t["ɵv"].default}return q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.ContentChildren(Un,{descendants:!0}),G("design:type",i.QueryList)],e.prototype,"buttons",void 0),q([Zt({description:"Button group size",path:"ui.size",options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large],default:t["ɵm"].normal}),i.Input(),G("design:type",String)],e.prototype,"size",void 0),q([Zt({description:"Button group color scheme",path:"ui.scheme",options:[t["ɵt"].primary,t["ɵt"].secondary,t["ɵt"].success,t["ɵt"].fail],default:t["ɵt"].primary}),i.Input(),G("design:type",String)],e.prototype,"scheme",void 0),q([Zt({description:"Button group outline",path:"ui.outline",default:t["ɵu"].fill,options:[t["ɵu"].transparent,t["ɵu"].ghost,t["ɵu"].fill]}),i.Input(),G("design:type",String)],e.prototype,"outline",void 0),q([Zt({description:"Button group width",path:"ui.width",default:t["ɵv"].default,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.HostBinding("attr.data-width"),i.Input(),G("design:type",String)],e.prototype,"width",void 0),e=q([i.Component({selector:"jnt-button-group",template:'<jnt-button child-of="jnt-button-group-host" data-button *ngFor="let button of buttons"\n            [text]="button.text"\n            [size]="size"\n            [scheme]="scheme"\n            [outline]="outline"\n            [icon]="button.icon"\n            [loading]="button.loading"\n            [disabled]="button.disabled"\n            [type]="button.type"\n            [shape]="button.shape"\n            [width]="button.width"\n            (click)="button.click.emit($event)">\n  <jnt-badge child-of="jnt-button-group-host" *ngFor="let badge of button.badges"\n             [value]="badge.value"\n             [text]="badge.text"\n             [overflow]="badge.overflow"\n             [color]="badge.color"\n             [position]="badge.position">\n  </jnt-badge>\n</jnt-button>'})],e)}(),Xn=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Yn,Gn,Ge,qe],declarations:[Un,$n],entryComponents:[Un,$n],exports:[Un,$n]})],t)}(),Qn=function(){function e(){this.ui=Yt,this._type=t["ɵbi"].text,this.host="jnt-skeleton-host",this._size=t["ɵm"].normal,this.lines=1,this.animated=!0}return Object.defineProperty(e.prototype,"type",{get:function(){return this._type},set:function(e){this._type=e||t["ɵbi"].text},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-size"),G("design:type",Object)],e.prototype,"_size",void 0),q([Zt({description:"Skeleton type",path:"ui.skeleton.type",default:t["ɵbi"].text,options:[t["ɵbi"].text,t["ɵbi"].card,t["ɵbi"].avatar,t["ɵbi"].image]}),i.HostBinding("attr.data-type"),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"type",null),q([Zt({description:"Avatar/image size",path:"ui.size",default:t["ɵm"].normal,options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Count of text lines",type:"number",default:"1"}),i.Input(),G("design:type",Object)],e.prototype,"lines",void 0),q([Zt({description:"Switch on/off animation",type:"boolean",default:"true"}),i.HostBinding("attr.data-animated"),i.Input(),G("design:type",Object)],e.prototype,"animated",void 0),e=q([i.Component({selector:"jnt-skeleton",template:'<jnt-stack child-of="jnt-skeleton-host" *ngIf="type == ui.skeleton.type.text" [gutter]="ui.gutter.big">\n  <div child-of="jnt-skeleton-host" data-line *ngFor="let l of lines | mockArray"></div>\n</jnt-stack>\n\n<div child-of="jnt-skeleton-host" data-avatar *ngIf="type === ui.skeleton.type.avatar || type === ui.skeleton.type.image"\n     [attr.data-avatar]="type === ui.skeleton.type.avatar">\n</div>\n\n<div child-of="jnt-skeleton-host" *ngIf="type === ui.skeleton.type.card" data-card></div>'})],e)}(),Kn=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,qe,we],declarations:[Qn],entryComponents:[Qn],exports:[Qn]})],t)}(),Jn=function(){function t(){}return q([Zt({description:"From date",type:"date"}),i.Input(),G("design:type",Date)],t.prototype,"from",void 0),q([Zt({description:"To date",type:"date"}),i.Input(),G("design:type",Date)],t.prototype,"to",void 0),q([ee({selector:"#indicatorMonthTemplate",description:"indicator template"}),i.ContentChild("indicatorMonthTemplate"),G("design:type",i.TemplateRef)],t.prototype,"indicatorMonthTemplate",void 0),q([ee({selector:"#indicatorYearTemplate",description:"indicator year template"}),i.ContentChild("indicatorYearTemplate"),G("design:type",i.TemplateRef)],t.prototype,"indicatorYearTemplate",void 0),t=q([i.Component({selector:"jnt-gantt-line-period",template:""})],t)}(),Zn=function(){function t(){}return q([Zt({description:"Title",type:"string",default:"Test title"}),i.Input(),G("design:type",String)],t.prototype,"title",void 0),q([ee({selector:"#ganttLineTitleTemplate",description:"title template"}),i.ContentChild("ganttLineTitleTemplate"),G("design:type",i.TemplateRef)],t.prototype,"titleTemplate",void 0),q([i.ContentChildren(Jn,{descendants:!0}),G("design:type",i.QueryList)],t.prototype,"periods",void 0),t=q([i.Component({selector:"jnt-gantt-line",template:""})],t)}(),to=function(){function t(){}return t.prototype.transform=function(t,e){return c.isSameDay(t,e)},t=q([i.Pipe({name:"isSameDay"})],t)}(),eo=function(){function t(){}return t.prototype.transform=function(t,e,n){var o=e,i=n;return c.isWithinInterval(t,{start:o,end:i})},t=q([i.Pipe({name:"isWithinInterval"})],t)}(),no=function(){function t(){}return t.prototype.transform=function(t,e){for(var n=[],o=c.differenceInCalendarMonths(e,t)+1,i=0;i<o;i++)n.push(c.addMonths(t,i));return n},t=q([i.Pipe({name:"betweenMonths"})],t)}(),oo=function(){function t(){}return t.prototype.transform=function(t,e){for(var n=[],o=c.differenceInCalendarDays(e,t)+1,i=0;i<o;i++)n.push(c.addDays(t,i));return n},t=q([i.Pipe({name:"betweenDays"})],t)}(),io=function(){function t(){}return t.prototype.transform=function(t){for(var e=c.setDate(t,1),n=c.getDaysInMonth(t),o=[],i=0;i<n;i++)o.push(c.addDays(e,i));return o},t=q([i.Pipe({name:"datesInMonth"})],t)}();var ro=function(){function t(){}return t.prototype.transform=function(t){return e=c.getYear(t),n=c.getMonth(t),12*e+n;var e,n},t=q([i.Pipe({name:"fullMonth"})],t)}(),ao=function(){function t(){}return t.prototype.transform=function(t){return c.format(t,"MMM")},t=q([i.Pipe({name:"monthName"})],t)}(),so=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],declarations:[ao,ro,io,oo,no,eo,to],exports:[ao,ro,io,oo,no,eo,to]})],t)}();function lo(){return c.startOfDay(new Date)}var po=function(){function e(e,n,o){var i=this;this.logger=e,this.breakpoint=n,this.renderer=o,this.host="jnt-gantt-host",this.ui=Yt,this.addMonths=c.addMonths,this.subMonths=c.subMonths,this.addYears=c.addYears,this.subYears=c.subYears,this.types=t.GanttTypes,this._current=new Date,this._width=t["ɵv"].fluid,this.type=t.GanttTypes.month,this.loading=!1,this.sections=this.lines,this.today=lo(),this.onChange=function(){return i.logger.error("value accessor is not registered")},this.onTouched=function(){return i.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return i.onChange=t},this.registerOnTouched=function(t){return i.onTouched=t},this.onBlur=function(){return i.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"mobile",{get:function(){return this.breakpoint.current===t.Breakpoint.mobile},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"width",{get:function(){return this._width},set:function(e){this._width=e||t["ɵv"].fluid},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"current",{get:function(){return this._current},set:function(t){this._current=t,this.onChange(t)},enumerable:!0,configurable:!0}),e.prototype.ngAfterViewInit=function(){var e=this;this.calendarDays.changes.pipe(p.delay(0),p.filter((function(){return!!e.currentLine&&e.breakpoint.current!==t.Breakpoint.mobile})),p.map((function(t){return{days:t,line:e.currentLine.nativeElement}}))).subscribe((function(t){var n=t.days,o=t.line,i=n.find((function(t){return"true"===t.nativeElement.attributes["data-current"].value}));i&&(e.renderer.setStyle(o,"display","block"),e.renderer.setStyle(o,"left",i.nativeElement.offsetLeft+i.nativeElement.offsetWidth/2-2+"px"))}))},e.prototype.writeValue=function(t){this._current=t},e.ctorParameters=function(){return[{type:a.NGXLogger},{type:We},{type:i.Renderer2}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Type of gantt",type:"ui.gantt.type.month | ui.gantt.type.year",default:t.GanttTypes.month}),i.Input(),G("design:type",String)],e.prototype,"type",void 0),q([Zt({description:"Card width",path:"ui.width",default:t["ɵv"].fluid,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.HostBinding("attr.data-width"),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"width",null),q([Zt({description:"Title",type:"string",default:"Test title"}),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([Zt({description:"Loading",type:"boolean",default:"false"}),i.Input(),G("design:type",Object)],e.prototype,"loading",void 0),q([ee({selector:"#toolsTemplate",description:"Tools template"}),i.ContentChild("toolsTemplate"),G("design:type",i.TemplateRef)],e.prototype,"toolsTemplate",void 0),q([ee({selector:"#ganttTitleTemplate",description:"title template"}),i.ContentChild("ganttTitleTemplate"),G("design:type",i.TemplateRef)],e.prototype,"titleTemplate",void 0),q([i.ContentChildren(Zn,{descendants:!0}),G("design:type",i.QueryList)],e.prototype,"lines",void 0),q([i.ViewChildren("calendarDay"),G("design:type",i.QueryList)],e.prototype,"calendarDays",void 0),q([i.ViewChild("currentLine"),G("design:type",i.ElementRef)],e.prototype,"currentLine",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-gantt",template:'<ng-template #noDataTemplate>\n  <ng-container *ngIf="loading; else emptyDataTemplate">\n    <tr child-of="jnt-gantt-host" data-loading>\n      <td child-of="jnt-gantt-host" [attr.colspan]="(current | jntGetDaysInMonth) + 2">\n        <jnt-skeleton child-of="jnt-gantt-host" [type]="ui.skeleton.type.text" [lines]="8"></jnt-skeleton>\n      </td>\n    </tr>\n  </ng-container>\n  <ng-template #emptyDataTemplate>\n    <tr child-of="jnt-gantt-host" data-nodata>\n      <td child-of="jnt-gantt-host" [attr.colspan]="(current | jntGetDaysInMonth) + 1">\n        <jnt-icon child-of="jnt-gantt-host" [icon]="ui.icons.neutral"></jnt-icon>\n      </td>\n    </tr>\n  </ng-template>\n</ng-template>\n\n<ng-template #titleDefaultTemplate let-title="title">\n  {{title}}\n</ng-template>\n<ng-template #lineTitleDefaultTemplate let-title="title">\n  {{title}}\n</ng-template>\n\n<div child-of="jnt-gantt-host" data-spinner *ngIf="!!lines.length && loading">\n  <jnt-spinner child-of="jnt-gantt-host" [size]="ui.size.large"></jnt-spinner>\n</div>\n\n<ng-template #ganttYearTemplate>\n  <ng-container *jntMinFor="ui.breakpoint.tablet">\n    <table child-of="jnt-gantt-host" data-year border="0" cellpadding="5" [cellSpacing]="0">\n      <thead child-of="jnt-gantt-host" >\n      <tr child-of="jnt-gantt-host" >\n        <td child-of="jnt-gantt-host" data-gutter></td>\n        <td child-of="jnt-gantt-host" data-empty>\n          <ng-container *ngIf="toolsTemplate">\n            <ng-container *ngTemplateOutlet="toolsTemplate"></ng-container>\n          </ng-container>\n        </td>\n        <td child-of="jnt-gantt-host" data-controls [attr.colspan]="12">\n          <div child-of="jnt-gantt-host" data-month>\n            <jnt-button child-of="jnt-gantt-host" [icon]="ui.icons.chevronLeft"\n                        [outline]="ui.outline.transparent"\n                        [scheme]="ui.scheme.secondary"\n                        [size]="ui.size.small"\n                        (click)="current = subYears(current, 1)">\n            </jnt-button>\n            <div child-of="jnt-gantt-host" >\n              {{current | jntFormat: \'yyyy\'}}\n            </div>\n            <jnt-button child-of="jnt-gantt-host" [icon]="ui.icons.chevronRight"\n                        [outline]="ui.outline.transparent"\n                        [scheme]="ui.scheme.secondary"\n                        [size]="ui.size.small"\n                        (click)="current = addYears(current, 1)">\n            </jnt-button>\n          </div>\n        </td>\n      </tr>\n      <tr child-of="jnt-gantt-host" data-timeline>\n        <td child-of="jnt-gantt-host" data-gutter></td>\n        <td child-of="jnt-gantt-host" >\n          <ng-container *ngTemplateOutlet="!!titleTemplate ? titleTemplate : titleDefaultTemplate;context: this"></ng-container>\n        </td>\n        <td child-of="jnt-gantt-host" data-day *ngFor="let month of (current | jntStartOfYear | betweenMonths:(current | jntEndOfYear))"\n            [attr.current]="month">\n          {{month | monthName}}\n        </td>\n      </tr>\n      </thead>\n      <tbody child-of="jnt-gantt-host" >\n\n      <ng-container *ngIf="lines?.length > 0; else noDataTemplate">\n        <ng-container *ngFor="let line of lines">\n\n          <ng-template #emptyYearPeriodsTabletTemplate>\n            <tr child-of="jnt-gantt-host" >\n              <td child-of="jnt-gantt-host" data-gutter></td>\n              <td child-of="jnt-gantt-host" data-title>\n                <ng-container *ngTemplateOutlet="line.titleTemplate || lineTitleDefaultTemplate; context: {title: line.title}"></ng-container>\n              </td>\n              <td child-of="jnt-gantt-host" data-day *ngFor="let day of (current | datesInMonth)">\n              </td>\n            </tr>\n          </ng-template>\n\n          <ng-container *ngIf="line.periods?.length > 0; else emptyYearPeriodsTabletTemplate">\n            <tr child-of="jnt-gantt-host" *ngFor="let period of line.periods; let i = index">\n              <ng-container *ngIf="i === 0">\n                <td child-of="jnt-gantt-host" data-gutter [attr.rowspan]="line.periods.length"></td>\n                <td child-of="jnt-gantt-host" data-title [attr.rowspan]="line.periods.length">\n                  <ng-container *ngTemplateOutlet="line.titleTemplate || lineTitleDefaultTemplate; context: {title: line.title}"></ng-container>\n                </td>\n              </ng-container>\n\n              <ng-template #periodTemplate let-from="from" let-to="to" let-start="start" let-end="end" let-period="period">\n                <td child-of="jnt-gantt-host" *ngFor="let d of start | betweenMonths:from | pop"></td>\n                <td child-of="jnt-gantt-host" [attr.colspan]="(from | betweenMonths:to).length">\n                  <ng-container *ngIf="!((period.to | jntIsBefore:start) || (period.from | jntIsAfter:end))">\n                    <ng-container *ngTemplateOutlet="period.indicatorYearTemplate;\n                      context: {period: period, current: current, today: today}">\n                    </ng-container>\n                  </ng-container>\n                </td>\n                <td child-of="jnt-gantt-host" *ngFor="let d of to | betweenMonths:end | pop"></td>\n              </ng-template>\n\n              <ng-container *ngTemplateOutlet="periodTemplate;context:\n                {start: current | jntStartOfYear,\n                  end: current | jntEndOfYear,\n                  period: period,\n                  current: current,\n                  from: [[period.from, current | jntStartOfYear] | jntMax, current | jntEndOfYear] | jntMin,\n                  to: [[period.to, current | jntEndOfYear] | jntMin, current | jntStartOfYear] | jntMax}">\n              </ng-container>\n            </tr>\n          </ng-container>\n        </ng-container>\n      </ng-container>\n\n      </tbody>\n    </table>\n  </ng-container>\n\n  \n\n  <ng-container *jntFor="ui.breakpoint.mobile">\n    <jnt-stack child-of="jnt-gantt-host" [align]="ui.align.stretch">\n      <ng-container *ngIf="toolsTemplate">\n        <ng-container *ngTemplateOutlet="toolsTemplate"></ng-container>\n      </ng-container>\n\n      <jnt-accordion child-of="jnt-gantt-host" *ngIf="lines?.length > 0">\n        <jnt-accordion-section child-of="jnt-gantt-host" *ngFor="let line of lines" [title]="line.title">\n          <ng-template #accordionContentTemplate>\n\n            <table child-of="jnt-gantt-host" cellpadding="3" [cellSpacing]="0" data-mobile>\n              <tbody child-of="jnt-gantt-host" >\n\n              <ng-template #emptyYearPeriodsMobileTemplate>\n                <tr child-of="jnt-gantt-host" data-nodata>\n                  <td child-of="jnt-gantt-host" [attr.colspan]="(current | jntGetDaysInMonth) + 1">\n                    <jnt-icon child-of="jnt-gantt-host" [icon]="ui.icons.neutral"></jnt-icon>\n                  </td>\n                </tr>\n              </ng-template>\n\n              <ng-container *ngIf="line.periods?.length > 0; else emptyYearPeriodsMobileTemplate">\n                <div child-of="jnt-gantt-host" data-controls>\n                  <div child-of="jnt-gantt-host" data-month>\n                    <jnt-button child-of="jnt-gantt-host" [icon]="ui.icons.chevronLeft"\n                                [outline]="ui.outline.transparent"\n                                [size]="ui.size.small"\n                                (click)="current = subYears(current, 1)">\n                    </jnt-button>\n                    <div child-of="jnt-gantt-host" >\n                      {{current | jntFormat: \'yyyy\'}}\n                    </div>\n                    <jnt-button child-of="jnt-gantt-host" [icon]="ui.icons.chevronRight"\n                                [outline]="ui.outline.transparent"\n                                [size]="ui.size.small"\n                                (click)="current = addYears(current, 1)">\n                    </jnt-button>\n                  </div>\n                </div>\n\n                <tr child-of="jnt-gantt-host" *ngFor="let month of (current | jntStartOfYear | betweenMonths:(current | jntEndOfYear))"\n                    [attr.current]="month">\n                  <td child-of="jnt-gantt-host" data-day>{{month | monthName}}</td>\n                  <ng-container *ngFor="let period of line.periods; let i = index">\n\n                    <ng-template #periodTemplate let-from="from" let-to="to" let-start="start" let-end="end"\n                                 let-period="period">\n                      <ng-container *ngIf="!(month | isWithinInterval:(from | jntStartOfMonth):(to | jntEndOfMonth))">\n                        <td child-of="jnt-gantt-host" ></td>\n                      </ng-container>\n                      <ng-container *ngIf="from | jntIsSameMonth:month">\n                        <td child-of="jnt-gantt-host" [attr.rowspan]="(from | betweenMonths:to).length">\n                          <ng-container *ngIf="!((period.to | jntIsBefore:start) || (period.from | jntIsAfter:end))">\n                            <ng-container *ngTemplateOutlet="period.indicatorYearTemplate;\n                                                              context: {period: period, current: current, today: today}">\n                            </ng-container>\n                          </ng-container>\n                        </td>\n                      </ng-container>\n                    </ng-template>\n\n                    <ng-container *ngTemplateOutlet="periodTemplate;context:\n                        { start: current | jntStartOfYear,\n                          end: current | jntEndOfYear,\n                          period: period,\n                          current: current,\n                          from: [[period.from, current | jntStartOfYear] | jntMax, current | jntEndOfYear] | jntMin,\n                          to: [[period.to, current | jntEndOfYear] | jntMin, current | jntStartOfYear] | jntMax}">\n                    </ng-container>\n\n                  </ng-container>\n                </tr>\n              </ng-container>\n              </tbody>\n            </table>\n\n          </ng-template>\n        </jnt-accordion-section>\n      </jnt-accordion>\n    </jnt-stack>\n\n  </ng-container>\n</ng-template>\n\n<ng-container *ngIf="type === types.month; else ganttYearTemplate">\n  <ng-container *jntMinFor="ui.breakpoint.tablet">\n    <table child-of="jnt-gantt-host" border="0" cellpadding="5" [cellSpacing]="0">\n      <thead child-of="jnt-gantt-host" >\n      <tr child-of="jnt-gantt-host" >\n        <td child-of="jnt-gantt-host" data-gutter></td>\n        <td child-of="jnt-gantt-host" data-empty>\n          <ng-container *ngIf="toolsTemplate">\n            <ng-container *ngTemplateOutlet="toolsTemplate"></ng-container>\n          </ng-container>\n        </td>\n        <td child-of="jnt-gantt-host" data-controls [attr.colspan]="(current | jntGetDaysInMonth)">\n          <div child-of="jnt-gantt-host" data-month>\n            <jnt-button child-of="jnt-gantt-host" [icon]="ui.icons.chevronLeft"\n                        [outline]="ui.outline.transparent"\n                        [scheme]="ui.scheme.secondary"\n                        [size]="ui.size.small"\n                        (click)="current = subMonths(current, 1)">\n            </jnt-button>\n            <div child-of="jnt-gantt-host" >\n              {{current | jntFormat: \'MMMM\'}}, {{current | jntFormat: \'yyyy\'}}\n            </div>\n            <jnt-button child-of="jnt-gantt-host" [icon]="ui.icons.chevronRight"\n                        [outline]="ui.outline.transparent"\n                        [scheme]="ui.scheme.secondary"\n                        [size]="ui.size.small"\n                        (click)="current = addMonths(current, 1)">\n            </jnt-button>\n          </div>\n        </td>\n      </tr>\n      <tr child-of="jnt-gantt-host" data-timeline>\n        <td child-of="jnt-gantt-host" data-gutter></td>\n        <td child-of="jnt-gantt-host" >\n          <ng-container *ngTemplateOutlet="!!titleTemplate ? titleTemplate : titleDefaultTemplate;context: this"></ng-container>\n        </td>\n        <td child-of="jnt-gantt-host" data-day *ngFor="let day of (current | datesInMonth)"\n            [attr.data-current]="day | jntIsToday"\n            [attr.data-weekend]="day | jntIsWeekend"\n            #calendarDay>\n          {{day | jntGetDate}}\n        </td>\n      </tr>\n      </thead>\n      <tbody child-of="jnt-gantt-host" >\n      <div child-of="jnt-gantt-host" data-current-line #currentLine></div>\n\n      <ng-container *ngIf="lines?.length > 0; else noDataTemplate">\n        <ng-container *ngFor="let line of lines">\n\n          <ng-template #emptyMonthPeriodsTabletTemplate>\n            <tr child-of="jnt-gantt-host" >\n              <td child-of="jnt-gantt-host" data-gutter></td>\n              <td child-of="jnt-gantt-host" data-title>\n                <ng-container *ngTemplateOutlet="line.titleTemplate || lineTitleDefaultTemplate; context: {title: line.title}"></ng-container>\n              </td>\n              <td child-of="jnt-gantt-host" data-day *ngFor="let day of (current | datesInMonth)">\n              </td>\n            </tr>\n          </ng-template>\n\n          <ng-container *ngIf="line.periods?.length > 0; else emptyMonthPeriodsTabletTemplate">\n            <tr child-of="jnt-gantt-host" *ngFor="let period of line.periods; let i = index">\n\n              <ng-container *ngIf="i === 0">\n                <td child-of="jnt-gantt-host" data-gutter [attr.rowspan]="line.periods.length"></td>\n                <td child-of="jnt-gantt-host" data-title [attr.rowspan]="line.periods.length">\n                  <ng-container *ngTemplateOutlet="line.titleTemplate || lineTitleDefaultTemplate; context: {title: line.title}"></ng-container>\n                </td>\n              </ng-container>\n\n              <ng-template #periodTemplate let-from="from" let-to="to" let-start="start" let-end="end"\n                           let-period="period">\n                <td child-of="jnt-gantt-host" *ngFor="let d of start | betweenDays:from | pop"></td>\n                <td child-of="jnt-gantt-host" [attr.colspan]="(from | betweenDays:to).length">\n                  <ng-container *ngIf="!((period.to | jntIsBefore:start) || (period.from | jntIsAfter:end))">\n                    <ng-container *ngTemplateOutlet="period.indicatorMonthTemplate;\n                      context: {period: period, current: current, today: today}">\n                    </ng-container>\n                  </ng-container>\n                </td>\n                <td child-of="jnt-gantt-host" *ngFor="let d of to | betweenDays:end | pop"></td>\n              </ng-template>\n\n              <ng-container *ngTemplateOutlet="periodTemplate;context:\n                {start: current | jntStartOfMonth,\n                  end: current | jntEndOfMonth,\n                  period: period,\n                  current: current,\n                  from: [[period.from, current | jntStartOfMonth] | jntMax, current | jntEndOfMonth] | jntMin,\n                  to: [[period.to, current | jntEndOfMonth] | jntMin, current | jntStartOfMonth] | jntMax}">\n              </ng-container>\n\n            </tr>\n          </ng-container>\n        </ng-container>\n\n      </ng-container>\n      </tbody>\n    </table>\n  </ng-container>\n\n  \n\n  <ng-container *jntFor="ui.breakpoint.mobile">\n    <jnt-accordion child-of="jnt-gantt-host" *ngIf="lines?.length > 0">\n      <jnt-accordion-section child-of="jnt-gantt-host" *ngFor="let line of lines" [title]="line.title">\n        <ng-template #accordionContentTemplate>\n          <div child-of="jnt-gantt-host" >\n            <ng-container *ngIf="toolsTemplate">\n              <ng-container *ngTemplateOutlet="toolsTemplate"></ng-container>\n            </ng-container>\n          </div>\n          <div child-of="jnt-gantt-host" data-controls>\n            <div child-of="jnt-gantt-host" data-month>\n              <jnt-button child-of="jnt-gantt-host" [icon]="ui.icons.chevronLeft"\n                          [outline]="ui.outline.transparent"\n                          [scheme]="ui.scheme.secondary"\n                          [size]="ui.size.small"\n                          (click)="current = subMonths(current, 1)">\n              </jnt-button>\n              <div child-of="jnt-gantt-host" >\n                {{current | jntFormat: \'MMMM\'}}, {{current | jntFormat: \'yyyy\'}}\n              </div>\n              <jnt-button child-of="jnt-gantt-host" [icon]="ui.icons.chevronRight"\n                          [outline]="ui.outline.transparent"\n                          [scheme]="ui.scheme.secondary"\n                          [size]="ui.size.small"\n                          (click)="current = addMonths(current, 1)">\n              </jnt-button>\n            </div>\n          </div>\n          <table child-of="jnt-gantt-host" cellpadding="3" [cellSpacing]="0" data-mobile>\n            <tbody child-of="jnt-gantt-host" >\n\n              <ng-template #emptyMonthPeriodsMobileTemplate>\n                <tr child-of="jnt-gantt-host" data-nodata>\n                  <td child-of="jnt-gantt-host" >\n                    <jnt-icon child-of="jnt-gantt-host" [icon]="ui.icons.neutral"></jnt-icon>\n                  </td>\n                </tr>\n              </ng-template>\n\n              <ng-container *ngIf="line.periods?.length > 0; else emptyMonthPeriodsMobileTemplate">\n\n                <tr child-of="jnt-gantt-host" *ngFor="let day of (current | datesInMonth)">\n                  <td child-of="jnt-gantt-host" data-day\n                      [attr.data-current]="day | jntIsToday"\n                      [attr.data-weekend]="day | jntIsWeekend"\n                      #calendarDay>\n                    {{day | jntGetDate}}\n                  </td>\n                  <ng-container *ngFor="let period of line.periods; let i = index">\n\n                    <ng-template #periodTemplate let-from="from" let-to="to" let-start="start" let-end="end"\n                                 let-period="period">\n\n                      <ng-container *ngIf="!(day | isWithinInterval:(from | jntStartOfDay):(to | jntEndOfDay))">\n                        <td child-of="jnt-gantt-host" ></td>\n                      </ng-container>\n                      <ng-container *ngIf="from | isSameDay:day">\n                        <td child-of="jnt-gantt-host" [attr.rowspan]="(from | betweenDays:to).length">\n                          <ng-container *ngIf="!((period.to | jntIsBefore:start) || (period.from | jntIsAfter:end))">\n                            <ng-container *ngTemplateOutlet="period.indicatorMonthTemplate;\n                               context: {period: period, current: current, today: today}">\n                            </ng-container>\n                          </ng-container>\n                        </td>\n                      </ng-container>\n                    </ng-template>\n\n                    <ng-container *ngTemplateOutlet="periodTemplate;context:\n                       {start: current | jntStartOfMonth,\n                        end: current | jntEndOfMonth,\n                        period: period,\n                        current: current,\n                        from: [[period.from, current | jntStartOfMonth] | jntMax, current | jntEndOfMonth] | jntMin,\n                        to: [[period.to, current | jntEndOfMonth] | jntMin, current | jntStartOfMonth] | jntMax}">\n                    </ng-container>\n\n                  </ng-container>\n                </tr>\n              </ng-container>\n\n            </tbody>\n          </table>\n        </ng-template>\n      </jnt-accordion-section>\n    </jnt-accordion>\n  </ng-container>\n</ng-container>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[a.NGXLogger,We,i.Renderer2])],e)}(),co=function(){function e(){this.ui=Yt}return q([Zt({description:"Accordion section title",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([Zt({description:"Accordion section icon",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"icon",void 0),q([Zt({description:"State of accordion",path:"ui.state",options:[t["ɵbd"].warning,t["ɵbd"].loading]}),i.Input(),G("design:type",String)],e.prototype,"state",void 0),q([i.ContentChild("accordionContentTemplate"),G("design:type",i.TemplateRef)],e.prototype,"accordionContentTemplate",void 0),e=q([i.Component({selector:"jnt-accordion-section",template:""})],e)}(),uo=function(){function t(){this.ui=Yt,this.host="jnt-accordion-host",this.active=0,this.changed=new i.EventEmitter}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.ContentChildren(co),G("design:type",i.QueryList)],t.prototype,"sections",void 0),q([i.Input(),G("design:type",Object)],t.prototype,"active",void 0),q([i.Output(),G("design:type",Object)],t.prototype,"changed",void 0),t=q([i.Component({selector:"jnt-accordion",template:'<jnt-stack child-of="jnt-accordion-host" [align]="ui.align.stretch" [gutter]="ui.gutter.none">\n  <ng-container *ngFor="let section of sections; let i = index;">\n    <a child-of="jnt-accordion-host" href="#" data-title\n       (click)="active == i ? active = null : active = i;changed.emit(active); $event.preventDefault()"\n       [attr.active]="active == i">\n      <jnt-icon child-of="jnt-accordion-host" *ngIf="section.icon" [icon]="section.icon"></jnt-icon>\n      <span child-of="jnt-accordion-host" >{{section.title}}</span>\n\n      <jnt-stack child-of="jnt-accordion-host" data-state [orientation]="ui.orientation.horizontal" [align]="ui.align.center">\n        <jnt-spinner child-of="jnt-accordion-host" *ngIf="section.state === ui.state.loading" [size]="ui.size.small"></jnt-spinner>\n        <jnt-icon child-of="jnt-accordion-host" data-warning *ngIf="section.state === ui.state.warning" [icon]="ui.icons.warning"></jnt-icon>\n        <jnt-icon child-of="jnt-accordion-host" data-chevron [icon]="active == i ? ui.icons.chevronUp : ui.icons.chevronRight"></jnt-icon>\n      </jnt-stack>\n\n    </a>\n    <div child-of="jnt-accordion-host" *ngIf="active == i" data-content>\n      <ng-container *ngTemplateOutlet="section.accordionContentTemplate"></ng-container>\n    </div>\n  </ng-container>\n</jnt-stack>'})],t)}(),go=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Gn,qe,Ge],declarations:[uo,co],entryComponents:[co],exports:[uo,co]})],t)}(),ho=function(){function t(){}return t=q([i.NgModule({declarations:[po,Zn,Jn],imports:[o.CommonModule,so,we,Ln,Gn,Kn,an,Xn,go,Ge,qe],exports:[po,Zn,Jn]})],t)}(),fo=function(e){void 0===e&&(e=null),this.trigger=t.Triggers.hover,this.position=t.Position.bottom,this.placement=t["ɵbe"].absolute,this.maxHeight="500px",this.padding=t["ɵo"].normal,this.features=[t["ɵx"].smarty],this.disabled=!1,Object.assign(this,e)},mo=function(t,e,n,o){void 0===n&&(n=0),void 0===o&&(o=0),this.top=t,this.left=e,this.shiftX=n,this.shiftY=o},yo=function(){function e(t,e,n,o,i){this.renderer=t,this.hostRef=e,this.cd=n,this.breakpoint=o,this.device=i,this.observers={target:this.createObserver(),host:this.createObserver()},this.options=new fo,this.host="jnt-popover-host"}return Object.defineProperty(e.prototype,"placement",{get:function(){return this.options.placement},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"context",{get:function(){return this.options.context},enumerable:!0,configurable:!0}),e.prototype.createObserver=function(){var t=this;return new MutationObserver((function(){return t.update()}))},e.prototype.getMaxSizes=function(){var e,n,o=this.target.getBoundingClientRect(),i=+(null===(e=this.options.maxWidth)||void 0===e?void 0:e.replace("px","")),r=+(null===(n=this.options.maxHeight)||void 0===n?void 0:n.replace("px","")),a=this.options.behaviour===rt.dropdown?4:8,s=null,l=null;switch(this.position){case t.Position.top:l=o.top-a,this.options.behaviour===rt.dropdown&&(s=window.innerWidth-o.left-a);break;case t.Position.right:s=window.innerWidth-o.left-a-o.width,this.options.behaviour===rt.dropdown&&(l=window.innerHeight-o.top-a);break;case t.Position.bottom:l=window.innerHeight-o.top-a-o.height,this.options.behaviour===rt.dropdown&&(s=window.innerWidth-o.left-a);break;case t.Position.rightBottom:l=window.innerHeight-o.top-a-o.height,this.options.behaviour===rt.dropdown&&(s=o.right-a);break;case t.Position.left:s=o.left-a,this.options.behaviour===rt.dropdown&&(l=window.innerHeight-o.top-a)}s&&(this.options.maxWidth=(i?Math.min(i,s):s)+"px"),l&&(this.options.maxHeight=(r?Math.min(r,l):l)+"px")},e.prototype.checkPosition=function(e){var n=this.target.getBoundingClientRect(),o=this.hostRef.nativeElement,i=this.options.placement===t["ɵbe"].absolute?window.pageXOffset||document.documentElement.offsetLeft:0,r=this.options.placement===t["ɵbe"].absolute?window.pageYOffset||document.documentElement.offsetTop:0,a=this.options.behaviour===rt.dropdown?4:8;switch(this.position){case t.Position.top:var s=r-a+o.clientHeight;e.top-s<0&&(n.top+a+o.clientHeight<window.innerHeight?this.position=t.Position.bottom:n.right+a+o.clientWidth<window.innerWidth?this.position=t.Position.right:n.left-a-o.clientWidth>0?this.position=t.Position.left:this.getMaxSizes());break;case t.Position.right:s=i-a-this.target.clientWidth-o.clientWidth;e.left-s>window.innerWidth&&(n.left-a-o.clientWidth>0?this.position=t.Position.left:n.top+a+o.clientHeight<window.innerHeight?this.position=t.Position.bottom:n.top-a-o.clientHeight>0?this.position=t.Position.top:this.getMaxSizes());break;case t.Position.bottom:case t.Position.rightBottom:s=r+a-this.target.clientHeight-o.clientHeight;e.top-s>window.innerHeight&&(n.top-a-o.clientHeight>0?this.position=t.Position.top:n.right+a+o.clientWidth<window.innerWidth?this.position=t.Position.right:n.left-a-o.clientWidth>0?this.position=t.Position.left:this.getMaxSizes());break;case t.Position.left:s=i-a+o.clientWidth;e.left-s<0&&(n.right+a+o.clientWidth<window.innerWidth?this.position=t.Position.right:n.top+a+o.clientHeight<window.innerHeight?this.position=t.Position.bottom:n.top-a-o.clientHeight>0?this.position=t.Position.top:this.getMaxSizes())}},e.prototype.getPosition=function(){var e,n=this.target.getBoundingClientRect(),o=this.options.placement===t["ɵbe"].absolute?window.pageXOffset||document.documentElement.offsetLeft:0,i=this.options.placement===t["ɵbe"].absolute?window.pageYOffset||document.documentElement.offsetTop:0,r=new mo(n.top+i,n.left+o),a=this.hostRef.nativeElement;switch(this.position=this.options.position,(null===(e=this.options.features)||void 0===e?void 0:e.includes(t["ɵx"].smarty))?this.checkPosition(r):this.getMaxSizes(),this.renderer.setAttribute(a,"data-placement",this.position),this.cd.detectChanges(),this.position){case t.Position.top:r.top-=a.clientHeight,r.left+=(this.target.clientWidth-a.clientWidth)/2,r.shiftX=r.left<0?r.left:r.left>window.innerWidth+o-a.clientWidth?a.clientWidth-(window.innerWidth+o-r.left):0;break;case t.Position.right:r.top+=(this.target.clientHeight-a.clientHeight)/2,r.left+=this.target.clientWidth,r.shiftY=r.top-i<0?r.top-i:r.top>window.innerHeight+i-a.clientHeight?a.clientHeight-(window.innerHeight+i-r.top):0;break;case t.Position.bottom:case t.Position.rightBottom:r.top+=this.target.clientHeight,r.left+=(this.target.clientWidth-a.clientWidth)/2,r.shiftX=r.left<0?r.left:r.left>window.innerWidth+o-a.clientWidth?a.clientWidth-(window.innerWidth+o-r.left):0;break;case t.Position.left:r.top+=(this.target.clientHeight-a.clientHeight)/2,r.left-=a.clientWidth,r.shiftY=r.top-i<0?r.top-i:r.top>window.innerHeight+i-a.clientHeight?a.clientHeight-(window.innerHeight+i-r.top):0}return r},e.prototype.show=function(t,e){var n=t.nativeElement;void 0===e&&(e={}),this.target=n,this.options=new fo(e),this.minWidth=this.options.minWidth||(this.options.behaviour===rt.dropdown?this.target.clientWidth+"px":null),this.observers.target.observe(n,{childList:!0,subtree:!0}),this.observers.host.observe(this.hostRef.nativeElement,{childList:!0,subtree:!0}),this.renderer.setAttribute(this.hostRef.nativeElement,"data-dropdown",this.options.behaviour===rt.dropdown?"true":"false"),this.renderer.setStyle(this.hostRef.nativeElement,"display","block"),this.cd.detectChanges()},e.prototype.picked=function(t){return-1!==t.indexOf(this.hostRef.nativeElement)},e.prototype.update=function(){if(this.target){var e=this.hostRef.nativeElement;this.renderer.removeStyle(this.arrow.nativeElement,"top"),this.renderer.removeStyle(this.arrow.nativeElement,"left"),this.renderer.removeStyle(e,"top"),this.renderer.removeStyle(e,"left"),this.renderer.setStyle(e,"width",this.breakpoint.current!==t.Breakpoint.mobile||this.position!==t.Position.top&&this.position!==t.Position.bottom?"auto":"100%");var n=this.getPosition(),o=this.target.getBoundingClientRect(),i=n.left-n.shiftX,r=n.top-n.shiftY;if(this.options.behaviour===rt.dropdown&&(this.getMaxSizes(),this.position===t.Position.top||this.position===t.Position.bottom?i=o.left+(this.placement===t["ɵbe"].absolute?window.pageXOffset:0):this.position===t.Position.rightTop||this.position===t.Position.rightBottom?(this.renderer.setStyle(e,"width",this.breakpoint.current===t.Breakpoint.mobile?this.options.maxWidth:"auto"),i=o.left-e.clientWidth+o.width+(this.placement===t["ɵbe"].absolute?window.pageXOffset:0)):r=o.top+(this.placement===t["ɵbe"].absolute?window.pageYOffset:0)),this.renderer.setStyle(e,"top",r+"px"),this.renderer.setStyle(e,"left",i+"px"),this.options.behaviour!==rt.dropdown)switch(this.position){case t.Position.top:case t.Position.bottom:case t.Position.rightBottom:this.renderer.setStyle(this.arrow.nativeElement,"left","calc(50% + "+n.shiftX+"px)");break;case t.Position.right:case t.Position.left:this.renderer.setStyle(this.arrow.nativeElement,"top","calc(50% + "+n.shiftY+"px")}this.cd.detectChanges()}else console.error("target is not defined")},e.prototype.hide=function(){this.observers.target.disconnect(),this.observers.host.disconnect(),this.options=new fo,this.renderer.setStyle(this.hostRef.nativeElement,"display","none"),this.cd.detectChanges()},e.ctorParameters=function(){return[{type:i.Renderer2},{type:i.ElementRef},{type:i.ChangeDetectorRef},{type:We},{type:Ye}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("style.position"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"placement",null),q([i.HostBinding("attr.context"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"context",null),q([i.HostBinding("attr.data-placement"),G("design:type",Object)],e.prototype,"position",void 0),q([i.HostBinding("style.min-width"),G("design:type",String)],e.prototype,"minWidth",void 0),q([i.ViewChild("arrow"),G("design:type",i.ElementRef)],e.prototype,"arrow",void 0),e=q([i.Component({selector:"jnt-popover",template:'<ng-template #defaultContentTemplate>\n  <div child-of="jnt-popover-host" data-content>\n    {{options.content}}\n  </div>\n</ng-template>\n\n<svg child-of="jnt-popover-host" #arrow data-arrow width="26" height="26" viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg">\n  <g child-of="jnt-popover-host" clip-path="url(#popover_marker_clip)">\n    <g child-of="jnt-popover-host" data-inner>\n      <path child-of="jnt-popover-host" d="M4 14C8.41827 14 11 22 13 22C15 22 17.5817 14 22 14L4 14Z"></path>\n    </g>\n    <rect child-of="jnt-popover-host" y="6" width="26" height="8"></rect>\n  </g>\n  <defs child-of="jnt-popover-host" >\n    <filter child-of="jnt-popover-host" id="popover_marker_shadow-light" x="-4" y="6" width="34" height="24" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">\n      <feFlood child-of="jnt-popover-host" flood-opacity="0" result="BackgroundImageFix"></feFlood>\n      <feColorMatrix child-of="jnt-popover-host" in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"></feColorMatrix>\n      <feGaussianBlur child-of="jnt-popover-host" stdDeviation="4"></feGaussianBlur>\n      <feColorMatrix child-of="jnt-popover-host" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"></feColorMatrix>\n      <feBlend child-of="jnt-popover-host" mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow"></feBlend>\n      <feBlend child-of="jnt-popover-host" mode="normal" in="SourceGraphic" in2="effect1_dropShadow" result="shape"></feBlend>\n    </filter>\n    <filter child-of="jnt-popover-host" id="popover_marker_shadow-dark" x="-4" y="6" width="34" height="24" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">\n      <feFlood child-of="jnt-popover-host" flood-opacity="0" result="BackgroundImageFix"></feFlood>\n      <feColorMatrix child-of="jnt-popover-host" in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"></feColorMatrix>\n      <feGaussianBlur child-of="jnt-popover-host" stdDeviation="4"></feGaussianBlur>\n      <feColorMatrix child-of="jnt-popover-host" type="matrix" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.25 0"></feColorMatrix>\n      <feBlend child-of="jnt-popover-host" mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow"></feBlend>\n      <feBlend child-of="jnt-popover-host" mode="normal" in="SourceGraphic" in2="effect1_dropShadow" result="shape"></feBlend>\n    </filter>\n    <clipPath child-of="jnt-popover-host" id="popover_marker_clip">\n      <rect child-of="jnt-popover-host" width="26" height="26"></rect>\n    </clipPath>\n  </defs>\n</svg>\n\n<div child-of="jnt-popover-host" data-wrapper role="popover"\n     [attr.data-windows]="device.platform.windows"\n     [attr.data-padding]="options.padding"\n     [ngStyle]="{\'max-height\': options.maxHeight, \'max-width\': options.maxWidth}">\n  <div child-of="jnt-popover-host" data-title *ngIf="options.title">{{options.title}}</div>\n\n  <ng-container *ngTemplateOutlet="!!options.contentTemplate\n    ? options.contentTemplate : defaultContentTemplate">\n  </ng-container>\n</div>',changeDetection:i.ChangeDetectionStrategy.OnPush}),G("design:paramtypes",[i.Renderer2,i.ElementRef,i.ChangeDetectorRef,We,Ye])],e)}(),bo=function(){},vo=function(){function t(){this.attached=new i.EventEmitter}return t.prototype.register=function(t){this.popover=t},t.prototype.checkRegistration=function(){if(!this.popover)throw new Error("popover component is not registered")},t.prototype.show=function(t,e){var n=this;return this.checkRegistration(),this.target=t,this.popover.show(t,e),this.attached.emit(t),{hide:function(){return n.hide(t)},picked:function(t){return n.popover.picked(t)},update:function(){return n.popover.update()}}},t.prototype.hide=function(t){void 0===t&&(t=null),this.target&&this.target!==t||(this.popover.hide(),this.attached.emit(null))},t.ɵprov=i["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t=q([i.Injectable({providedIn:"root"})],t)}(),jo=function(){function e(t,e,n,o){this.popover=t,this.hostRef=e,this.renderer=n,this.zone=o,this.destroyed=!1,this.listeners=[],this.attached=new i.EventEmitter,this.removed=new i.EventEmitter}return Object.defineProperty(e.prototype,"instance",{get:function(){return this._instance},set:function(t){this._instance=t,t?this.attached.emit(t):this.removed.emit()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"__options__",{set:function(t){this.options=new fo(t)},enumerable:!0,configurable:!0}),e.prototype.mouseEnter=function(){this.options.trigger===t.Triggers.hover&&this.show()},e.prototype.click=function(){this.options.trigger===t.Triggers.click&&(this.instance?this.hide():this.show())},e.prototype.ngOnInit=function(){var e=this;this.popover.attached.pipe(p.takeWhile((function(){return!e.destroyed})),p.filter((function(t){return!!e.instance&&t!==e.hostRef}))).subscribe((function(){return e.instance=null})),this.zone.runOutsideAngular((function(){e.listeners.push(e.renderer.listen("document","mousemove",(function(n){var o=n.path;e.instance&&e.options.trigger===t.Triggers.hover&&!e.picked(o)&&e.hide(o)}))),e.listeners.push(e.renderer.listen("document","click",(function(n){var o=n.path;e.instance&&e.options.trigger===t.Triggers.click&&!e.picked(o)&&e.hide(o)})))}))},e.prototype.ngOnDestroy=function(){this.destroyed=!0,this.instance&&(this.instance.hide(),this.instance=null),this.listeners.forEach((function(t){return t()}))},e.prototype.picked=function(t){return-1!==t.indexOf(this.hostRef.nativeElement)},e.prototype.show=function(){!this.options.content&&!this.options.contentTemplate||this.options.disabled||(this.instance=this.popover.show(this.hostRef,this.options))},e.prototype.hide=function(t){void 0===t&&(t=[]),this.instance&&!this.instance.picked(t)&&(this.instance.hide(),this.instance=null)},e.ctorParameters=function(){return[{type:vo},{type:i.ElementRef},{type:i.Renderer2},{type:i.NgZone}]},q([i.Input("jntPopover"),G("design:type",Object),G("design:paramtypes",[Object])],e.prototype,"__options__",null),q([i.Output(),G("design:type",Object)],e.prototype,"attached",void 0),q([i.Output(),G("design:type",Object)],e.prototype,"removed",void 0),q([i.HostListener("mouseenter"),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],e.prototype,"mouseEnter",null),q([i.HostListener("click"),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],e.prototype,"click",null),e=q([i.Directive({selector:"[jntPopover]",exportAs:"jntPopover"}),G("design:paramtypes",[vo,i.ElementRef,i.Renderer2,i.NgZone])],e)}(),ko=function(){function t(){}return t=q([i.NgModule({declarations:[yo,jo],imports:[o.CommonModule],entryComponents:[yo],exports:[yo,jo]})],t)}(),wo=function(){function e(){this.host="jnt-link-host",this.ui=Yt,this._target=t["ɵbq"].self,this._matching=t["ɵbr"].fullMatch,this.externalLink=!0,this._context=t["ɵbs"].text,this._outline=t["ɵu"].transparent,this.disabled=!1,this._orphan=!1,this.features=[]}return Object.defineProperty(e.prototype,"withTitle",{get:function(){return!!this.title},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"linkActive",{get:function(){return!!this.linkRef&&this.linkRef.isActive},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outline",{set:function(e){this._outline=e||t["ɵu"].transparent},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"__icon__",{set:function(e){this.icon="string"==typeof e?{icon:e,position:t.Position.left}:e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"position",{get:function(){return this.icon?this.icon.position:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"source",{get:function(){return this._source},set:function(t){t?(this.externalLink=!Array.isArray(t),this._source=t):this._orphan=!0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"target",{get:function(){return this._target},set:function(e){this._target=e||t["ɵbq"].self},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"matching",{get:function(){return this._matching},set:function(e){this._matching=e||t["ɵbr"].fullMatch},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"context",{set:function(e){this._context=e||t["ɵbs"].text},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-context"),G("design:type",String)],e.prototype,"_context",void 0),q([i.HostBinding("attr.data-outline"),G("design:type",Object)],e.prototype,"_outline",void 0),q([i.HostBinding("attr.data-with-title"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"withTitle",null),q([i.Input(),G("design:type",Boolean)],e.prototype,"collapsed",void 0),q([i.HostBinding("attr.data-active"),G("design:type",Boolean),G("design:paramtypes",[])],e.prototype,"linkActive",null),q([Zt({description:"Disable link",type:"boolean",default:"false"}),i.HostBinding("attr.data-disabled"),i.Input(),G("design:type",Object)],e.prototype,"disabled",void 0),q([Zt({description:"Link outline",path:"ui.outline",default:t["ɵu"].transparent,options:[t["ɵu"].transparent,t["ɵu"].ghost,t["ɵu"].fill]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"outline",null),q([Zt({description:"Icon for link",type:"string",name:"icon"}),i.Input("icon"),G("design:type",Object),G("design:paramtypes",[Object])],e.prototype,"__icon__",null),q([i.HostBinding("attr.data-position"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"position",null),q([Zt({description:"Link title",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([Zt({description:"Link query params",type:"{[k: string]: any}"}),i.Input(),G("design:type",Object)],e.prototype,"queryParams",void 0),q([Zt({description:"Link source",type:"string | string[]"}),i.Input(),G("design:type",Object),G("design:paramtypes",[Object])],e.prototype,"source",null),q([i.HostBinding("attr.data-orphan"),G("design:type",Object)],e.prototype,"_orphan",void 0),q([Zt({description:"Link target",path:"ui.target",default:t["ɵbq"].self,options:[t["ɵbq"].blank,t["ɵbq"].self,t["ɵbq"].parent,t["ɵbq"].top]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"target",null),q([Zt({description:"Fragment for link #anchor",default:"null"}),i.Input(),G("design:type",String)],e.prototype,"fragment",void 0),q([Zt({description:"Matching to activate link",path:"ui.matching",default:t["ɵbr"].fullMatch,options:[t["ɵbr"].fullMatch,t["ɵbr"].wildcard]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"matching",null),q([Zt({description:"Show chevron near link",path:"ui.feature",options:[t["ɵx"].dropdown]}),i.HostBinding("attr.data-features"),i.Input(),G("design:type",Array)],e.prototype,"features",void 0),q([Zt({description:"Link context",path:"ui.context",default:t["ɵbs"].text,options:[t["ɵbs"].text,t["ɵbs"].box]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"context",null),q([i.ViewChild(A.RouterLinkActive),G("design:type",A.RouterLinkActive)],e.prototype,"linkRef",void 0),q([i.ContentChildren(Wn),G("design:type",i.QueryList)],e.prototype,"badges",void 0),e=q([i.Component({selector:"jnt-link",template:'<ng-container *ngIf="externalLink; else internalLinkTemplate">\n  <ng-container *ngIf="!!source; else emptySourceTemplate">\n    <a child-of="jnt-link-host" data-link [href]="source" [target]="\'_\' + target">\n      <ng-container *ngTemplateOutlet="linkTemplate"></ng-container>\n    </a>\n  </ng-container>\n  <ng-template #emptySourceTemplate>\n    <a child-of="jnt-link-host" data-link>\n      <ng-container *ngTemplateOutlet="linkTemplate"></ng-container>\n    </a>\n  </ng-template>\n</ng-container>\n\n<ng-template #internalLinkTemplate>\n  <a child-of="jnt-link-host" data-link #link="routerLinkActive" routerLinkActive [attr.data-active]="link.isActive"\n     [routerLink]="source"\n     [routerLinkActiveOptions]="{exact: matching === ui.matching.fullMatch}"\n     [queryParams]="queryParams"\n     [fragment]="fragment">\n    <ng-container *ngTemplateOutlet="linkTemplate"></ng-container>\n  </a>\n</ng-template>\n\n<ng-template #linkTemplate>\n  <span child-of="jnt-link-host" data-title *ngIf="!!icon || !!title">\n    <jnt-icon child-of="jnt-link-host" *ngIf="!!icon && icon.position === ui.position.left" [icon]="icon?.icon"></jnt-icon>\n    <span child-of="jnt-link-host" *ngIf="!!title" [innerHTML]="title | sanitizeHtml"></span>\n    <jnt-icon child-of="jnt-link-host" *ngIf="!!icon && icon.position === ui.position.right" [icon]="icon?.icon"></jnt-icon>\n  </span>\n  <div child-of="jnt-link-host" data-empty *ngIf="collapsed && !icon"></div>\n  <ng-container *ngIf="!!badges.length">\n    <jnt-badge child-of="jnt-link-host" data-badge *ngFor="let badge of badges"\n               [color]="badge.color"\n               [value]="badge.value"\n               [text]="badge.text"\n               [position]="ui.position.inline">\n    </jnt-badge>\n  </ng-container>\n  <jnt-icon child-of="jnt-link-host" *ngIf="features | includes : ui.feature.dropdown"\n            [icon]="ui.icons.selectClose" data-toggle>\n  </jnt-icon>\n</ng-template>'})],e)}(),Co=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,A.RouterModule,Gn,Yn,qe,Re,we],exports:[wo],entryComponents:[wo],declarations:[wo]})],t)}(),To=function(){function e(){this.ui=Yt,this._matching=t["ɵbr"].fullMatch,this.opened=!1,this.loading=!1,this.disabled=!1,this.target=t["ɵbq"].self,this.matching=t["ɵbr"].fullMatch,this.click=new i.EventEmitter}return Object.defineProperty(e.prototype,"__link__",{set:function(t){this.link="string"==typeof t||t instanceof Array?{source:t,position:null}:t},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.opened"),G("design:type",Object)],e.prototype,"opened",void 0),q([Zt({description:"Loading for menu item",default:"false",type:"boolean"}),i.Input(),G("design:type",Object)],e.prototype,"loading",void 0),q([Zt({description:"Icon for menu item",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"icon",void 0),q([Zt({description:"Disable menu item",type:"boolean",default:"false"}),i.Input(),G("design:type",Object)],e.prototype,"disabled",void 0),q([Zt({description:"Menu item title",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([Zt({name:"link",description:"Menu item source",type:"string | string[] | Link"}),i.Input("link"),G("design:type",Object),G("design:paramtypes",[Object])],e.prototype,"__link__",null),q([Zt({description:"Menu item target",type:"string",default:t["ɵbq"].self,options:[t["ɵbq"].blank,t["ɵbq"].parent,t["ɵbq"].self,t["ɵbq"].top]}),i.Input(),G("design:type",String)],e.prototype,"target",void 0),q([Zt({description:"Methods of matching",path:"ui.matching",default:t["ɵbr"].fullMatch,options:[t["ɵbr"].fullMatch,t["ɵbr"].wildcard]}),i.Input(),G("design:type",String)],e.prototype,"matching",void 0),q([Zt({description:"Set active menu item",type:"boolean"}),i.Input(),G("design:type",Boolean)],e.prototype,"active",void 0),q([Zt({description:"Output event for click on menu item"}),i.Output(),G("design:type",Object)],e.prototype,"click",void 0),q([i.ContentChildren(Wn),G("design:type",i.QueryList)],e.prototype,"badges",void 0),e}(),Oo=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return D(e,t),e=q([i.Component({selector:"jnt-sub-menu-item",template:""})],e)}(To),Io=function(){function t(){}return q([i.ContentChildren(Oo),G("design:type",i.QueryList)],t.prototype,"items",void 0),t=q([i.Component({selector:"jnt-sub-menu",template:""})],t)}(),So=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return D(e,t),q([i.ContentChild(Io),G("design:type",Io)],e.prototype,"submenu",void 0),e=q([i.Component({selector:"jnt-menu-item",template:""})],e)}(To),xo=function(){function e(){this.host="jnt-menu-host",this.ui=Yt,this._spacing=t["ɵo"].none,this._placement=t["ɵbe"].absolute,this.reference={popover:null},this._style=t["ɵbt"].default,this._orientation=t["ɵn"].horizontal,this.collapsed=!1,this.selected=new i.EventEmitter}return Object.defineProperty(e.prototype,"style",{set:function(e){this._style=e||t["ɵbt"].default},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"orientation",{get:function(){return this._orientation},set:function(e){this._orientation=e||t["ɵn"].horizontal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"placement",{get:function(){return this._placement},set:function(e){this._placement=e||t["ɵbe"].absolute},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"spacing",{get:function(){return this._spacing},set:function(e){this._spacing=e||t["ɵo"].none},enumerable:!0,configurable:!0}),e.prototype.toggle=function(t){t.submenu&&this.items.forEach((function(e){return e.opened=e===t&&!t.opened}))},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-style"),G("design:type",String)],e.prototype,"_style",void 0),q([i.HostBinding("attr.data-orientation"),G("design:type",String)],e.prototype,"_orientation",void 0),q([i.HostBinding("attr.data-collapsed"),i.Input(),G("design:type",Object)],e.prototype,"collapsed",void 0),q([Zt({description:"Menu style",path:"ui.menu.style",default:t["ɵbt"].default,options:[t["ɵbt"].tabs,t["ɵbt"].tags,t["ɵbt"].default]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"style",null),q([Zt({description:"Menu orientation",path:"ui.orientation",default:t["ɵn"].horizontal,options:[t["ɵn"].horizontal,t["ɵn"].vertical]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"orientation",null),q([Zt({description:"Menu popover placement",path:"ui.placement",default:t["ɵbe"].absolute,options:[t["ɵbe"].absolute,t["ɵbe"].fixed]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"placement",null),q([Zt({description:"Size of spacing between menu items",path:"ui.gutter",default:t["ɵo"].none,options:[t["ɵo"].none,t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].large,t["ɵo"].big,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"spacing",null),q([i.Input(),G("design:type",String)],e.prototype,"context",void 0),q([i.Output(),G("design:type",Object)],e.prototype,"selected",void 0),q([i.ContentChildren(So),G("design:type",i.QueryList)],e.prototype,"items",void 0),e=q([i.Component({selector:"jnt-menu",template:'<jnt-stack child-of="jnt-menu-host" [orientation]="style === ui.menu.style.tabs ? ui.orientation.horizontal : orientation"\n           [gutter]="spacing"\n           [align]="ui.align.stretch"\n           [wrap]="ui.wrap.wrap">\n  <ng-container *ngFor="let item of items">\n    <div child-of="jnt-menu-host" data-top>\n      <div child-of="jnt-menu-host" data-item (click)="toggle(item)"\n           [jntPopover]="{\n              context: this.context,\n              contentTemplate: submenuTemplate,\n              position: orientation === ui.orientation.vertical\n                ? ui.position.right\n                : ui.position.bottom,\n              trigger: orientation === ui.orientation.horizontal || !collapsed\n                ? ui.trigger.click\n                : ui.trigger.hover,\n              behaviour: ui.behaviour.dropdown,\n              placement: placement,\n              disabled: !item.submenu || (!collapsed && orientation !== ui.orientation.horizontal)\n            }"\n           (attached)="reference.popover = $event"\n           (removed)="reference.popover = null">\n        <div child-of="jnt-menu-host" *ngIf="item.loading" data-spinner>\n          <jnt-spinner child-of="jnt-menu-host" ></jnt-spinner>\n        </div>\n        <jnt-link child-of="jnt-menu-host" data-link\n                  [collapsed]="collapsed"\n                  [title]="!collapsed ? item.title : null"\n                  [icon]="item.icon"\n                  [context]="ui.context.box"\n                  [matching]="item.matching"\n                  [source]="!item.submenu ? item.link?.source : null"\n                  [fragment]="item.link?.fragment"\n                  [outline]="ui.outline.transparent"\n                  [target]="item.target"\n                  [disabled]="item.disabled"\n                  [features]="!!item.submenu ? [ui.feature.dropdown] : null"\n                  (click)="item.click.emit(); !item.submenu ? selected.emit(item) : null">\n          <ng-container *ngIf="!collapsed">\n            <jnt-badge child-of="jnt-menu-host" *ngFor="let badge of item.badges"\n                       [value]="badge.value"\n                       [text]="badge.text"\n                       [position]="ui.position.inline"\n                       [color]="badge.color">\n            </jnt-badge>\n          </ng-container>\n        </jnt-link>\n      </div>\n\n      <ng-container *ngIf="!collapsed && orientation === ui.orientation.vertical && item.opened">\n        <ng-container *ngTemplateOutlet="submenuTemplate;context: {headless: true}"></ng-container>\n      </ng-container>\n\n      <ng-template #submenuTemplate let-headless=headless>\n        <div child-of="jnt-menu-host" data-sub\n             [attr.data-opened]="item.opened"\n             [attr.data-orientation]="orientation"\n             [attr.data-collapsed]="collapsed">\n          <ng-container *ngIf="!!item.submenu">\n            <div child-of="jnt-menu-host" data-section *ngIf="!headless">\n              <jnt-stack child-of="jnt-menu-host" [orientation]="ui.orientation.horizontal" [align]="ui.align.center">\n                <span child-of="jnt-menu-host" >{{item.title}}</span>\n                <jnt-badge child-of="jnt-menu-host" *ngFor="let badge of item.badges"\n                           [value]="badge.value"\n                           [text]="badge.text"\n                           [position]="ui.position.inline"\n                           [color]="badge.color">\n                </jnt-badge>\n              </jnt-stack>\n            </div>\n            <div child-of="jnt-menu-host" data-item *ngFor="let subItem of item.submenu.items">\n              <div child-of="jnt-menu-host" *ngIf="subItem.loading" data-spinner>\n                <jnt-spinner child-of="jnt-menu-host" ></jnt-spinner>\n              </div>\n              <jnt-link child-of="jnt-menu-host" data-link\n                        [context]="ui.context.box"\n                        [title]="subItem.title"\n                        [icon]="subItem.icon"\n                        [matching]="subItem.matching"\n                        [source]="subItem.link?.source"\n                        [fragment]="subItem.link?.fragment"\n                        [disabled]="subItem.disabled"\n                        [target]="subItem.target"\n                        (click)="selected.emit(item); item.click.emit(); reference.popover?.hide();">\n                <jnt-badge child-of="jnt-menu-host" *ngFor="let badge of subItem.badges"\n                           [value]="badge.value"\n                           [text]="badge.text"\n                           [position]="ui.position.inline"\n                           [color]="badge.color">\n                </jnt-badge>\n              </jnt-link>\n            </div>\n          </ng-container>\n        </div>\n      </ng-template>\n    </div>\n  </ng-container>\n</jnt-stack>'})],e)}(),Mo=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Co,Gn,qe,Yn,Ge,ko],exports:[xo,So,Io,Oo],entryComponents:[xo,So],declarations:[xo,So,Io,Oo]})],t)}(),Po=function(e){void 0===e&&(e=null),this.position=t.Position.left,this.width=70,this.height=70,Object.assign(this,e)},_o=function(){function e(e){this.breakpoint=e,this.ui=Yt,this.host="jnt-card-host",this._height=t["ɵbo"].default,this._padding=t["ɵo"].normal,this.width=t["ɵv"].default,this.features=[],this.selected=new i.EventEmitter}return Object.defineProperty(e.prototype,"hasColor",{get:function(){return!!this.color},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasAction",{get:function(){return!!this.icon||!!this.cardActionsTemplate},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"height",{set:function(e){this._height=e||t["ɵbo"].default},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"__picture__",{set:function(e){this.picture=e?new Po("string"==typeof e?{url:e,template:null,position:t.Position.left,width:70,height:70}:e):null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"padding",{set:function(e){this._padding=e||t["ɵo"].normal},enumerable:!0,configurable:!0}),e.prototype.hideActions=function(){this.popover.hide()},Object.defineProperty(e.prototype,"mobile",{get:function(){return this.breakpoint.current===t.Breakpoint.mobile},enumerable:!0,configurable:!0}),e.ctorParameters=function(){return[{type:We}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-height"),G("design:type",String)],e.prototype,"_height",void 0),q([i.HostBinding("attr.data-has-color"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"hasColor",null),q([i.HostBinding("attr.data-has-icon"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"hasAction",null),q([i.HostBinding("attr.data-padding"),G("design:type",Object)],e.prototype,"_padding",void 0),q([Zt({description:"Title of card",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([Zt({description:"Height of card",path:"ui.height",options:[t["ɵbo"].default,t["ɵbo"].fluid],default:t["ɵbo"].default}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"height",null),q([Zt({description:"Picture on card",type:"string"}),i.Input("picture"),G("design:type",Object),G("design:paramtypes",[Object])],e.prototype,"__picture__",null),q([ee({selector:"#cardHeaderTemplate",description:"Card header template"}),i.ContentChild("cardHeaderTemplate"),G("design:type",i.TemplateRef)],e.prototype,"headerTemplate",void 0),q([ee({selector:"#cardTitleTemplate",description:"Card title template"}),i.ContentChild("cardTitleTemplate"),G("design:type",i.TemplateRef)],e.prototype,"titleTemplate",void 0),q([ee({selector:"#cardFooterTemplate",description:"Card footer template"}),i.ContentChild("cardFooterTemplate"),G("design:type",i.TemplateRef)],e.prototype,"footerTemplate",void 0),q([ee({selector:"#cardActionsTemplate",description:"Card actions template"}),i.ContentChild("cardActionsTemplate"),G("design:type",i.TemplateRef)],e.prototype,"cardActionsTemplate",void 0),q([Zt({description:"Icon indicator",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"icon",void 0),q([Zt({description:"State of card",path:"ui.state",options:[t["ɵbd"].error,t["ɵbd"].loading]}),i.Input(),G("design:type",String)],e.prototype,"state",void 0),q([Zt({description:"Padding for card",path:"ui.gutter",options:[t["ɵo"].none,t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].large,t["ɵo"].big,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"padding",null),q([Zt({description:"Card width",path:"ui.width",default:t["ɵv"].default,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.HostBinding("attr.data-width"),i.Input(),G("design:type",String)],e.prototype,"width",void 0),q([Zt({description:"Сlickable card; Adapted card on mobile view",path:"ui.feature",options:[t["ɵx"].clickable,t["ɵx"].adapted]}),i.HostBinding("attr.data-features"),i.Input(),G("design:type",Array)],e.prototype,"features",void 0),q([Zt({description:"Card indicator color",type:"string",default:"purple"}),i.Input(),G("design:type",String)],e.prototype,"color",void 0),q([Zt({description:"Output event of click on card content",type:"Event Emitter"}),i.Output(),G("design:type",Object)],e.prototype,"selected",void 0),e=q([i.Component({selector:"jnt-card",template:'<div child-of="jnt-card-host" *ngIf="!!icon && !cardActionsTemplate" data-indicator>\n  <jnt-icon child-of="jnt-card-host" [icon]="icon"></jnt-icon>\n</div>\n\n<ng-template #cardImageTemplate>\n  <img child-of="jnt-card-host" data-image [src]="picture.url" [width]="picture.width" [height]="picture.height"  />\n</ng-template>\n\n<jnt-stack child-of="jnt-card-host" data-card\n           [attr.tabindex]="(features | includes : ui.feature.clickable) ? 1 : null"\n           [orientation]="ui.orientation.horizontal"\n           [gutter]="ui.gutter.none"\n           [align]="ui.align.stretch">\n  <div child-of="jnt-card-host" data-line *ngIf="color" [style.background-color]="color"></div>\n\n  <jnt-stack child-of="jnt-card-host" data-main [align]="ui.align.stretch">\n    <div child-of="jnt-card-host" *ngIf="!!headerTemplate" data-header>\n      <ng-container *ngTemplateOutlet="headerTemplate"></ng-container>\n    </div>\n    <jnt-stack child-of="jnt-card-host" data-body\n               [align]="ui.align.stretch"\n               [orientation]="(features | includes : ui.feature.adapted) && mobile ? ui.orientation.vertical : ui.orientation.horizontal"\n               (click)="!!features && features.includes(ui.feature.clickable) ? selected.emit() : null">\n      <div child-of="jnt-card-host" data-picture *ngIf="!!picture && picture.position === ui.position.left">\n        <ng-container *ngIf="!!picture.template; else cardImageTemplate">\n          <ng-container *ngTemplateOutlet="picture.template"></ng-container>\n        </ng-container>\n      </div>\n      <div child-of="jnt-card-host" data-content>\n        <div child-of="jnt-card-host" *ngIf="!!title || !!titleTemplate" data-title>\n          <div child-of="jnt-card-host" data-text *ngIf="!!title && !titleTemplate">{{title}}</div>\n          <ng-container *ngIf="!!titleTemplate">\n            <ng-container *ngTemplateOutlet="titleTemplate"></ng-container>\n          </ng-container>\n        </div>\n        <ng-content></ng-content>\n      </div>\n      <div child-of="jnt-card-host" data-picture *ngIf="!!picture && picture.position === ui.position.right">\n        <ng-container *ngIf="!!picture.template; else cardImageTemplate">\n          <ng-container *ngTemplateOutlet="picture.template"></ng-container>\n        </ng-container>\n      </div>\n    </jnt-stack>\n\n    <div child-of="jnt-card-host" *ngIf="!!footerTemplate" data-footer>\n      <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>\n    </div>\n  </jnt-stack>\n\n</jnt-stack>\n\n<jnt-button child-of="jnt-card-host" *ngIf="!!cardActionsTemplate"\n            data-action\n            [scheme]="ui.scheme.secondary"\n            [size]="ui.size.small"\n            [icon]="ui.icons.actions"\n            (attached)="popover = $event"\n            [jntPopover]="{\n              contentTemplate: dropdownTemplate,\n              position: ui.position.right,\n              trigger: ui.trigger.click\n            }">\n</jnt-button>\n\n<ng-template #dropdownTemplate>\n  <ng-container *ngTemplateOutlet="cardActionsTemplate; context: {hide: hideActions.bind(this)}"></ng-container>\n</ng-template>\n\n<div child-of="jnt-card-host" *ngIf="state === ui.state.loading" data-load>\n  <jnt-spinner child-of="jnt-card-host" [size]="ui.size.large"></jnt-spinner>\n</div>\n<div child-of="jnt-card-host" *ngIf="state === ui.state.error" data-error>\n  <jnt-icon child-of="jnt-card-host" [icon]="ui.icons.sad"></jnt-icon>\n</div>'}),G("design:paramtypes",[We])],e)}(),Bo=function(){function t(){}return t=q([i.NgModule({declarations:[_o],imports:[o.CommonModule,Gn,Ge,Xn,ko,qe,we],entryComponents:[_o],exports:[_o]})],t)}(),zo=["0","1","2","3","4","5","6","7","8","9"],Ho=function(){function e(e,n){var o=this;this.logger=e,this.fb=n,this.host="jnt-input-host",this.ui=Yt,this.view={password:{display:!1}},this._type=t["ɵba"].text,this._placeholder="",this.inputControl=this.fb.control(null),this.formattedControl=this.fb.control(null),this.form=this.fb.group({input:this.inputControl,formatted:this.formattedControl}),this.focused=!1,this.disabled=!1,this._scheme=t["ɵbb"].normal,this._size=t["ɵm"].normal,this._width=t["ɵv"].default,this.name=null,this.autocomplete=t["ɵbc"].off,this.textAlign=t["ɵy"].left,this.min=null,this.max=null,this.step=1,this.readonly=!1,this.rows=5,this.features=[],this.click=new i.EventEmitter,this.tabindex=1,this.onChange=function(){return o.logger.error("value accessor is not registered")},this.onTouched=function(){return o.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return o.onChange=t},this.registerOnTouched=function(t){return o.onTouched=t},this.onBlur=function(){return o.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"withIcon",{get:function(){return!!this.icon},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"scheme",{set:function(e){this._scheme=e||t["ɵbb"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"placeholder",{get:function(){return this._placeholder},set:function(t){this._placeholder=t||""},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"type",{get:function(){return this._type},set:function(e){this._type=e||t["ɵba"].text},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"width",{set:function(e){this._width=e||t["ɵv"].default},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"mask",{get:function(){return this._mask},set:function(t){this._mask=t,t&&this.form.setValue(this.masking(this.inputControl.value||""))},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.inputControl.valueChanges.subscribe((function(n){return e.onChange(n?e.type===t["ɵba"].number?+n:n:null)})),this.formattedControl.valueChanges.pipe(p.distinctUntilChanged(),p.filter((function(){return!!e.maskedInput})),p.map((function(t){return t||e.mask}))).subscribe((function(t){var n=t.indexOf("_");e.maskedInput.nativeElement.setSelectionRange(n,n);for(var o={input:null,formatted:null},i=0;i<e.mask.length;i++)if(e.mask.charAt(i)!==t.charAt(i)){o=e.masking(t.substr(i));break}o.input===e.inputControl.value&&o.formatted===e.formattedControl.value||e.form.setValue(o)}))},e.prototype.masking=function(t){var e,n;void 0===t&&(t=null);var o=t?t.replace(/\D/gi,""):"",i=this.mask,r=this.mask.split("_").length-1;try{for(var a=W(o),s=a.next();!s.done;s=a.next()){var l=s.value;i=i.replace("_",l)}}catch(t){e={error:t}}finally{try{s&&!s.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}return{input:o.substr(0,r)||null,formatted:i!==this.mask?i:null}},e.prototype.pasteMask=function(t){t.preventDefault();var e=t.clipboardData.getData("text"),n=this.masking(e);this.form.setValue(n)},e.prototype.keydownMask=function(t){var e,n=this.inputControl.value||"";if(zo.includes(t.key))e=this.masking(n+t.key);else if(t.key===Ot.backspace)e=this.masking(n.substr(0,n.length-1));else if(t.key===Ot.tab||t.key===Ot.arrowLeft||t.key===Ot.arrowRight||(t.ctrlKey||t.metaKey)&&t.key===Ot.v)return;t.preventDefault(),void 0!==e&&this.form.setValue(e)},e.prototype.keydown=function(e){this.type===t["ɵba"].number&&this.inputControl.value&&1===this.inputControl.value.length&&e.key===Ot.backspace&&this.inputControl.setValue(null),e.key===Ot.enter&&e.preventDefault()},e.prototype.keyup=function(){var e=this.inputControl.value;if(this.type===t["ɵba"].text&&this.transform&&e){switch(this.transform){case t["ɵz"].capitalize:e=e.charAt(0).toUpperCase()+e.slice(1);break;case t["ɵz"].lowercase:e=e.toLowerCase();break;case t["ɵz"].uppercase:e=e.toUpperCase()}this.inputControl.setValue(e)}},e.prototype.writeValue=function(t){this.form.patchValue(this.mask?this.masking(t):{input:t},{emitEvent:!1})},e.prototype.setDisabledState=function(t){this.disabled=t},e.prototype.setNumber=function(t){if(""===this.inputControl.value||null===this.inputControl.value)this.inputControl.setValue(0);else{var e=+this.inputControl.value+t;e=void 0!==this.max&&null!==this.max?Math.min(e,this.max):e,e=void 0!==this.min&&null!==this.min?Math.max(e,this.min):e,this.inputControl.setValue(e)}},e.prototype.clear=function(t){this.inputControl.setValue(null),this.formattedControl.setValue(this.mask),t.stopPropagation()},e.prototype.focus=function(){this.valueInput?this.valueInput.nativeElement.focus():this.maskedInput&&this.maskedInput.nativeElement.focus()},e.ctorParameters=function(){return[{type:a.NGXLogger},{type:r.FormBuilder}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.ViewChild("valueInput",{read:i.ElementRef,static:!1}),G("design:type",i.ElementRef)],e.prototype,"valueInput",void 0),q([i.ViewChild("maskedInput",{read:i.ElementRef,static:!1}),G("design:type",i.ElementRef)],e.prototype,"maskedInput",void 0),q([i.HostBinding("attr.data-focused"),G("design:type",Object)],e.prototype,"focused",void 0),q([i.HostBinding("attr.data-disabled"),G("design:type",Object)],e.prototype,"disabled",void 0),q([i.HostBinding("attr.data-scheme"),G("design:type",String)],e.prototype,"_scheme",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([i.HostBinding("attr.data-width"),G("design:type",String)],e.prototype,"_width",void 0),q([i.HostBinding("attr.data-with-icon"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"withIcon",null),q([Zt({description:"Icon for input",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"icon",void 0),q([Zt({description:"Label for input",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"label",void 0),q([Zt({description:"Name for input",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"name",void 0),q([Zt({description:"Text transform for input",path:"ui.text.transform",options:[t["ɵz"].capitalize,t["ɵz"].uppercase,t["ɵz"].lowercase]}),i.Input(),G("design:type",String)],e.prototype,"transform",void 0),q([Zt({description:"Auto complete for input",path:"ui.input.autocomplete",options:[t["ɵbc"].on,t["ɵbc"].off]}),i.Input(),G("design:type",String)],e.prototype,"autocomplete",void 0),q([Zt({description:"Input text align",path:"ui.text.align",default:t["ɵy"].left,options:[t["ɵy"].left,t["ɵy"].right]}),i.HostBinding("attr.data-textAlign"),i.Input(),G("design:type",String)],e.prototype,"textAlign",void 0),q([Zt({description:"Minimum number value that can be entered. For input with typeControl = number",type:"number"}),i.Input(),G("design:type",Number)],e.prototype,"min",void 0),q([Zt({description:"Maximum number value that can be entered. For input with typeControl = number",type:"number"}),i.Input(),G("design:type",Number)],e.prototype,"max",void 0),q([Zt({description:"Step for entered value. For input with typeControl = number",type:"number"}),i.Input(),G("design:type",Object)],e.prototype,"step",void 0),q([Zt({description:"Used to specify that the input field is read-only",type:"boolean",default:"false"}),i.Input(),G("design:type",Object)],e.prototype,"readonly",void 0),q([Zt({description:"Input scheme",path:"ui.input.scheme",default:t["ɵbb"].normal,options:[t["ɵbb"].normal,t["ɵbb"].success,t["ɵbb"].failed]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"scheme",null),q([Zt({description:"Input placeholder",type:"string"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"placeholder",null),q([Zt({description:"Input typeControl",path:"ui.input.type",default:t["ɵba"].text,options:[t["ɵba"].text,t["ɵba"].number,t["ɵba"].password]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"type",null),q([Zt({description:"Input size",path:"ui.size",default:t["ɵm"].normal,options:[t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Input width",path:"ui.width",default:t["ɵv"].default,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"width",null),q([Zt({description:"Input state",path:"ui.state",options:[t["ɵbd"].loading,t["ɵbd"].warning,t["ɵbd"].checked]}),i.HostBinding("attr.data-state"),i.Input(),G("design:type",String)],e.prototype,"state",void 0),q([Zt({description:"Max rows for multiline mode",type:"number",default:5}),i.Input(),G("design:type",Object)],e.prototype,"rows",void 0),q([Zt({description:"Mask pattern where _ - is digit",type:"string",default:null}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"mask",null),q([Zt({description:"Button for reset input; Allow multiple lines in input",path:"ui.feature",options:[t["ɵx"].allowEmpty,t["ɵx"].multiline]}),i.HostBinding("attr.data-features"),i.Input(),G("design:type",Array)],e.prototype,"features",void 0),q([Zt({description:"Click event",path:"EventEmitter"}),i.Output(),G("design:type",Object)],e.prototype,"click",void 0),q([i.HostBinding("attr.tabindex"),G("design:type",Object)],e.prototype,"tabindex",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-input",template:'<form child-of="jnt-input-host" [formGroup]="form">\n  <div child-of="jnt-input-host" data-label *ngIf="!!label">{{label}}</div>\n  <jnt-stack child-of="jnt-input-host" data-content [orientation]="ui.orientation.horizontal"\n             [gutter]="ui.gutter.small" [align]="ui.align.center">\n    <jnt-icon child-of="jnt-input-host" data-label-icon *ngIf="!!icon && !label && !(features | includes : ui.feature.multiline)"\n              [icon]="icon">\n    </jnt-icon>\n\n    <input child-of="jnt-input-host" #maskedInput *ngIf="!!mask; else inputTemplate"\n           formControlName="formatted"\n           type="tel"\n           [name]="name"\n           (focusin)="focused = true"\n           (focusout)="focused = false"\n           [placeholder]="mask"\n           [readonly]="readonly ? readonly : null"\n           [autocomplete]="autocomplete"\n           (paste)="pasteMask($event)"\n           (keydown)="keydownMask($event)"  />\n\n    <ng-template #inputTemplate>\n      <textarea child-of="jnt-input-host" *ngIf="features | includes: ui.feature.multiline; else singleLineTemplate"\n                formControlName="input"\n                [placeholder]="placeholder"\n                [attr.rows]="rows"\n                (focusin)="focused = true"\n                (focusout)="focused = false">\n      </textarea>\n      <ng-template #singleLineTemplate>\n        <input child-of="jnt-input-host" #valueInput\n               formControlName="input"\n               [name]="name"\n               [type]="type === ui.input.type.password && view.password.display ? ui.input.type.text : type"\n               [placeholder]="placeholder"\n               [readonly]="readonly ? readonly : null"\n               [autocomplete]="autocomplete"\n               [min]="min"\n               [max]="max"\n               (focusin)="focused = true"\n               (focusout)="focused = false"\n               (keydown)="keydown($event)"\n               (keyup)="keyup()"  />\n      </ng-template>\n    </ng-template>\n\n    <div child-of="jnt-input-host" data-loading *ngIf="state === ui.state.loading">\n      <jnt-spinner child-of="jnt-input-host" data-spinner></jnt-spinner>\n    </div>\n\n    <div child-of="jnt-input-host" data-warning *ngIf="state === ui.state.warning">\n      <jnt-icon child-of="jnt-input-host" [icon]="ui.icons.warning"></jnt-icon>\n    </div>\n\n    <div child-of="jnt-input-host" data-checked *ngIf="state === ui.state.checked">\n      <jnt-icon child-of="jnt-input-host" [icon]="ui.icons.checked"></jnt-icon>\n    </div>\n\n    <button child-of="jnt-input-host" data-view *ngIf="type === ui.input.type.password"\n            (click)="view.password.display = !view.password.display" tabindex="-1">\n      <jnt-icon child-of="jnt-input-host" [icon]="view.password.display ? ui.icons.viewHide : ui.icons.view"></jnt-icon>\n    </button>\n\n    <button child-of="jnt-input-host" data-reset *ngIf="features | includes: ui.feature.allowEmpty" tabindex="-1"\n            (click)="clear($event)">\n      <jnt-icon child-of="jnt-input-host" [icon]="ui.icons.closeSmall"></jnt-icon>\n    </button>\n\n    <div child-of="jnt-input-host" data-arrows *ngIf="type === ui.input.type.number">\n      <button child-of="jnt-input-host" [disabled]="inputControl.disabled" (click)="setNumber(step || 1)" tabindex="-1">\n        <jnt-icon child-of="jnt-input-host" [icon]="ui.icons.smallUp"></jnt-icon>\n      </button>\n      <button child-of="jnt-input-host" [disabled]="inputControl.disabled" (click)="setNumber(-step || -1)" tabindex="-1">\n        <jnt-icon child-of="jnt-input-host" [icon]="ui.icons.smallDown"></jnt-icon>\n      </button>\n    </div>\n  </jnt-stack>\n</form>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[a.NGXLogger,r.FormBuilder])],e)}(),Eo=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.FormsModule,r.ReactiveFormsModule,Gn,Ge,qe,we],exports:[Ho],entryComponents:[Ho],declarations:[Ho]})],t)}(),Fo=function(){function t(){}return t.prototype.transform=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];var o=Object.values(t);return o.sort((function(t,e){return t.index>e.index?1:t.index<e.index?-1:0})),o},t=q([i.Pipe({name:"getOptions"})],t)}(),Ro=function(){function t(){}return t.prototype.transform=function(t,e){for(var n=[],o=2;o<arguments.length;o++)n[o-2]=arguments[o];return e.persisted[t]},t=q([i.Pipe({name:"getOption"})],t)}(),Ao=function(){function t(){this.ui=Yt}return q([Zt({description:"Icon for select option",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"icon",void 0),q([Zt({description:"Key for select option",type:"number | string"}),i.Input(),G("design:type",Object)],t.prototype,"key",void 0),q([Zt({description:"Label name for select option",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"label",void 0),q([Zt({description:"Value for select option",type:"any"}),i.Input(),G("design:type",Object)],t.prototype,"value",void 0),t=q([i.Component({selector:"jnt-select-option",template:""})],t)}(),Lo=function(){function e(e,n,o,r,a,s,l){var p=this;this.hostRef=e,this.renderer=n,this.fb=o,this.popover=r,this.logger=a,this.breakpoint=s,this.device=l,this.host="jnt-select-host",this.reference={popover:null},this.destroyed=!1,this._features=[],this.ui=Yt,this._placement=t["ɵbe"].absolute,this.options={persisted:{},found:{}},this.changes={selected:0,options:0},this.selected=[],this.queryControl=this.fb.control({value:null,disabled:!0}),this.form=this.fb.group({query:this.queryControl}),this.labelField="label",this.keyField="key",this.placeholder="",this.required=!1,this._mode=t["ɵbf"].single,this._size=t["ɵm"].normal,this._width=t["ɵv"].default,this.updated=new i.EventEmitter,this.opened=!1,this.disabled=!1,this.loader=null,this.onChange=function(){return p.logger.error("value accessor is not registered")},this.onTouched=function(){return p.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return p.onChange=t},this.registerOnTouched=function(t){return p.onTouched=t}}var n;return n=e,Object.defineProperty(e.prototype,"mobile",{get:function(){return this.breakpoint.current===t.Breakpoint.mobile},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"placement",{get:function(){return this._placement},set:function(e){this._placement=e||t["ɵbe"].absolute},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"mode",{get:function(){return this._mode},set:function(e){this._mode=e||t["ɵbf"].single},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"features",{get:function(){return this._features},set:function(e){this._features=e||[],this.features.includes(t["ɵx"].search)?this.queryControl.enable({emitEvent:!1}):this.queryControl.disable({emitEvent:!1})},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"width",{set:function(e){this._width=e||t["ɵv"].default},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"empty",{get:function(){return 0===this.selected.length},enumerable:!0,configurable:!0}),e.prototype.clickOutside=function(t){this.reference.popover&&this.opened&&!this.picked(t)&&!this.reference.popover.picked(t)&&this.close()},e.prototype.focused=function(e){var n=e.target;switch(this.mode){case t["ɵbf"].single:break;case t["ɵbf"].multiple:n===this.selectedList.nativeElement&&(this.opened?this.close():this.open())}},e.prototype.blurred=function(){this.onTouched()},e.prototype.ngOnInit=function(){var t=this;this.queryControl.valueChanges.pipe(p.distinctUntilChanged(),p.tap((function(e){t.logger.debug("query has been changed"),t.loading=!!e&&!!t.loader;var n=t.queryInput.nativeElement;if(e&&e.length>0){var o=Math.max(8*(e.length+1),20);t.renderer.setStyle(n,"width",o+"px")}else t.renderer.removeStyle(n,"width")})),p.debounceTime(100),p.filter((function(t){return!!t}))).subscribe((function(e){return function(e){if(t.fetcher&&t.fetcher.unsubscribe(),t.loader)t.fetcher=t.loader(e).pipe(p.finalize((function(){return t.loading=!1}))).subscribe((function(e){t.options.found={},e.forEach((function(e,n){var o=e[t.keyField];o&&(t.options.found[""+o]={index:n,key:o,label:e[t.labelField],icon:e.icon,value:e})})),t.changes.options++}));else{t.options.found={};var n=Object.values(t.options.persisted);(n=n.filter((function(t){return t.label.toLocaleLowerCase().includes(e.toLocaleLowerCase())}))).forEach((function(e){return t.options.found[e.key]=e})),t.changes.options++}}(e)}))},e.prototype.ngAfterContentInit=function(){var t=this,e=function(e){t.options.persisted={},e.forEach((function(e,n){var o=e.key,i=e.label,r=e.icon,a=e.value;return t.options.persisted[""+o]={index:n,key:o,label:i,icon:r,value:a}})),t.changes.options++};e(this.optionsFromMarkup.toArray()),this.optionsFromMarkup.changes.pipe(p.tap((function(){return t.logger.debug("options from markup changed")}))).subscribe((function(t){return e(t.toArray())}))},e.prototype.ngOnDestroy=function(){this.destroyed=!0,this.reference.popover&&(this.reference.popover.hide(),this.reference.popover=null)},e.prototype.picked=function(t){return-1!==t.indexOf(this.hostRef.nativeElement)},e.prototype.trackOption=function(t,e){return e.key||t},e.prototype.toggle=function(t){-1===this.selected.indexOf(t.key)?this.select(t):this.remove(t.key)},e.prototype.select=function(e){this.logger.debug("option is selected"),this.options.persisted[""+e.key]=e,this.changes.options++,this.mode===t["ɵbf"].multiple?(this.selected.push(e.key),this.reference.popover&&this.reference.popover.update()):this.selected=[e.key],this.mode===t["ɵbf"].multiple&&this.features.includes(t["ɵx"].multiplex)||this.close(),this.onChange(this.mode===t["ɵbf"].multiple?this.selected:e.key),this.updated.emit(e.value)},e.prototype.remove=function(e){var n=this.selected.findIndex((function(t){return t===e}));-1===n||this.mode!==t["ɵbf"].multiple&&!this.features.includes(t["ɵx"].allowEmpty)||(this.logger.debug("option "+n+" has been removed"),this.selected.splice(n,1),this.changes.selected++,this.onChange(this.mode===t["ɵbf"].multiple?this.selected:null))},e.prototype.open=function(){var t=this;this.opened=!0;var e=this.queryInput.nativeElement,n=function(){"none"!==getComputedStyle(e).display?e.focus():setTimeout((function(){return n()}),100)};setTimeout((function(){return n()}),100),this.mobile||(this.reference.popover=this.popover.show(this.hostRef,{contentTemplate:this.optionsTemplate,behaviour:rt.dropdown,placement:this.placement,padding:Yt.gutter.small}),this.popover.attached.pipe(p.takeWhile((function(){return!t.destroyed})),p.filter((function(e){return!!e&&e!==t.hostRef}))).subscribe((function(){return t.close()})))},e.prototype.close=function(){this.opened=!1,this.queryControl.setValue(null),this.reference.popover&&(this.reference.popover.hide(),this.reference.popover=null)},e.prototype.writeValue=function(e){if(this.mode===t["ɵbf"].multiple&&!e)throw new Error("Wrong value form multiple select mode");this.selected=this.mode===t["ɵbf"].single?e?[e]:[]:e},e.prototype.setDisabledState=function(t){this.disabled=t},e.ctorParameters=function(){return[{type:i.ElementRef},{type:i.Renderer2},{type:r.FormBuilder},{type:vo},{type:a.NGXLogger},{type:We},{type:Ye}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Select label field",type:"string",default:"label"}),i.Input(),G("design:type",Object)],e.prototype,"labelField",void 0),q([Zt({description:"Select key field",type:"string",default:"key"}),i.Input(),G("design:type",Object)],e.prototype,"keyField",void 0),q([Zt({description:"Select placeholder",type:"string"}),i.Input(),G("design:type",Object)],e.prototype,"placeholder",void 0),q([Zt({description:"Select required",type:"boolean",default:"false"}),i.Input(),G("design:type",Object)],e.prototype,"required",void 0),q([i.HostBinding("attr.data-mode"),G("design:type",String)],e.prototype,"_mode",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([i.HostBinding("attr.data-width"),G("design:type",String)],e.prototype,"_width",void 0),q([Zt({description:"Select label",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"label",void 0),q([Zt({description:"Icon for select",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"icon",void 0),q([i.ViewChild("queryInput",{static:!0}),G("design:type",i.ElementRef)],e.prototype,"queryInput",void 0),q([i.ViewChild("selectedList",{static:!0}),G("design:type",i.ElementRef)],e.prototype,"selectedList",void 0),q([i.ViewChild("query"),G("design:type",i.ElementRef)],e.prototype,"query",void 0),q([Zt({description:"Select state",path:"ui.state",options:[t["ɵbd"].loading]}),i.HostBinding("attr.data-state"),i.Input(),G("design:type",String)],e.prototype,"state",void 0),q([Zt({description:"Template for option",type:"TemplateRef<any>"}),i.Input(),G("design:type",i.TemplateRef)],e.prototype,"optionTemplate",void 0),q([Zt({description:"Template for empty options",type:"TemplateRef<any>"}),i.Input(),G("design:type",i.TemplateRef)],e.prototype,"emptyOptionsTemplate",void 0),q([Zt({description:"Template for options header",type:"TemplateRef<any>"}),i.Input(),G("design:type",i.TemplateRef)],e.prototype,"optionsHeaderTemplate",void 0),q([i.ContentChildren(Ao),G("design:type",i.QueryList)],e.prototype,"optionsFromMarkup",void 0),q([i.ViewChild("optionsTemplate"),G("design:type",i.TemplateRef)],e.prototype,"optionsTemplate",void 0),q([Zt({description:"Selected value",type:"(selected)="}),i.Output("selected"),G("design:type",Object)],e.prototype,"updated",void 0),q([i.HostBinding("attr.data-opened"),G("design:type",Object)],e.prototype,"opened",void 0),q([Zt({description:"Menu popover placement",path:"ui.placement",default:t["ɵbe"].absolute,options:[t["ɵbe"].absolute,t["ɵbe"].fixed]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"placement",null),q([Zt({description:"Select mode",path:"ui.select.mode",default:t["ɵbf"].single,options:[t["ɵbf"].single,t["ɵbf"].multiple]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"mode",null),q([Zt({description:"Select features",path:"ui.feature",options:[t["ɵx"].search,t["ɵx"].multiplex,t["ɵx"].allowEmpty]}),i.HostBinding("attr.data-features"),i.Input(),G("design:type",Array),G("design:paramtypes",[Array])],e.prototype,"features",null),q([i.HostBinding("attr.data-disabled"),i.Input(),G("design:type",Object)],e.prototype,"disabled",void 0),q([Zt({description:"Select size",path:"ui.size",default:t["ɵm"].normal,options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Select width",path:"ui.width",default:t["ɵv"].default,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"width",null),q([i.HostBinding("attr.data-empty"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"empty",null),q([Zt({description:"Select loader",type:"function"}),i.Input(),G("design:type",Object)],e.prototype,"loader",void 0),q([i.HostListener("document:click",["$event.path"]),G("design:type",Function),G("design:paramtypes",[Array]),G("design:returntype",void 0)],e.prototype,"clickOutside",null),q([i.HostListener("click",["$event"]),G("design:type",Function),G("design:paramtypes",[Object]),G("design:returntype",void 0)],e.prototype,"focused",null),q([i.HostListener("blur"),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],e.prototype,"blurred",null),e=n=q([i.Component({selector:"jnt-select",template:'<ng-template #emptyOptionsDefaultTemplate let-query="query">\n  <jnt-icon child-of="jnt-select-host" [icon]="ui.icons.neutral"></jnt-icon>\n</ng-template>\n\n<ng-template #optionDefaultTemplate let-icon="icon" let-label="label">\n  <jnt-stack child-of="jnt-select-host" [orientation]="ui.orientation.horizontal"\n             [gutter]="ui.gutter.small"\n             [align]="ui.align.center">\n    <jnt-icon child-of="jnt-select-host" *ngIf="icon" [icon]="icon"></jnt-icon>\n    <div child-of="jnt-select-host" >{{label}}</div>\n  </jnt-stack>\n</ng-template>\n\n<jnt-stack child-of="jnt-select-host" data-select [orientation]="ui.orientation.horizontal"\n           [gutter]="ui.gutter.tiny" [align]="ui.align.center"\n           tabindex="0">\n  <div child-of="jnt-select-host" *ngIf="!!label" data-label>{{label}}</div>\n  <jnt-icon child-of="jnt-select-host" *ngIf="!!icon && !label" [icon]="icon"></jnt-icon>\n  <ul child-of="jnt-select-host" #selectedList>\n    <ng-container *ngIf="selected.length">\n      <li child-of="jnt-select-host" *ngFor="let key of selected" (click)="mode == ui.select.mode.single ? (opened ? close() : open()) : null"\n      [attr.data-with-template]="!!optionTemplate">\n        <ng-template #noOptionTemplate>\n          <div child-of="jnt-select-host" data-empty></div>\n        </ng-template>\n        <div child-of="jnt-select-host" *ngIf="(key | getOption:options:changes.selected:changes.options) as o;else noOptionTemplate">\n          <ng-container *ngTemplateOutlet="!!optionTemplate ? optionTemplate\n            : optionDefaultTemplate;context: {icon: o.icon, label: o.label, value: o.value, selected: true}">\n          </ng-container>\n        </div>\n        <button child-of="jnt-select-host" data-close type="button" (click)="remove(key)">\n          <jnt-icon child-of="jnt-select-host" [icon]="ui.icons.closeSmall"></jnt-icon>\n        </button>\n      </li>\n    </ng-container>\n\n    <li child-of="jnt-select-host" data-query [formGroup]="form" (click)="opened ? close() : open()">\n      <input child-of="jnt-select-host" #queryInput [placeholder]="mode != ui.select.mode.multiple || !selected.length ? placeholder : \'\'"\n             formControlName="query"  />\n    </li>\n  </ul>\n  <div child-of="jnt-select-host" data-loading *ngIf="state === ui.state.loading">\n    <jnt-spinner child-of="jnt-select-host" data-spinner></jnt-spinner>\n  </div>\n  <button child-of="jnt-select-host" data-toggle type="button" (click)="opened ? close() : open()">\n    <jnt-icon child-of="jnt-select-host" [icon]="opened ? ui.icons.selectOpen : ui.icons.selectClose"></jnt-icon>\n  </button>\n</jnt-stack>\n\n<ng-template #optionsTemplate>\n  <div child-of="jnt-select-host" data-options *ngIf="opened" [attr.data-loading]="loading">\n    <ng-template #noOptionsTemplate>\n      <div child-of="jnt-select-host" data-skeleton>\n        <jnt-skeleton child-of="jnt-select-host" *ngIf="loading; else optionsNotFoundTemplate"\n                      [type]="ui.skeleton.type.text" [lines]="5"></jnt-skeleton>\n      </div>\n      <ng-template #optionsNotFoundTemplate>\n        <div child-of="jnt-select-host" data-empty-options>\n          <ng-container *ngTemplateOutlet="!!emptyOptionsTemplate ? emptyOptionsTemplate\n              : emptyOptionsDefaultTemplate;context: {query: queryControl.value, close: close.bind(this)}">\n          </ng-container>\n        </div>\n      </ng-template>\n    </ng-template>\n    <ng-container *ngIf="((!!queryControl.value ? options.found : options.persisted)\n    | getOptions:changes.selected:changes.options) as options">\n      <ng-container *ngIf="options.length;else noOptionsTemplate">\n        <div child-of="jnt-select-host" data-loading *ngIf="loading">\n          <jnt-spinner child-of="jnt-select-host" data-spinner></jnt-spinner>\n        </div>\n        <jnt-stack child-of="jnt-select-host" [align]="ui.align.stretch">\n          <div child-of="jnt-select-host" data-options-header *ngIf="!!optionsHeaderTemplate">\n            <ng-container *ngTemplateOutlet="optionsHeaderTemplate;context: {close: close.bind(this)}"></ng-container>\n          </div>\n          <ul child-of="jnt-select-host" [attr.data-windows]="device.platform.windows">\n            <li child-of="jnt-select-host" *ngFor="let o of options;trackBy:trackOption"\n                [attr.data-selected]="selected | includes:o.key"\n                (click)="toggle(o)">\n              <ng-container *ngTemplateOutlet="!!optionTemplate ? optionTemplate\n              : optionDefaultTemplate;context: {icon: o.icon, label: o.label, value: o.value}">\n              </ng-container>\n            </li>\n          </ul>\n        </jnt-stack>\n      </ng-container>\n    </ng-container>\n  </div>\n</ng-template>\n\n<ng-container *jntFor="ui.breakpoint.mobile">\n  <ng-container *ngTemplateOutlet="optionsTemplate"></ng-container>\n</ng-container>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[i.ElementRef,i.Renderer2,r.FormBuilder,vo,a.NGXLogger,We,Ye])],e)}(),Do=function(){function t(){}return t=q([i.NgModule({declarations:[Lo,Ao,Fo,Ro],imports:[o.CommonModule,r.FormsModule,r.ReactiveFormsModule,Gn,Ge,Kn,Xn,we,qe,a.LoggerModule,an],entryComponents:[Lo,Ao],exports:[Lo,Ao]})],t)}(),No=function(){function e(e){var n=this;this.logger=e,this.ui=Yt,this._pageSize=10,this._selectedPage=1,this.size=3,this.host="jnt-pager-host",this.mode=t["ɵbw"].offset,this.onChange=function(){return n.logger.error("value accessor is not registered")},this.onTouched=function(){return n.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return n.onChange=t},this.registerOnTouched=function(t){return n.onTouched=t},this.onBlur=function(){return n.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"visible",{get:function(){return this.pagesCount>1?"visible":"collapse"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"count",{set:function(t){this._count=t,this.render()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"pagesCount",{get:function(){return Math.ceil(this._count/this.pageSize)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"pageSize",{get:function(){return this._pageSize},set:function(t){this._pageSize=t,this.render()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selectedPage",{get:function(){return this._selectedPage},set:function(t){this._selectedPage=t,this.render()},enumerable:!0,configurable:!0}),e.prototype.writeValue=function(e){switch(this.mode){case t["ɵbw"].page:this.logger.debug("set page ",e),this.selectedPage=e;break;case t["ɵbw"].offset:var n=Math.ceil(e/this.pageSize)+1;this.logger.debug("set page ",n),this.selectedPage=n}},e.prototype.setPage=function(e){if(e>=1&&e<=this.pagesCount){switch(this.mode){case t["ɵbw"].page:this.onChange(e);break;case t["ɵbw"].offset:this.onChange((e-1)*this.pageSize)}this.selectedPage=e}},e.prototype.render=function(){var t=[],e=Math.max(this.size-this.selectedPage+1,0),n=Math.min(this.selectedPage+this.size+e,this.pagesCount);e=Math.max(this.selectedPage+this.size-this.pagesCount,0);for(var o=Math.max(this.selectedPage-this.size-e,1);o<=n;o++)t.push(o);this.pages=t},e.ctorParameters=function(){return[{type:a.NGXLogger}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("style.visibility"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"visible",null),q([Zt({description:"Items count for pager",type:"number"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"count",null),q([Zt({description:"Page size for pager",type:"number",default:"10"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"pageSize",null),q([Zt({description:"Mode for pager",path:"ui.pager.mode",options:[t["ɵbw"].offset,t["ɵbw"].page],default:t["ɵbw"].offset}),i.Input(),G("design:type",String)],e.prototype,"mode",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-pager",template:'<jnt-stack child-of="jnt-pager-host" [orientation]="ui.orientation.horizontal"\n           [gutter]="ui.gutter.small"\n           [justify]="ui.justify.center">\n  <a child-of="jnt-pager-host" [attr.data-href]="\'?page=\' + 1"\n     [attr.disabled]="selectedPage === 1"\n     (click)="setPage(1)"\n     title="First">\n    <jnt-icon child-of="jnt-pager-host" [icon]="ui.icons.first"></jnt-icon>\n  </a>\n  <a child-of="jnt-pager-host" title="Previous"\n     [attr.disabled]="selectedPage === 1"\n     (click)="setPage(selectedPage - 1)"\n     data-page="1">\n    <jnt-icon child-of="jnt-pager-host" [icon]="ui.icons.chevronLeft"></jnt-icon>\n  </a>\n  <a child-of="jnt-pager-host" *ngFor="let page of pages"\n     (click)="setPage(page)"\n     [attr.active]="page === selectedPage"\n     tabindex="0">{{page}}</a>\n  <a child-of="jnt-pager-host" title="Next"\n     [attr.disabled]="selectedPage >= pagesCount"\n     (click)="setPage(selectedPage + 1)">\n    <jnt-icon child-of="jnt-pager-host" [icon]="ui.icons.chevronRight"></jnt-icon>\n  </a>\n  <a child-of="jnt-pager-host" title="Last"\n     (click)="setPage(pagesCount)"\n     [attr.disabled]="selectedPage >= pagesCount">\n    <jnt-icon child-of="jnt-pager-host" [icon]="ui.icons.last"></jnt-icon>\n  </a>\n</jnt-stack>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[a.NGXLogger])],e)}(),qo=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.FormsModule,r.ReactiveFormsModule,Gn,qe,Do],declarations:[No],entryComponents:[No],exports:[No]})],t)}(),Vo=function(){function e(){this.align=t["ɵy"].left}return q([ee({selector:"#tableCellTemplate",description:"table cell template"}),i.ContentChild("tableCellTemplate"),G("design:type",i.TemplateRef)],e.prototype,"tableCellTemplate",void 0),q([Zt({description:"Column title",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([Zt({description:"Column width",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"width",void 0),q([Zt({description:"Column title align",type:"string",path:"ui.text.align"}),i.Input(),G("design:type",String)],e.prototype,"align",void 0),q([Zt({description:"Column sort field",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"orderBy",void 0),e=q([i.Component({selector:"jnt-table-column",template:""})],e)}(),Go=function(){function t(t){this.keys=t}return t.prototype.getTranslation=function(t){return s.of(this.keys)},t}();function Wo(t){return new Go(t.i18n)}var Yo=R.TranslateModule.forRoot({isolate:!0,loader:{provide:R.TranslateLoader,useFactory:Wo,deps:[gn]},defaultLanguage:"en"}).providers,Uo=function(){function e(t,e){var n=this;this.logger=t,this.fb=e,this.ui=Yt,this.subscriptions={fetcher:new s.Subscription},this.progress={loading:!1},this.source=[],this.orderByControl=this.fb.control(null),this.firstControl=this.fb.control(10),this.form=this.fb.group({q:[null],orderBy:this.orderByControl,first:this.firstControl,offset:[0]}),this.host="jnt-table-host",this.features=[],this.reloaded=new i.EventEmitter,this.onChange=function(){return n.logger.error("value accessor is not registered")},this.onTouched=function(){return n.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return n.onChange=t},this.registerOnTouched=function(t){return n.onTouched=t},this.onBlur=function(){return n.onTouched()}}var n;return n=e,e.prototype.ngOnInit=function(){var t=this;this.form.valueChanges.pipe(p.filter((function(){return!!t.fetcher})),p.debounceTime(500)).subscribe((function(e){var n=e.q,o=e.orderBy,i=e.first,r=e.offset;t.onChange({q:n,orderBy:o,first:i,offset:r})}))},e.prototype.ngOnDestroy=function(){this.subscriptions.fetcher.unsubscribe()},e.prototype.load=function(t){var e=this;void 0===t&&(t=this.form.getRawValue()),this.fetcher&&(this.progress.loading=!0,this.subscriptions.fetcher.unsubscribe(),this.subscriptions.fetcher=this.fetcher(t).pipe(p.finalize((function(){return e.progress.loading=!1}))).subscribe((function(t){e.source=t.results,e.count=t.count})))},e.prototype.sorting=function(t){this.orderByControl.setValue(this.orderByControl.value===t?"-"+t:t)},e.prototype.writeValue=function(t){var e=t.q,n=t.orderBy,o=t.first,i=t.offset;this.form.patchValue({q:e,orderBy:n,first:o,offset:i},{emitEvent:!1})},e.prototype.hideActions=function(){this.popover.hide()},e.ctorParameters=function(){return[{type:a.NGXLogger},{type:r.FormBuilder}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Table features",path:"ui.feature",options:[t["ɵx"].search,t["ɵx"].reload]}),i.Input(),G("design:type",Array)],e.prototype,"features",void 0),q([Zt({description:"Table fetch function",type:"Function"}),i.Input(),G("design:type",Function)],e.prototype,"fetcher",void 0),q([Zt({description:"Output event of reload table"}),i.Output(),G("design:type",Object)],e.prototype,"reloaded",void 0),q([i.ContentChildren(Vo),G("design:type",i.QueryList)],e.prototype,"columns",void 0),q([ee({selector:"#tableRowActionsTemplate",description:"table row actions template"}),i.ContentChild("tableRowActionsTemplate"),G("design:type",i.TemplateRef)],e.prototype,"rowActionsTemplate",void 0),q([ee({selector:"#tableActionsTemplate",description:"table actions template"}),i.ContentChild("tableActionsTemplate"),G("design:type",i.TemplateRef)],e.prototype,"actionsTemplate",void 0),q([ee({selector:"#tableFiltersTemplate",description:"table filters template"}),i.ContentChild("tableFiltersTemplate"),G("design:type",i.TemplateRef)],e.prototype,"filtersTemplate",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),q([te({description:"reload table"}),G("design:type",Function),G("design:paramtypes",[Object]),G("design:returntype",void 0)],e.prototype,"load",null),q([te({description:"sorting data table by field"}),G("design:type",Function),G("design:paramtypes",[String]),G("design:returntype",void 0)],e.prototype,"sorting",null),e=n=q([i.Component({selector:"jnt-table",template:'<form child-of="jnt-table-host" [formGroup]="form">\n  <jnt-stack child-of="jnt-table-host" [align]="ui.align.stretch" [gutter]="ui.gutter.none">\n    <ng-container *jntMinFor="ui.breakpoint.desktop">\n      <jnt-stack child-of="jnt-table-host" data-feature *ngIf="(features | includes : [ui.feature.reload, ui.feature.search]) || !!actionsTemplate"\n                 [orientation]="ui.orientation.horizontal"\n                 [align]="ui.align.center"\n                 [justify]="ui.justify.between">\n        <jnt-stack child-of="jnt-table-host" *ngIf="(features | includes : ui.feature.reload) || !!actionsTemplate"\n                   [orientation]="ui.orientation.horizontal"\n                   [align]="ui.align.center">\n          <jnt-button child-of="jnt-table-host" data-button *ngIf="features | includes : ui.feature.reload"\n                      [text]="\'action.reload\' | translate"\n                      [icon]="progress.loading ? ui.icons.animated.reload : ui.icons.reload"\n                      [outline]="ui.outline.transparent"\n                      [disabled]="progress.loading"\n                      (click)="load(); reloaded.emit()">\n          </jnt-button>\n          <ng-container *ngTemplateOutlet="actionsTemplate"></ng-container>\n        </jnt-stack>\n        <jnt-input child-of="jnt-table-host" data-search *ngIf="features | includes : ui.feature.search"\n                   formControlName="q"\n                   [icon]="ui.icons.search"\n                   [features]="[ui.feature.allowEmpty]"\n                   [placeholder]="\'label.search\' | translate">\n        </jnt-input>\n      </jnt-stack>\n\n      <div child-of="jnt-table-host" data-filters *ngIf="!!filtersTemplate">\n        <ng-container *ngTemplateOutlet="filtersTemplate"></ng-container>\n      </div>\n    </ng-container>\n\n    <jnt-stack child-of="jnt-table-host" [align]="ui.align.stretch">\n      <div child-of="jnt-table-host" *jntMinFor="ui.breakpoint.desktop" data-table>\n        <table child-of="jnt-table-host" >\n          <div child-of="jnt-table-host" data-spinner *ngIf="source.length && progress.loading">\n            <jnt-spinner child-of="jnt-table-host" [size]="ui.size.large"></jnt-spinner>\n          </div>\n\n          <thead child-of="jnt-table-host" >\n          <tr child-of="jnt-table-host" >\n            <th child-of="jnt-table-host" data-actions *ngIf="!!rowActionsTemplate"></th>\n            <th child-of="jnt-table-host" *ngFor="let column of columns"\n                [attr.data-sortable]="!!column.orderBy"\n                [style.text-align]="column.align"\n                [style.width]="column.width"\n                (click)="column.orderBy ? sorting(column.orderBy) : null">\n              <span child-of="jnt-table-host" >\n                {{column.title}}\n                <i child-of="jnt-table-host" *ngIf="!!orderByControl.value && (orderByControl.value === \'-\' + column.orderBy\n                    || orderByControl.value === column.orderBy)"\n                   [innerHTML]="(orderByControl.value === column.orderBy) ? \'&#8593;\' : \'&#8595;\'"></i>\n              </span>\n            </th>\n          </tr>\n          </thead>\n\n          <tbody child-of="jnt-table-host" >\n          <ng-container *ngIf="source.length; else noDataTemplate">\n            <tr child-of="jnt-table-host" *ngFor="let row of source; let i = index" [class.even]="!(i % 2)">\n              <td child-of="jnt-table-host" *ngIf="!!rowActionsTemplate" data-actions>\n                <jnt-button child-of="jnt-table-host" data-trigger\n                            [outline]="ui.outline.transparent"\n                            [icon]="ui.icons.actions"\n                            (attached)="popover = $event"\n                            [jntPopover]="{\n                              context: \'table-row-action\',\n                              contentTemplate: dropdownTemplate,\n                              behaviour: ui.behaviour.dropdown,\n                              trigger: ui.trigger.click,\n                              padding: ui.gutter.small,\n                              minWidth: \'150px\'\n                            }">\n                </jnt-button>\n                <ng-template #dropdownTemplate>\n                  <ng-container *ngTemplateOutlet="rowActionsTemplate;\n                    context: {row: row, hide: hideActions.bind(this)}">\n                  </ng-container>\n                </ng-template>\n              </td>\n              <td child-of="jnt-table-host" *ngFor="let column of columns">\n                <ng-container *ngTemplateOutlet="column.tableCellTemplate; context: row"></ng-container>\n              </td>\n            </tr>\n          </ng-container>\n          <ng-template #noDataTemplate>\n            <ng-container *ngIf="!progress.loading; else skeletonTemplate">\n              <tr child-of="jnt-table-host" data-nodata>\n                <td child-of="jnt-table-host" [attr.colspan]="!!rowActionsTemplate ? columns.length + 1 : columns.length">\n                  <jnt-icon child-of="jnt-table-host" [icon]="ui.icons.neutral"></jnt-icon>\n                </td>\n              </tr>\n            </ng-container>\n            <ng-template #skeletonTemplate>\n              <tr child-of="jnt-table-host" data-loading>\n                <td child-of="jnt-table-host" [attr.colspan]="!!rowActionsTemplate ? columns.length + 1 : columns.length">\n                  <jnt-skeleton child-of="jnt-table-host" [lines]="4"></jnt-skeleton>\n                </td>\n              </tr>\n            </ng-template>\n          </ng-template>\n          </tbody>\n        </table>\n      </div>\n\n      <jnt-stack child-of="jnt-table-host" *jntMaxFor="ui.breakpoint.tablet" [align]="ui.align.stretch">\n        <jnt-stack child-of="jnt-table-host" data-feature [align]="ui.align.stretch">\n          <jnt-stack child-of="jnt-table-host" *ngIf="(features | includes : ui.feature.reload) || !!actionsTemplate"\n                     [orientation]="ui.orientation.horizontal" [wrap]="ui.wrap.wrap">\n            <jnt-button child-of="jnt-table-host" data-button *ngIf="features | includes : ui.feature.reload"\n                        [text]="\'action.reload\' | translate"\n                        [icon]="progress.loading ? ui.icons.animated.reload : ui.icons.reload"\n                        [outline]="ui.outline.transparent"\n                        [disabled]="progress.loading"\n                        (click)="load(); reloaded.emit()">\n            </jnt-button>\n            <jnt-stack child-of="jnt-table-host" *ngIf="!!actionsTemplate" [orientation]="ui.orientation.horizontal" [wrap]="ui.wrap.wrap">\n              <ng-container *ngTemplateOutlet="actionsTemplate"></ng-container>\n            </jnt-stack>\n          </jnt-stack>\n          <jnt-input child-of="jnt-table-host" data-search *ngIf="features | includes : ui.feature.search"\n                     formControlName="q"\n                     [icon]="ui.icons.search"\n                     [features]="[ui.feature.allowEmpty]"\n                     [placeholder]="\'label.search\' | translate">\n          </jnt-input>\n          <ng-container *ngIf="!!filtersTemplate">\n            <ng-container *ngTemplateOutlet="filtersTemplate"></ng-container>\n          </ng-container>\n        </jnt-stack>\n        <ng-template #noDataCardTemplate>\n          <jnt-stack child-of="jnt-table-host" *ngIf="!progress.loading; else skeletonCardTemplate" [align]="ui.align.center">\n            <jnt-icon child-of="jnt-table-host" data-nodata [icon]="ui.icons.neutral"></jnt-icon>\n          </jnt-stack>\n          <ng-template #skeletonCardTemplate>\n            <ng-container *ngFor="let card of 5 | mockArray">\n              <jnt-skeleton child-of="jnt-table-host" [type]="ui.skeleton.type.card"></jnt-skeleton>\n            </ng-container>\n          </ng-template>\n        </ng-template>\n        <div child-of="jnt-table-host" data-spinner *ngIf="source.length && progress.loading">\n          <jnt-spinner child-of="jnt-table-host" [size]="ui.size.large"></jnt-spinner>\n        </div>\n        <ng-container *ngIf="source.length; else noDataCardTemplate">\n          <jnt-card child-of="jnt-table-host" *ngFor="let row of source; let i = index">\n            <table child-of="jnt-table-host" data-line cellpadding="0" cellspacing="0">\n              <tr child-of="jnt-table-host" *ngFor="let column of columns">\n                <td child-of="jnt-table-host" >\n                  <b child-of="jnt-table-host" *ngIf="!!column.title">{{column.title}}</b>\n                </td>\n                <td child-of="jnt-table-host" >\n                  <ng-container *ngTemplateOutlet="column.tableCellTemplate; context: row"></ng-container>\n                </td>\n              </tr>\n            </table>\n            <ng-template *ngIf="!!rowActionsTemplate" #cardActionsTemplate let-hide="hide">\n              <ng-container *ngTemplateOutlet="rowActionsTemplate;\n                    context: {row: row, hide: hideActions.bind(this)}">\n              </ng-container>\n            </ng-template>\n          </jnt-card>\n        </ng-container>\n      </jnt-stack>\n\n      <ng-container *ngIf="!!count">\n        <div child-of="jnt-table-host" data-pagination>\n          <jnt-pager child-of="jnt-table-host" data-pages formControlName="offset"\n                     [count]="count" [pageSize]="firstControl.value">\n          </jnt-pager>\n          <jnt-select child-of="jnt-table-host" *jntMinFor="ui.breakpoint.desktop" formControlName="first" [size]="ui.size.small">\n            <jnt-select-option child-of="jnt-table-host" label="10" key="10"></jnt-select-option>\n            <jnt-select-option child-of="jnt-table-host" label="20" key="20"></jnt-select-option>\n            <jnt-select-option child-of="jnt-table-host" label="30" key="30"></jnt-select-option>\n          </jnt-select>\n        </div>\n      </ng-container>\n    </jnt-stack>\n  </jnt-stack>\n</form>',providers:U([{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}],Yo)}),G("design:paramtypes",[a.NGXLogger,r.FormBuilder])],e)}(),$o=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.FormsModule,r.ReactiveFormsModule,Gn,Eo,qo,Xn,Ge,qe,Kn,we,Do,R.TranslateModule,ko,Bo,an,Mo],declarations:[Uo,Vo],entryComponents:[Uo,Vo],exports:[Uo,Vo]})],t)}(),Xo=function(){function t(){this.ui=Yt,this.color=st.purpleLight}return q([Zt({description:"Timeline item title",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"title",void 0),q([Zt({description:"Set the color to 'red' | 'green' | 'blue' or other custom colors (css color) for timeline item",type:"string | Color"}),i.Input(),G("design:type",String)],t.prototype,"color",void 0),q([Zt({description:"Icon",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"icon",void 0),q([ee({selector:"#timelineItemContentTemplate",description:"timeline item template"}),i.ContentChild("timelineItemContentTemplate"),G("design:type",i.TemplateRef)],t.prototype,"contentTemplate",void 0),t=q([i.Component({selector:"jnt-timeline-item",template:""})],t)}(),Qo=function(){function t(){this.ui=Yt,this.host="jnt-timeline-host"}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.ContentChildren(Xo),G("design:type",i.QueryList)],t.prototype,"items",void 0),t=q([i.Component({selector:"jnt-timeline",template:'<jnt-stack child-of="jnt-timeline-host" *ngIf="!!items?.length"\n             [align]="ui.align.stretch"\n             [gutter]="ui.gutter.tiny">\n      <jnt-stack child-of="jnt-timeline-host" data-lines *ngFor="let item of items; let i = index"\n        [align]="ui.align.stretch"\n        [gutter]="ui.gutter.small">\n        <jnt-stack child-of="jnt-timeline-host" [orientation]="ui.orientation.horizontal"\n                   [align]="ui.align.center">\n          <div child-of="jnt-timeline-host" data-mark>\n            <jnt-icon child-of="jnt-timeline-host" *ngIf="!!item?.icon; else defaultTemplate" [icon]="item.icon" [style.color]="item.color"></jnt-icon>\n            <ng-template #defaultTemplate>\n              <div child-of="jnt-timeline-host" data-circle [style.background-color]="item.color"\n                               [style.color]="item.color | textBrightness">{{i + 1}}</div>\n            </ng-template>\n          </div>\n          <div child-of="jnt-timeline-host" data-title>{{item.title}}</div>\n        </jnt-stack>\n        <jnt-stack child-of="jnt-timeline-host" [orientation]="ui.orientation.horizontal"\n                   [align]="ui.align.stretch">\n          <div child-of="jnt-timeline-host" data-line>\n            <div child-of="jnt-timeline-host" ></div>\n          </div>\n          <div child-of="jnt-timeline-host" data-content>\n            <ng-container [ngTemplateOutlet]="item.contentTemplate"></ng-container>\n          </div>\n        </jnt-stack>\n      </jnt-stack>\n  </jnt-stack>'})],t)}(),Ko=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.FormsModule,r.ReactiveFormsModule,Gn,He,qe],declarations:[Qo,Xo],entryComponents:[Qo],exports:[Qo,Xo]})],t)}(),Jo=function(){function t(){}return t=q([i.NgModule({exports:[ho,$o,Ko]})],t)}(),Zo=function(){function t(){}return q([Zt({description:"Label name of chart item indicator",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"label",void 0),q([Zt({description:"Value of chart item indicator",type:"number"}),i.Input(),G("design:type",Number)],t.prototype,"value",void 0),q([Zt({description:"Title name of chart item indicator",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"title",void 0),q([Zt({description:"Set the color to 'red' | 'green' | 'blue' or other custom colors (css color) for chart item",type:"string | Color"}),i.Input(),G("design:type",String)],t.prototype,"color",void 0),q([Zt({description:"Data of chart item indicator",type:"any"}),i.Input(),G("design:type",Object)],t.prototype,"data",void 0),q([i.ContentChild("chartIndicatorTitleTemplate"),G("design:type",i.TemplateRef)],t.prototype,"titleTemplate",void 0),t=q([i.Component({selector:"jnt-chart-indicator",template:""})],t)}(),ti=function(){function e(t){var e=this;this.logger=t,this.host="jnt-chart-host",this.ui=Yt,this._widthMark=100,this.heightIndicator=55,this.widthPolygon=50,this.onChange=function(){return e.logger.debug("value accessor is not registered")},this.onTouched=function(){return e.logger.debug("value accessor is not registered")},this.registerOnChange=function(t){return e.onChange=t},this.registerOnTouched=function(t){return e.onTouched=t},this.onBlur=function(){return e.onTouched()},this.updated=new i.EventEmitter}var n;return n=e,Object.defineProperty(e.prototype,"widthMark",{get:function(){return this._widthMark},set:function(t){this._widthMark=Math.min(t,60)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(t){var e;e=this.keyField&&this._selected&&t?this._selected[this.keyField]===t[this.keyField]:de(this._selected,t),this._selected=e?null:t,this.onChange(this._selected?this.keyField?this._selected[this.keyField]:this._selected:null),this.updated.emit(this._selected)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"heightSvg",{get:function(){return this.heightIndicator+this.heightIndicator*this.indicators.length},enumerable:!0,configurable:!0}),e.prototype.writeValue=function(t){this._selected=t},e.prototype.trackByFn=function(t,e){return e.data.id||t},e.ctorParameters=function(){return[{type:a.NGXLogger}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.Input(),G("design:type",String)],e.prototype,"keyField",void 0),q([Zt({description:"Title of the charts group",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([Zt({description:"Name of metric for the charts",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"metric",void 0),q([Zt({description:"Chart state",path:"ui.state",options:[t["ɵbd"].loading]}),i.Input(),G("design:type",String)],e.prototype,"state",void 0),q([i.ContentChildren(Zo),G("design:type",i.QueryList)],e.prototype,"indicators",void 0),q([i.Input(),G("design:type",Object)],e.prototype,"heightIndicator",void 0),q([i.Input(),G("design:type",Object)],e.prototype,"widthPolygon",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),q([i.Output("selected"),G("design:type",Object)],e.prototype,"updated",void 0),q([i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"widthMark",null),e=n=q([i.Component({selector:"jnt-chart",template:'<div child-of="jnt-chart-host" data-wrapper>\n  <table child-of="jnt-chart-host" >\n    <thead child-of="jnt-chart-host" >\n    <tr child-of="jnt-chart-host" [style.height.px]="heightIndicator" [style.min-height.px]="heightIndicator">\n      <th child-of="jnt-chart-host" >\n        {{title}}\n      </th>\n      <th child-of="jnt-chart-host" colspan="2">\n        {{metric}}\n      </th>\n    </tr>\n    </thead>\n    <tbody child-of="jnt-chart-host" >\n    <ng-container *ngIf="indicators.length; else loadingTemplate">\n      <tr child-of="jnt-chart-host" *ngFor="let indicator of indicators; trackBy: trackByFn"\n          (click)="selected = indicator.data"\n          [attr.selected]="(!!keyField && !!selected\n            ? selected[keyField] === indicator.data[keyField]\n            : (selected === indicator.data))"\n          [style.height.px]="heightIndicator"\n          [style.max-height.px]="heightIndicator"\n          [style.min-height.px]="heightIndicator">\n        <td child-of="jnt-chart-host" >\n          <ng-container *ngIf="indicator.titleTemplate; else indicatorTitle">\n            <div child-of="jnt-chart-host" data-content [style.max-height.px]="heightIndicator - 1">\n              <ng-container *ngTemplateOutlet="indicator.titleTemplate; context: indicator"></ng-container>\n            </div>\n          </ng-container>\n          <ng-template #indicatorTitle>\n            {{indicator.title}}\n          </ng-template>\n        </td>\n        <td child-of="jnt-chart-host" >\n          {{indicator.label}}\n        </td>\n        <td child-of="jnt-chart-host" [style.background-color]="indicator.color | lightenDarken : -20">\n          <span child-of="jnt-chart-host" [style.color]="indicator.color | lightenDarken : -20 | textBrightness">\n            {{indicator.value | number: \'1.0-0\'}}%\n          </span>\n        </td>\n      </tr>\n    </ng-container>\n    </tbody>\n  </table>\n</div>\n\n<svg child-of="jnt-chart-host" *ngIf="indicators.length"\n     [style.min-width]="widthMark + widthPolygon"\n     [attr.width]="widthMark + widthPolygon"\n     [attr.height]="heightSvg" xmlns="http://www.w3.org/2000/svg">\n\n  <ng-container *ngFor="let indicator of indicators; trackBy: trackByFn; let i = index; let first = first">\n    <polygon child-of="jnt-chart-host" [attr.points]="\'0 \' + (first ? heightIndicator : heightIndicator * (i + 1)) + \' \' + widthPolygon + \' \' + (first ? 0 : (i - 1 | sumIndicators: indicators) | percentToNumber: heightSvg) + \' \' + widthPolygon + \' \' + ((i | sumIndicators: indicators) | percentToNumber: heightSvg) + \' 0 \' + heightIndicator * (i + 2)"\n      [attr.fill]="indicator.color | lightenDarken: 10"></polygon>\n    <rect child-of="jnt-chart-host" [attr.x]="widthPolygon"\n          [attr.y]="first ? 0 : (i - 1 | sumIndicators: indicators) | percentToNumber: heightSvg"\n          [attr.width]="widthMark"\n          [attr.height]="indicator.value | percentToNumber : heightSvg"\n          [attr.fill]="indicator.color">\n    </rect>\n  </ng-container>\n\n</svg>\n\n<ng-template #loadingTemplate>\n  <tr child-of="jnt-chart-host" data-nodata>\n    <td child-of="jnt-chart-host" [attr.colspan]="3">\n      <jnt-skeleton child-of="jnt-chart-host" *ngIf="state === ui.state.loading; else noDataTemplate" [lines]="5"></jnt-skeleton>\n      <ng-template #noDataTemplate>\n        <jnt-icon child-of="jnt-chart-host" [icon]="ui.icons.neutral"></jnt-icon>\n      </ng-template>\n    </td>\n  </tr>\n</ng-template>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[a.NGXLogger])],e)}(),ei=function(){function t(){}return t.prototype.transform=function(t,e){return t*e/100},t=q([i.Pipe({name:"percentToNumber"})],t)}(),ni=function(){function t(){}return t.prototype.transform=function(t,e){return e.toArray().slice(0,t+1).reduce((function(t,e){return t+e.value}),0)},t=q([i.Pipe({name:"sumIndicators"})],t)}(),oi=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,He,Gn,Kn],exports:[ti,Zo],declarations:[ti,Zo,ei,ni],entryComponents:[ti,Zo]})],t)}(),ii=function(){function t(){this.host="jnt-bar-indicator-host"}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([Zt({description:"Indicator value",type:"number"}),i.Input(),G("design:type",Number)],t.prototype,"value",void 0),q([Zt({description:"Indicator title",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"title",void 0),q([Zt({description:"Indicator color",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"color",void 0),q([Zt({description:"Indicator width",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"width",void 0),t=q([i.Component({selector:"jnt-bar-indicator",template:'<svg child-of="jnt-bar-indicator-host" viewBox="0 0 32 32">\n  <circle child-of="jnt-bar-indicator-host" class="progress"\n          [style.stroke-dasharray]="value + \' 100\'"\n          [style.stroke]="color"\n          [style.stroke-width]="width"\n          r="15.925" cx="16" cy="16">\n  </circle>\n</svg>'})],t)}(),ri=function(){function t(){this.host="jnt-bar-indicator-group-host"}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.ContentChildren(ii),G("design:type",i.QueryList)],t.prototype,"indicators",void 0),q([i.HostBinding("attr.data-index"),i.Input(),G("design:type",Number)],t.prototype,"index",void 0),q([i.HostBinding("attr.data-groups"),i.Input(),G("design:type",Number)],t.prototype,"groups",void 0),t=q([i.Component({selector:"jnt-bar-indicator-group",template:'<jnt-bar-indicator child-of="jnt-bar-indicator-group-host" data-indicator\n                   *ngFor="let indicator of indicators;let i = index"\n                   [value]="indicator.value"\n                   [title]="indicator.title"\n                   [color]="indicator.color"\n                   [width]="!indicator.value ? \'0\' : 22.5 + \'%\'"\n                   [style.transform]="\'rotate(\' + (3.6 * (i | sum:indicators)) + \'deg)\'">\n</jnt-bar-indicator>'})],t)}(),ai=function(){function t(){this.ui=Yt,this.host="jnt-circle-bar-host"}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.ContentChildren(ri),G("design:type",i.QueryList)],t.prototype,"groups",void 0),q([ee({selector:"#circleBarContentTemplate",description:"Circle bar content template"}),i.ContentChild("circleBarContentTemplate"),G("design:type",i.TemplateRef)],t.prototype,"circleBarContentTemplate",void 0),t=q([i.Component({selector:"jnt-circle-bar",template:'<jnt-bar-indicator-group child-of="jnt-circle-bar-host" data-group\n                         *ngFor="let group of groups; let index = index"\n                         [index]="index"\n                         [groups]="groups.length">\n  <jnt-bar-indicator child-of="jnt-circle-bar-host" *ngFor="let indicator of group.indicators"\n                     [value]="indicator.value"\n                     [title]="indicator.title"\n                     [color]="indicator.color">\n  </jnt-bar-indicator>\n</jnt-bar-indicator-group>\n\n<div child-of="jnt-circle-bar-host" data-content>\n  <ng-container *ngTemplateOutlet="circleBarContentTemplate"></ng-container>\n</div>'})],t)}(),si=function(){function t(){}return t.prototype.transform=function(t,e){return e.toArray().slice(0,t).reduce((function(t,e){return t+e.value}),0)},t=q([i.Pipe({name:"sum"})],t)}(),li=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],declarations:[ai,ii,ri,si],entryComponents:[ai,ii],exports:[ai,ii,ri,si]})],t)}();(t.DatePeriodBases||(t.DatePeriodBases={})).days="day(s)";var pi,ci=function(){function e(){this.host="jnt-date-period-host",this.ui=Yt,this.daysMapping={"=1":"day",other:"days"},this.base=t.DatePeriodBases.days}return q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.Input(),G("design:type",String)],e.prototype,"base",void 0),q([Zt({description:"Start date of period",type:"Date",default:"new Date()"}),i.Input(),G("design:type",Date)],e.prototype,"start",void 0),q([Zt({description:"End date of period",type:"Date",default:"new Date()"}),i.Input(),G("design:type",Date)],e.prototype,"end",void 0),q([Zt({description:"Current date",type:"Date"}),i.Input(),G("design:type",Date)],e.prototype,"current",void 0),e=q([i.Component({selector:"jnt-date-period",template:'<jnt-stack child-of="jnt-date-period-host" data-dates [orientation]="ui.orientation.horizontal" [justify]="ui.justify.between"\n           [align]="ui.align.end">\n  <div child-of="jnt-date-period-host" *ngIf="start" data-date data-left>\n    <div child-of="jnt-date-period-host" >{{start | date: "dd.MM"}}</div>\n  </div>\n  <div child-of="jnt-date-period-host" *ngIf="end" data-date data-right>\n    <div child-of="jnt-date-period-host" >{{end | date: "dd.MM"}}</div>\n  </div>\n</jnt-stack>\n\n<ng-container *ngIf="!!current; else noCurrent">\n  <div child-of="jnt-date-period-host" data-bar>\n    <div child-of="jnt-date-period-host" *ngIf="!!start && !!end && start < end && start <= current && current < end" data-progress\n         [style.width.%]="((current | jntDifferenceInCalendarDays:start) + 1) /\n          ((end || current | jntDifferenceInCalendarDays:start) + 1) * 100">\n    </div>\n\n    <div child-of="jnt-date-period-host" *ngIf="(current >= end) || (!!start && !end && current > start)" data-progress data-full></div>\n\n    <div child-of="jnt-date-period-host" *ngIf="!!start" data-line data-left></div>\n    <div child-of="jnt-date-period-host" *ngIf="!!end" data-line data-right></div>\n  </div>\n\n  <div child-of="jnt-date-period-host" *ngIf="!!start && !!end" data-days>\n    {{(current < end\n      ? (end | jntDifferenceInCalendarDays:start) - (current | jntDifferenceInCalendarDays:start)\n      : current > end ? (end | jntDifferenceInCalendarDays:start) : 0\n    ) + 1}} days\n  </div>\n</ng-container>\n\n<ng-template #noCurrent>\n  <div child-of="jnt-date-period-host" data-bar>\n    <div child-of="jnt-date-period-host" *ngIf="!!start && !!end && start <= end" data-progress data-full></div>\n    <div child-of="jnt-date-period-host" *ngIf="!!start" data-line data-left></div>\n    <div child-of="jnt-date-period-host" *ngIf="!!end" data-line data-right></div>\n  </div>\n  <div child-of="jnt-date-period-host" *ngIf="!!start && !!end" data-days>\n    {{start <= end ? (end | jntDifferenceInCalendarDays:start) + 1 : 0}}\n    {{(start <= end ? (end | jntDifferenceInCalendarDays:start) + 1 : 0) | i18nPlural: daysMapping}}\n  </div>\n</ng-template>'})],e)}(),di=function(){function t(){}return t=q([i.NgModule({declarations:[ci],imports:[o.CommonModule,qe,Ln],exports:[ci]})],t)}(),ui=function(){function t(){this.ui=Yt,this.color=st.purpleLight}return q([Zt({description:"Set the color to 'red' | 'green' | 'blue' or other custom colors (css color) for timeline item",type:"string | Color"}),i.Input(),G("design:type",String)],t.prototype,"color",void 0),q([Zt({description:"% for color",type:"number"}),i.Input(),G("design:type",Number)],t.prototype,"from",void 0),t=q([i.Component({selector:"jnt-progress-line",template:""})],t)}(),gi=function(){function t(){}return t.prototype.transform=function(t,e,n){var o;return(null===(o=e.toArray().map((function(t){return{from:t.from,color:t.color}})).sort((function(t,e){return t.from<e.from?1:-1})).find((function(e){return e.from<=t})))||void 0===o?void 0:o.color)||n},t=q([i.Pipe({name:"getColor",pure:!1})],t)}(),hi=function(){function t(t){this.cd=t,this.ui=Yt,this._value=0,this.host="jnt-progress-bar-host",this.color=st.purple}return Object.defineProperty(t.prototype,"value",{get:function(){return this._value},set:function(t){this._value=t||0},enumerable:!0,configurable:!0}),t.prototype.ngAfterViewInit=function(){var t=this;this.lines.changes.subscribe((function(){return t.cd.detectChanges()}))},t.ctorParameters=function(){return[{type:i.ChangeDetectorRef}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([ee({selector:"#progressBarLegendTemplate",description:"Legend template"}),i.ContentChild("progressBarLegendTemplate"),G("design:type",i.TemplateRef)],t.prototype,"progressBarLegendTemplate",void 0),q([Zt({description:"Completion percentage",type:"number",default:"0"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],t.prototype,"value",null),q([Zt({description:"Default color",type:"number",default:"0"}),i.Input(),G("design:type",String)],t.prototype,"color",void 0),q([i.ContentChildren(ui),G("design:type",i.QueryList)],t.prototype,"lines",void 0),t=q([i.Component({selector:"jnt-progress-bar",template:'<ng-container *ngTemplateOutlet="progressBarLegendTemplate"></ng-container>\n<div child-of="jnt-progress-bar-host" data-bar>\n  <div child-of="jnt-progress-bar-host" *ngIf="value >= 0" data-progress\n       [style.width.%]="value > 100 ? 100 : value"\n       [style.background-color]="value | getColor:lines:color"\n       [attr.data-fail]="value > 100"></div>\n</div>',changeDetection:i.ChangeDetectionStrategy.OnPush}),G("design:paramtypes",[i.ChangeDetectorRef])],t)}(),fi=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,we],exports:[hi,ui],entryComponents:[hi],declarations:[hi,ui,gi]})],t)}(),mi=function(){function t(){this.ui=Yt,this.remains=0,this.counter={days:0,hours:0,minutes:0,seconds:0},this.days$=new s.BehaviorSubject(0),this.hours$=new s.BehaviorSubject(0),this.minutes$=new s.BehaviorSubject(0),this.seconds$=new s.BehaviorSubject(0),this.host="jnt-timer-host",this.tick=new i.EventEmitter,this.finished=new i.EventEmitter}return Object.defineProperty(t.prototype,"days",{get:function(){return this.days$.getValue()},set:function(t){this.days$.next(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hours",{get:function(){return this.hours$.getValue()},set:function(t){this.hours$.next(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minutes",{get:function(){return this.minutes$.getValue()},set:function(t){this.minutes$.next(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"seconds",{get:function(){return this.seconds$.getValue()},set:function(t){this.seconds$.next(t)},enumerable:!0,configurable:!0}),t.prototype.pause=function(){clearInterval(this.timer),this.timer=null},t.prototype.reset=function(){this.remains=3600*this.days*24+3600*this.hours+60*this.minutes+this.seconds,this.start()},t.prototype.ngOnInit=function(){var t=this;s.combineLatest([this.days$,this.hours$,this.minutes$,this.seconds$]).subscribe((function(){t.remains=3600*t.days*24+3600*t.hours+60*t.minutes+t.seconds,t.start()}))},t.prototype.start=function(){var t=this;this.timer||(this.pause(),this.timer=setInterval((function(){t.remains>=0?(t.counter.days=Math.floor(t.remains/3600/24),t.counter.hours=Math.floor(t.remains/3600%24),t.counter.minutes=Math.floor(t.remains/60%60),t.counter.seconds=Math.floor(t.remains%60),t.remains--):(t.pause(),t.finished.emit())}),1e3))},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([Zt({description:"Days count",type:"number"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],t.prototype,"days",null),q([Zt({description:"Hours count",type:"number"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],t.prototype,"hours",null),q([Zt({description:"Minutes count",type:"number"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],t.prototype,"minutes",null),q([Zt({description:"Seconds count",type:"number"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],t.prototype,"seconds",null),q([i.Output(),G("design:type",Object)],t.prototype,"tick",void 0),q([i.Output(),G("design:type",Object)],t.prototype,"finished",void 0),q([te({description:"Pause timer"}),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],t.prototype,"pause",null),q([te({description:"Reset timer"}),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],t.prototype,"reset",null),t=q([i.Component({selector:"jnt-timer",template:"{{counter.days}}:{{counter.hours}}:{{counter.minutes}}:{{counter.seconds}}\n",styles:[""]})],t)}(),yi=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],exports:[mi],entryComponents:[mi],declarations:[mi]})],t)}(),bi=function(){function t(){}return t=q([i.NgModule({exports:[oi,li,di,fi,yi]})],t)}(),vi=function(){function e(){this.host="jnt-dot-host",this._color=st.purple,this.features=[]}return Object.defineProperty(e.prototype,"color",{get:function(){return this._color},set:function(t){this._color=t||st.purple},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("style.background-color"),G("design:type",String)],e.prototype,"_color",void 0),q([Zt({description:"Dot color",type:"string",default:"orange"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"color",null),q([Zt({description:"Animation pulse for dot",path:"ui.feature",options:[t["ɵx"].pulse]}),i.HostBinding("attr.data-features"),i.Input(),G("design:type",Array)],e.prototype,"features",void 0),e=q([i.Component({selector:"jnt-dot",template:""})],e)}(),ji=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],exports:[vi],declarations:[vi],entryComponents:[vi]})],t)}(),ki=function(){function e(){this.host="jnt-avatar-host",this.ui=Yt,this._size=t["ɵm"].normal,this._shape=t["ɵs"].circle,this.icon=Yt.icons.user}return Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"shape",{set:function(e){this._shape=e||t["ɵs"].circle},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([i.HostBinding("attr.data-shape"),G("design:type",String)],e.prototype,"_shape",void 0),q([Zt({description:"Avatar size",path:"ui.size",default:t["ɵm"].normal,options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Avatar shape",path:"ui.shape",default:t["ɵs"].circle,options:[t["ɵs"].circle,t["ɵs"].square]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"shape",null),q([Zt({description:"Icon on avatar",type:"string",default:"ui.icons.user"}),i.Input(),G("design:type",String)],e.prototype,"icon",void 0),q([Zt({description:"First char of name on avatar",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"name",void 0),q([Zt({description:"First char of surname on avatar",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"surname",void 0),q([Zt({description:"Image on avatar",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"image",void 0),q([i.ContentChild(vi),G("design:type",vi)],e.prototype,"dot",void 0),e=q([i.Component({selector:"jnt-avatar",template:'<div child-of="jnt-avatar-host" data-wrapper>\n  <ng-template #noImage>\n    <ng-template #noInitials>\n      <jnt-icon child-of="jnt-avatar-host" *ngIf="!!icon" [icon]="icon"></jnt-icon>\n    </ng-template>\n\n    <span child-of="jnt-avatar-host" data-text *ngIf="!!name else noInitials">\n      {{(name.charAt(0) + (!!surname ? surname.charAt(0) : \'\')) | uppercase}}\n    </span>\n  </ng-template>\n\n  <img child-of="jnt-avatar-host" data-image *ngIf="!!image else noImage" [src]="image"  />\n</div>\n<jnt-dot child-of="jnt-avatar-host" data-dot *ngIf="dot" [color]="dot.color"></jnt-dot>'})],e)}(),wi=function(){function e(){this.host="jnt-avatars-group-host",this._size=t["ɵm"].normal,this._total=0,this.ui=Yt,this.max=4}return Object.defineProperty(e.prototype,"size",{get:function(){return this._size},set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"total",{get:function(){return this._total},set:function(t){this._total=t||0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"capacity",{get:function(){return Math.min(this.avatars.length,4)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"overflow",{get:function(){return Math.max(this.total-4,0)},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([Zt({description:"Group size",path:"ui.size",default:t["ɵm"].normal,options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Total avatars (users)",type:"number",default:0}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"total",null),q([i.ContentChildren(ki),G("design:type",i.QueryList)],e.prototype,"avatars",void 0),q([i.HostBinding("attr.data-capacity"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"capacity",null),e=q([i.Component({selector:"jnt-avatars-group",template:'<ng-container *ngFor="let avatar of avatars; let i = index;">\n  <jnt-avatar child-of="jnt-avatars-group-host" *ngIf="i < max " data-avatar\n              [shape]="ui.shape.square"\n              [image]="avatar.image"\n              [icon]="avatar.icon"\n              [name]="avatar.name"\n              [surname]="avatar.surname"\n              [size]="size">\n  </jnt-avatar>\n</ng-container>\n\n<div child-of="jnt-avatars-group-host" *ngIf="overflow" data-overflow>+{{overflow}}</div>'})],e)}(),Ci=function(){function e(){this.host="jnt-avatars-list-host",this._size=t["ɵm"].normal,this.ui=Yt,this.max=5}return Object.defineProperty(e.prototype,"capacity",{get:function(){return Math.min(this.avatars.length,this.max)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{get:function(){return this._size},set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([i.Input(),G("design:type",Object)],e.prototype,"max",void 0),q([i.ContentChildren(ki),G("design:type",i.QueryList)],e.prototype,"avatars",void 0),q([i.HostBinding("attr.data-capacity"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"capacity",null),q([Zt({description:"Avatars list size",path:"ui.size",default:t["ɵm"].normal,options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),e=q([i.Component({selector:"jnt-avatars-list",template:'<ng-container *ngFor="let avatar of avatars; let i = index;">\n  <jnt-avatar child-of="jnt-avatars-list-host" *ngIf="i < max" [attr.data-avatar-index]="i"\n              [image]="avatar.image"\n              [icon]="avatar.icon"\n              [name]="avatar.name"\n              [surname]="avatar.surname"\n              [size]="size">\n  </jnt-avatar>\n</ng-container>'})],e)}(),Ti=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Gn,ji],declarations:[ki,wi,Ci],entryComponents:[ki,wi,Ci],exports:[ki,wi,Ci]})],t)}(),Oi=function(){function e(){this.host="jnt-label-host",this.ui=Yt,this._color=st.purple,this._size=t["ɵm"].normal,this._outline=t["ɵu"].fill}return Object.defineProperty(e.prototype,"color",{get:function(){return this._color},set:function(t){this._color=t||st.purple},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outline",{get:function(){return this._outline},set:function(e){this._outline=e||t["ɵu"].fill},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("style.background-color"),i.HostBinding("style.border-color"),G("design:type",String)],e.prototype,"_color",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([i.HostBinding("attr.data-outline"),G("design:type",String)],e.prototype,"_outline",void 0),q([Zt({description:"Label text",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"label",void 0),q([Zt({description:"Label icon",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"icon",void 0),q([Zt({description:"Label background color",type:"string",default:"purple"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"color",null),q([Zt({description:"Label size",path:"ui.size",default:t["ɵm"].normal,options:[t["ɵm"].small,t["ɵm"].normal]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Label outline",path:"ui.outline",default:t["ɵu"].fill,options:[t["ɵu"].ghost,t["ɵu"].fill]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"outline",null),q([i.ContentChild(vi),G("design:type",vi)],e.prototype,"dot",void 0),e=q([i.Component({selector:"jnt-label",template:'<jnt-stack child-of="jnt-label-host" [orientation]="ui.orientation.horizontal"\n           [justify]="ui.justify.center"\n           [gutter]="ui.gutter.small"\n           [align]="ui.align.center">\n  <jnt-dot child-of="jnt-label-host" data-dot *ngIf="!!dot" [color]="dot.color"></jnt-dot>\n  <jnt-icon child-of="jnt-label-host" *ngIf="icon"\n            [icon]="icon"\n            [color]="outline === ui.outline.fill ? (color | textBrightness) : color"></jnt-icon>\n  <div child-of="jnt-label-host" data-text *ngIf="label" [style.color]="outline === ui.outline.fill ? (color | textBrightness) : color">{{label}}</div>\n</jnt-stack>'})],e)}(),Ii=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Gn,qe,He,ji],exports:[Oi],entryComponents:[Oi],declarations:[Oi]})],t)}(),Si=function(){function e(){this.host="jnt-picture-host",this.ui=Yt,this._icon=Yt.icons.image,this._fit=t["ɵbx"].width,this._position=t.Position.center}return Object.defineProperty(e.prototype,"hasSrc",{get:function(){return!!this._src},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"icon",{get:function(){return this._icon},set:function(t){this._icon=t||Yt.icons.image},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"src",{get:function(){return this._src},set:function(t){this._src=t||null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"fit",{set:function(e){this._fit=e||t["ɵbx"].width},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"position",{set:function(e){this._position=e||t.Position.center},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-has-src"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"hasSrc",null),q([i.HostBinding("attr.data-fit"),G("design:type",String)],e.prototype,"_fit",void 0),q([i.HostBinding("attr.data-position"),G("design:type",String)],e.prototype,"_position",void 0),q([Zt({description:"Icon on picture",type:"string",default:"ui.icons.image"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"icon",null),q([Zt({description:"Path to image on picture",type:"string"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"src",null),q([Zt({description:"Picture title",type:"string"}),i.HostBinding("attr.title"),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([Zt({description:"Picture alt",type:"string"}),i.HostBinding("attr.alt"),i.Input(),G("design:type",String)],e.prototype,"alt",void 0),q([Zt({description:"Picture width",type:"string"}),i.HostBinding("style.width"),i.Input(),G("design:type",Object)],e.prototype,"width",void 0),q([Zt({description:"Picture height",type:"string"}),i.HostBinding("style.height"),i.Input(),G("design:type",Object)],e.prototype,"height",void 0),q([Zt({description:"Image size in relation to width or height",path:"ui.fit",default:t["ɵbx"].width,options:[t["ɵbx"].width,t["ɵbx"].height]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"fit",null),q([Zt({description:"Image position",path:"ui.position",default:t.Position.center,options:[t.Position.center,t.Position.left,t.Position.right,t.Position.bottom,t.Position.top]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"position",null),q([i.ContentChild("pictureCopyrightTemplate"),G("design:type",i.TemplateRef)],e.prototype,"pictureCopyrightTemplate",void 0),e=q([i.Component({selector:"jnt-picture",template:'<ng-template #iconTemplate>\n  <jnt-icon child-of="jnt-picture-host" [icon]="icon"></jnt-icon>\n</ng-template>\n<ng-template *ngTemplateOutlet="pictureCopyrightTemplate"></ng-template>\n<img child-of="jnt-picture-host" *ngIf="!!src else iconTemplate" [src]="src" [alt]="alt" [title]="title"  />'})],e)}(),xi=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Gn,qe],exports:[Si],entryComponents:[Si],declarations:[Si]})],t)}(),Mi=function(){function t(){}return t=q([i.NgModule({exports:[Ti,Yn,Gn,Ii,ji,xi]})],t)}(),Pi=function(){function t(){}return t.prototype.transform=function(t,e,n){var o=100*(t-e)/(n-e);return Math.min(Math.max(o,0),100)},t=q([i.Pipe({name:"getPercent"})],t)}(),_i=function(){function e(e,n){var o=this;this.logger=e,this.fb=n,this.ui=Yt,this._min=0,this._max=100,this._step=1,this.rangeControl=this.fb.control(null),this.form=this.fb.group({range:this.rangeControl}),this.host="jnt-slider-host",this._size=t["ɵm"].normal,this.disabled=!1,this.onChange=function(){return o.logger.error("value accessor is not registered")},this.onTouched=function(){return o.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return o.onChange=t},this.registerOnTouched=function(t){return o.onTouched=t},this.onBlur=function(){return o.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"min",{get:function(){return this._min},set:function(t){this._min=t||0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"max",{get:function(){return this._max},set:function(t){this._max=t||100},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"step",{get:function(){return this._step},set:function(t){this._step=t||1},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var t=this;this.rangeControl.valueChanges.pipe(p.map((function(t){return+t}))).subscribe((function(e){(e>t.max||e<t.min)&&(e=Math.min(Math.max(e,t.min),t.max),t.rangeControl.setValue(e,{emitEvent:!1})),t.onChange(e)}))},e.prototype.writeValue=function(t){this.rangeControl.setValue(t||0,{emitEvent:!1})},e.prototype.setDisabledState=function(t){this.disabled=t},e.ctorParameters=function(){return[{type:a.NGXLogger},{type:r.FormBuilder}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([i.HostBinding("attr.data-disabled"),G("design:type",Object)],e.prototype,"disabled",void 0),q([Zt({description:"Slider min",type:"number",default:0}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"min",null),q([Zt({description:"Slider max",type:"number",default:100}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"max",null),q([Zt({description:"Slider step",type:"number",default:1}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"step",null),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-slider",template:'<div child-of="jnt-slider-host" data-slided [style.width]="(+rangeControl.value | getPercent:min:max) + \'%\'"></div>\n<div child-of="jnt-slider-host" data-pointer [style.left]="\'calc(\' + (+rangeControl.value | getPercent:min:max) + \'% - 8px)\'"></div>\n\n<form child-of="jnt-slider-host" [formGroup]="form">\n  <input child-of="jnt-slider-host" type="range" [min]="min" [max]="max" [step]="step"\n         formControlName="range"  />\n</form>',changeDetection:i.ChangeDetectionStrategy.OnPush,providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[a.NGXLogger,r.FormBuilder])],e)}(),Bi=function(){function t(){}return t=q([i.NgModule({declarations:[_i,Pi],exports:[_i],imports:[o.CommonModule,r.FormsModule,r.ReactiveFormsModule]})],t)}();!function(t){t[t.tablet=0]="tablet",t[t.desktop=1]="desktop",t[t.wide=2]="wide"}(pi||(pi={}));var zi,Hi=function(){function t(){this.host="jnt-col-host",this._mobile=12,this._tablet=6,this._desktop=1,this._wide=1,this.overrides=[],this.span=null}return Object.defineProperty(t.prototype,"forMobile",{get:function(){return this._mobile},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"forTablet",{get:function(){return this.overrides.includes(pi.tablet)?this._tablet:this.forMobile},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"forDesktop",{get:function(){return this.overrides.includes(pi.desktop)?this._desktop:this.forTablet},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"forWide",{get:function(){return this.overrides.includes(pi.wide)?this._wide:this.forDesktop},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"mobile",{set:function(t){this._mobile=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"tablet",{set:function(t){this._tablet=t,this.overrides.push(pi.tablet)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"desktop",{set:function(t){this._desktop=t,this.overrides.push(pi.desktop)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"wide",{set:function(t){this._wide=t,this.overrides.push(pi.wide)},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.HostBinding("attr.data-mobile"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"forMobile",null),q([i.HostBinding("attr.data-tablet"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"forTablet",null),q([i.HostBinding("attr.data-desktop"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"forDesktop",null),q([i.HostBinding("attr.data-wide"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"forWide",null),q([Zt({description:"Number of cells to occupy on screen < 768px",type:"number: 1...12",default:"6"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],t.prototype,"mobile",null),q([Zt({description:"Number of cells to occupy on screen >= 768px",type:"number: 1...12",default:"3"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],t.prototype,"tablet",null),q([Zt({description:"Number of cells to occupy on screen >= 992px",type:"number: 1...12",default:"1"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],t.prototype,"desktop",null),q([Zt({description:"Number of cells to occupy on screen >= 1200px",type:"number: 1...12",default:"1"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],t.prototype,"wide",null),q([Zt({description:"Number of cells to occupy for all breakpoints",type:"number: 1...12",default:"null"}),i.HostBinding("attr.data-span"),i.Input(),G("design:type",Object)],t.prototype,"span",void 0),t=q([i.Component({selector:"jnt-col",template:"<ng-content></ng-content>"})],t)}(),Ei=function(){function e(){this.host="jnt-container-host",this._width=t["ɵv"].default}return Object.defineProperty(e.prototype,"width",{set:function(e){this._width=e||t["ɵv"].default},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-width"),G("design:type",Object)],e.prototype,"_width",void 0),q([Zt({description:"Container width",path:"ui.width",default:t["ɵv"].default,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"width",null),e=q([i.Component({selector:"jnt-container",template:"<ng-content></ng-content>"})],e)}(),Fi=function(){function e(){this.host="jnt-row-host",this._align=t["ɵp"].start,this._gutter=t["ɵo"].small,this._spacing=t["ɵo"].normal,this._justify=t["ɵq"].start}return Object.defineProperty(e.prototype,"align",{set:function(e){this._align=e||t["ɵp"].start},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"justify",{set:function(e){this._justify=e||t["ɵq"].start},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"spacing",{set:function(e){this._spacing=e||t["ɵo"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"gutter",{set:function(e){this._gutter=e||t["ɵo"].small},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-align"),G("design:type",String)],e.prototype,"_align",void 0),q([i.HostBinding("attr.data-gutter"),G("design:type",String)],e.prototype,"_gutter",void 0),q([i.HostBinding("attr.data-spacing"),G("design:type",String)],e.prototype,"_spacing",void 0),q([i.HostBinding("attr.data-justify"),G("design:type",String)],e.prototype,"_justify",void 0),q([Zt({description:"Vertical align columns",path:"ui.align",default:t["ɵp"].start,options:[t["ɵp"].start,t["ɵp"].center,t["ɵp"].end,t["ɵp"].stretch]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"align",null),q([Zt({description:"Horizontal align of elements",path:"ui.justify",default:t["ɵq"].start,options:[t["ɵq"].start,t["ɵq"].center,t["ɵq"].end,t["ɵq"].between,t["ɵq"].around,t["ɵq"].evenly]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"justify",null),q([Zt({description:"Spacing between columns while wrapping",path:"ui.gutter",default:t["ɵo"].normal,options:[t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].big,t["ɵo"].large,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"spacing",null),q([Zt({description:"Padding in column",path:"ui.gutter",default:t["ɵo"].small,options:[t["ɵo"].none,t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].big,t["ɵo"].large,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"gutter",null),e=q([i.Component({selector:"jnt-row",template:"<ng-content></ng-content>"})],e)}(),Ri=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule],declarations:[Ei,Fi,Hi],entryComponents:[Ei,Fi,Hi],exports:[Ei,Fi,Hi]})],t)}(),Ai=function(){function e(e,n){var o=this;this.fb=e,this.logger=n,this.ui=Yt,this.host="jnt-checkbox-host",this._size=t["ɵm"].normal,this.checkboxControl=this.fb.control(!1),this.form=this.fb.group({checkbox:this.checkboxControl}),this.onChange=function(){return o.logger.error("value accessor is not registered")},this.onTouched=function(){return o.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return o.onChange=t},this.registerOnTouched=function(t){return o.onTouched=t},this.onBlur=function(){return o.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var t=this;this.checkboxControl.valueChanges.subscribe((function(e){return t.onChange(e)}))},e.prototype.writeValue=function(t){this.checkboxControl.setValue(!!t,{emitEvent:!1})},e.prototype.setDisabledState=function(t){t?this.checkboxControl.disable({emitEvent:!1}):this.checkboxControl.enable({emitEvent:!1})},e.ctorParameters=function(){return[{type:r.FormBuilder},{type:a.NGXLogger}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([Zt({description:"Label name for checkbox",type:"string"}),i.HostBinding("attr.label"),i.Input(),G("design:type",String)],e.prototype,"label",void 0),q([i.ContentChild("checkboxLabelTemplate"),G("design:type",i.TemplateRef)],e.prototype,"labelTemplate",void 0),q([Zt({description:"Size for checkbox",path:"ui.size",options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large],default:t["ɵm"].normal}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Value for checkbox",type:"any"}),i.Input(),G("design:type",Object)],e.prototype,"value",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-checkbox",template:'<form child-of="jnt-checkbox-host" [formGroup]="form">\n  <input child-of="jnt-checkbox-host" formControlName="checkbox" type="checkbox" [attr.custom]="!!labelTemplate"  />\n  <div child-of="jnt-checkbox-host" data-switch>\n    <div child-of="jnt-checkbox-host" *ngIf="checkboxControl.value" data-icon></div>\n  </div>\n  <ng-template #labelDefaultTemplate>\n    <label child-of="jnt-checkbox-host" *ngIf="label">{{label}}</label>\n  </ng-template>\n  <div child-of="jnt-checkbox-host" label>\n    <ng-container *ngTemplateOutlet="!!labelTemplate ? labelTemplate : labelDefaultTemplate"></ng-container>\n  </div>\n</form>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[r.FormBuilder,a.NGXLogger])],e)}(),Li=function(){function e(e,n){var o=this;this.fb=e,this.logger=n,this.ui=Yt,this.host="jnt-checkbox-group-host",this._size=t["ɵm"].normal,this.selectedItems=[],this.checkboxesControl=this.fb.array([]),this.form=this.fb.group({checkboxes:this.checkboxesControl}),this.cols=1,this.onChange=function(){return o.logger.error("value accessor is not registered")},this.onTouched=function(){return o.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return o.onChange=t},this.registerOnTouched=function(t){return o.onTouched=t},this.onBlur=function(){return o.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"size",{get:function(){return this._size},set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),e.prototype.ngAfterViewInit=function(){var t=this;this.update(),this.checkboxes.changes.subscribe((function(){return t.update()})),this.checkboxesControl.valueChanges.pipe(p.map((function(e){return t.checkboxes.filter((function(t,n){return e[n]})).map((function(t){return t.value}))})),p.distinctUntilChanged((function(t,e){return de(t,e)}))).subscribe((function(e){t.selectedItems=e,t.onChange(e)}))},e.prototype.update=function(){var t=this;this.checkboxes&&(this.checkboxesControl.reset([],{emitEvent:!1}),this.checkboxes.forEach((function(e,n){var o=t.checkboxesControl.get(n.toString());o?o.setValue(t.selectedItems.includes(e.value),{emitEvent:!1}):t.checkboxesControl.push(new r.FormControl(t.selectedItems.includes(e.value)))})))},e.prototype.writeValue=function(t){var e=[];t&&(e=Array.isArray(t)?t:[t]),this.selectedItems=e,this.update()},e.prototype.setDisabledState=function(t){t?this.checkboxesControl.disable({emitEvent:!1}):this.checkboxesControl.enable({emitEvent:!1})},e.ctorParameters=function(){return[{type:r.FormBuilder},{type:a.NGXLogger}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Count of cols in checkbox group",type:"number",default:1}),i.Input(),G("design:type",Object)],e.prototype,"cols",void 0),q([Zt({description:"Size for checkbox in checkbox group",path:"ui.size",options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large],default:t["ɵm"].normal}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([i.ContentChildren(Ai),G("design:type",i.QueryList)],e.prototype,"checkboxes",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-checkbox-group",template:'<form child-of="jnt-checkbox-group-host" [formGroup]="form">\n  <ng-container formArrayName="checkboxes">\n    <ng-container *ngIf="!!checkboxesControl.length">\n      <ng-container *ngIf="cols <= 1; else colTemplate">\n        <jnt-stack child-of="jnt-checkbox-group-host" [gutter]="ui.gutter.small" [align]="ui.align.stretch">\n          <jnt-checkbox child-of="jnt-checkbox-group-host" *ngFor="let item of checkboxes; let i = index"\n                        [formControlName]="i"\n                        [size]="size"\n                        [label]="item.label"\n                        [value]="item.value">\n            <ng-template *ngIf="!!item.labelTemplate" #checkboxLabelTemplate>\n              <ng-container *ngTemplateOutlet="item.labelTemplate"></ng-container>\n            </ng-template>\n          </jnt-checkbox>\n        </jnt-stack>\n      </ng-container>\n      <ng-template #colTemplate>\n        <jnt-row child-of="jnt-checkbox-group-host" >\n          <jnt-col child-of="jnt-checkbox-group-host" *ngFor="let item of checkboxes; let i = index" [tablet]="(12 / cols) | trunc">\n            <jnt-checkbox child-of="jnt-checkbox-group-host" [formControlName]="i"\n                          [size]="size"\n                          [label]="item.label"\n                          [value]="item.value">\n              <ng-template *ngIf="!!item.labelTemplate" #checkboxLabelTemplate>\n                <ng-container *ngTemplateOutlet="item.labelTemplate"></ng-container>\n              </ng-template>\n            </jnt-checkbox>\n          </jnt-col>\n        </jnt-row>\n      </ng-template>\n    </ng-container>\n  </ng-container>\n</form>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[r.FormBuilder,a.NGXLogger])],e)}(),Di=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.ReactiveFormsModule,Gn,qe,Ri,we,De],exports:[Ai,Li],declarations:[Ai,Li],entryComponents:[Ai,Li]})],t)}(),Ni=function(){function e(e,n){var o=this;this.fb=e,this.logger=n,this.ui=Yt,this.host="jnt-radio-host",this.radioControl=this.fb.control(!1),this.form=this.fb.group({radio:this.radioControl}),this._size=t["ɵm"].normal,this.onChange=function(){return o.logger.error("value accessor is not registered")},this.onTouched=function(){return o.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return o.onChange=t},this.registerOnTouched=function(t){return o.onTouched=t},this.onBlur=function(){return o.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"checked",{get:function(){return this.radioControl.value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var t=this;this.radioControl.valueChanges.subscribe((function(){return t.onChange(!0)}))},e.prototype.writeValue=function(t){this.radioControl.setValue(t,{emitEvent:!1})},e.prototype.setDisabledState=function(t){t?this.radioControl.disable({emitEvent:!1}):this.radioControl.enable({emitEvent:!1})},e.ctorParameters=function(){return[{type:r.FormBuilder},{type:a.NGXLogger}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-checked"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"checked",null),q([i.HostBinding("attr.data-size"),G("design:type",Object)],e.prototype,"_size",void 0),q([Zt({description:"Size for radio button",type:"string",path:"ui.size",options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large],default:t["ɵm"].normal}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Label name for radio button",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"label",void 0),q([Zt({description:"Value for radio button",type:"any"}),i.Input(),G("design:type",Object)],e.prototype,"value",void 0),q([i.ContentChild("radioLabelTemplate"),G("design:type",i.TemplateRef)],e.prototype,"labelTemplate",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-radio",template:'<form child-of="jnt-radio-host" [formGroup]="form">\n  <input child-of="jnt-radio-host" formControlName="radio" type="radio" [attr.custom]="!!labelTemplate"  />\n  <div child-of="jnt-radio-host" data-switch><span child-of="jnt-radio-host" *ngIf="radioControl.value" data-indicator></span></div>\n  <ng-template #labelDefaultTemplate>\n    <label child-of="jnt-radio-host" *ngIf="label">{{label}}</label>\n  </ng-template>\n  <div child-of="jnt-radio-host" label>\n    <ng-container *ngTemplateOutlet="!!labelTemplate ? labelTemplate : labelDefaultTemplate"></ng-container>\n  </div>\n</form>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[r.FormBuilder,a.NGXLogger])],e)}(),qi=function(){function e(e,n,o,i){var r=this;this.fb=e,this.logger=n,this.breakpoint=o,this.cd=i,this.ui=Yt,this.host="jnt-radio-group-host",this._orientation=t["ɵn"].vertical,this._spacing=t["ɵo"].small,this._align=t["ɵp"].start,this._size=t["ɵm"].normal,this.radiosControl=this.fb.array([]),this.form=this.fb.group({radios:this.radiosControl}),this.cols=1,this.features=[],this.onChange=function(){return r.logger.error("value accessor is not registered")},this.onTouched=function(){return r.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return r.onChange=t},this.registerOnTouched=function(t){return r.onTouched=t},this.onBlur=function(){return r.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"orientation",{get:function(){var e;return this.breakpoint.current===t.Breakpoint.mobile&&(null===(e=this.features)||void 0===e?void 0:e.includes(t["ɵx"].adapted))?t["ɵn"].vertical:this._orientation},set:function(e){this._orientation=e||t["ɵn"].vertical},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"align",{get:function(){return this._align},set:function(e){this._align=e||t["ɵp"].start},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{get:function(){return this._size},set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"spacing",{get:function(){return this._spacing},set:function(e){this._spacing=e||t["ɵo"].small},enumerable:!0,configurable:!0}),e.prototype.ngAfterViewInit=function(){var t=this,e=new s.Subscription;this.radios.changes.subscribe((function(){e.unsubscribe(),t.update(),e=t.subscribe()})),this.update(),e=this.subscribe()},e.prototype.subscribe=function(){var t=this;return s.merge.apply(void 0,U(this.radiosControl.controls.map((function(t,e){return t.valueChanges.pipe(p.filter((function(t){return t})),p.map((function(){return{control:t,index:e}})))})))).subscribe((function(e){var n=e.control,o=e.index;t.selected=t.radios.toArray()[o].value,t.onChange(t.selected),t.radiosControl.reset([],{emitEvent:!1}),n.setValue(!0,{emitEvent:!1})}))},e.prototype.update=function(){var t=this;this.radios&&(this.radiosControl.reset([],{emitEvent:!1}),this.radios.forEach((function(e,n){t.radiosControl.length<n+1?t.radiosControl.push(t.fb.control(t.selected===e.value)):t.radiosControl.get(n.toString()).setValue(t.selected===e.value,{emitEvent:!1})})),this.cd.detectChanges())},e.prototype.writeValue=function(t){this.selected=t,this.update()},e.prototype.setDisabledState=function(t){t?this.radiosControl.disable({emitEvent:!1}):this.radiosControl.enable({emitEvent:!1})},e.ctorParameters=function(){return[{type:r.FormBuilder},{type:a.NGXLogger},{type:We},{type:i.ChangeDetectorRef}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Defined main axis of elements align",path:"ui.orientation",default:t["ɵn"].vertical,options:[t["ɵn"].vertical,t["ɵn"].horizontal]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"orientation",null),q([Zt({description:"Align in radio group",path:"ui.align"}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"align",null),q([Zt({description:"Count of cols in radio group",type:"number",default:1}),i.Input(),G("design:type",Object)],e.prototype,"cols",void 0),q([Zt({description:"Size for radio in radio group",path:"ui.size",options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large],default:t["ɵm"].normal}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([Zt({description:"Spacing between radio item",path:"ui.gutter",options:[t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].large,t["ɵo"].big,t["ɵo"].huge],default:t["ɵo"].normal}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"spacing",null),q([Zt({description:"Adapted radio group on mobile view",path:"ui.feature",options:[t["ɵx"].adapted]}),i.HostBinding("attr.data-features"),i.Input(),G("design:type",Array)],e.prototype,"features",void 0),q([i.ContentChildren(Ni,{descendants:!0}),G("design:type",i.QueryList)],e.prototype,"radios",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-radio-group",template:'<form child-of="jnt-radio-group-host" [formGroup]="form">\n  <ng-container formArrayName="radios">\n    <ng-template #radiosTemplate let-item="item" let-i="i">\n      <jnt-radio child-of="jnt-radio-group-host" [formControlName]="i"\n                 [size]="size"\n                 [label]="item.label"\n                 [value]="item.value">\n        <ng-template *ngIf="!!item.labelTemplate" #radioLabelTemplate>\n          <ng-container *ngTemplateOutlet="item.labelTemplate"></ng-container>\n        </ng-template>\n      </jnt-radio>\n    </ng-template>\n    <ng-container *ngIf="!!radiosControl.length">\n      <ng-container *ngIf="cols <= 1; else colTemplate">\n        <jnt-stack child-of="jnt-radio-group-host" [gutter]="spacing"\n                   [orientation]="orientation"\n                   [spacing]="spacing"\n                   [align]="orientation === ui.orientation.horizontal ? align: ui.align.start">\n          <ng-container *ngFor="let item of radios; let i = index">\n            <ng-container *ngTemplateOutlet="radiosTemplate; context:{item: item, i: i}"></ng-container>\n          </ng-container>\n        </jnt-stack>\n      </ng-container>\n      <ng-template #colTemplate>\n        <jnt-row child-of="jnt-radio-group-host" [align]="align">\n          <jnt-col child-of="jnt-radio-group-host" *ngFor="let item of radios; let i = index" [tablet]="(12 / cols) | trunc">\n            <ng-container *ngTemplateOutlet="radiosTemplate; context:{item: item, i: i}"></ng-container>\n          </jnt-col>\n        </jnt-row>\n      </ng-template>\n    </ng-container>\n  </ng-container>\n</form>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[r.FormBuilder,a.NGXLogger,We,i.ChangeDetectorRef])],e)}(),Vi=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.ReactiveFormsModule,qe,Gn,Ri,De],exports:[Ni,qi],declarations:[Ni,qi],entryComponents:[Ni,qi]})],t)}(),Gi=function(){function e(e,n){var o=this;this.logger=e,this.fb=n,this.host="jnt-switch-host",this.ui=Yt,this.switchControl=this.fb.control(!1),this.form=this.fb.group({switch:this.switchControl}),this._size=t["ɵm"].normal,this.onChange=function(){return o.logger.error("value accessor is not registered")},this.onTouched=function(){return o.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return o.onChange=t},this.registerOnTouched=function(t){return o.onTouched=t},this.onBlur=function(){return o.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"checked",{get:function(){return this.switchControl.value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"size",{set:function(e){this._size=e||t["ɵm"].normal},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var t=this;this.switchControl.valueChanges.subscribe((function(e){return t.onChange(e)}))},e.prototype.writeValue=function(t){this.switchControl.setValue(t,{emitEvent:!1})},e.prototype.setDisabledState=function(t){t?this.switchControl.disable({emitEvent:!1}):this.switchControl.enable({emitEvent:!1})},e.ctorParameters=function(){return[{type:a.NGXLogger},{type:r.FormBuilder}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-size"),G("design:type",String)],e.prototype,"_size",void 0),q([Zt({description:"Label for switch",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"label",void 0),q([Zt({description:"Icons for states",type:"{on: string, off: string}"}),i.Input(),G("design:type",Object)],e.prototype,"icons",void 0),q([Zt({description:"Tags for states",type:"{on: string, off: string}"}),i.Input(),G("design:type",Object)],e.prototype,"tags",void 0),q([Zt({description:"Switch size",path:"ui.size",default:t["ɵm"].normal,options:[t["ɵm"].tiny,t["ɵm"].small,t["ɵm"].normal,t["ɵm"].large]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"size",null),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-switch",template:'<form child-of="jnt-switch-host" [formGroup]="form">\n  <input child-of="jnt-switch-host" type="checkbox" formControlName="switch"  />\n  <jnt-stack child-of="jnt-switch-host" data-switch [orientation]="ui.orientation.horizontal"\n             [gutter]="ui.gutter.tiny"\n             [align]="ui.align.center"\n             [justify]="ui.justify.center">\n    <span child-of="jnt-switch-host" data-on *ngIf="tags?.on">{{tags.on}}</span>\n\n    <div child-of="jnt-switch-host" data-slider>\n      <jnt-icon child-of="jnt-switch-host" *ngIf="icons?.on && checked"\n                [icon]="icons.on"></jnt-icon>\n      <jnt-icon child-of="jnt-switch-host" *ngIf="icons?.off && !checked"\n                [icon]="icons.off"></jnt-icon>\n\n    </div>\n\n    <span child-of="jnt-switch-host" data-off *ngIf="tags?.off">{{tags.off}}</span>\n  </jnt-stack>\n</form>\n<label child-of="jnt-switch-host" *ngIf="label">{{label}}</label>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[a.NGXLogger,r.FormBuilder])],e)}(),Wi=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Gn,r.ReactiveFormsModule,qe],exports:[Gi],entryComponents:[Gi],declarations:[Gi]})],t)}(),Yi=function(){function e(){this.host="jnt-form-message-host",this.active=!1,this.validator=null}return Object.defineProperty(e.prototype,"hidden",{get:function(){return!this.active},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"style",{get:function(){return this.active?"inline-block":"none"},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-hidden"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"hidden",null),q([i.Input(),G("design:type",Object)],e.prototype,"active",void 0),q([i.HostBinding("style.display"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"style",null),q([Zt({description:"Validation type error",path:"ui.validator",options:[t["ɵbp"].required,t["ɵbp"].minLength,t["ɵbp"].min,t["ɵbp"].max]}),i.Input(),G("design:type",String)],e.prototype,"validator",void 0),e=q([i.Component({selector:"jnt-form-message",template:"<ng-content></ng-content>"})],e)}(),Ui=function(){function t(t){this.parent=t,this.host="jnt-form-control-host",this.ui=Yt}return t.prototype.ngAfterViewInit=function(){var t=this;this.messages.changes.subscribe((function(){return t.check()})),this.check()},t.prototype.check=function(){var t=this;this.messages.forEach((function(e){return e.active=!(!t.control.hasError(e.validator)||!t.control.dirty)}))},Object.defineProperty(t.prototype,"control",{get:function(){return this.parent instanceof r.FormGroupName||this.parent instanceof r.FormGroupDirective||this.parent instanceof r.FormArrayName?this.parent.control.get(this.name):null},enumerable:!0,configurable:!0}),t.ctorParameters=function(){return[{type:r.ControlContainer,decorators:[{type:i.Optional},{type:i.Host},{type:i.SkipSelf}]}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.ContentChildren(Yi),G("design:type",i.QueryList)],t.prototype,"messages",void 0),q([Zt({description:"Form control name",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"name",void 0),t=q([i.Component({selector:"jnt-form-control",template:'<jnt-stack child-of="jnt-form-control-host" [gutter]="ui.gutter.tiny" [align]="ui.align.stretch">\n  <ng-content></ng-content>\n</jnt-stack>'}),V(0,i.Optional()),V(0,i.Host()),V(0,i.SkipSelf()),G("design:paramtypes",[r.ControlContainer])],t)}(),$i=function(){function n(e){this.logger=e,this.host="jnt-form-host",this.ui=Yt,this._state={success:!1},this._height=t["ɵbo"].default,this.submitted=new i.EventEmitter,this.checked=new i.EventEmitter}return Object.defineProperty(n.prototype,"height",{set:function(e){this._height=e||t["ɵbo"].default},enumerable:!0,configurable:!0}),n.prototype.success=function(){var t=this;this._state.success=!0,setTimeout((function(){return t._state.success=!1}),2100)},n.prototype.ngOnInit=function(){var t=this;this.form&&this.form.statusChanges.subscribe((function(){t.render(),t.checked.emit(t.check(t.form))}))},n.prototype.render=function(){this.logger.debug("render form"),this.controls&&this.controls.filter((function(t){return!!t.name&&!!t.messages.length})).forEach((function(t){return t.check()}))},n.prototype.check=function(t){this.logger.debug("check form");var e=[];for(var n in t.controls){var o=t.controls[n];o instanceof r.FormGroup||o instanceof r.FormArray?e=e.concat(this.check(o)):o.errors&&o.dirty&&e.push(o)}return this.logger.debug("controls have errors = ",e.map((function(t){return t.name}))),e},n.prototype.onSubmit=function(){this.submit()},n.prototype.submit=function(){this.logger.debug("submit form"),this.form&&(this.validate(this.form),this.form.valid&&(this.submitted.emit(),this.refresh(this.form)))},n.prototype.validate=function(t){for(var e in this.logger.debug("validate form"),t.controls){var n=t.controls[e];n instanceof r.FormGroup||n instanceof r.FormArray?this.validate(n):(n.markAsDirty(),n.updateValueAndValidity({emitEvent:!1}))}this.render(),this.checked.emit(this.check(this.form))},n.prototype.refresh=function(t){for(var e in this.logger.debug("refresh form"),t.controls){var n=t.controls[e];n instanceof r.FormGroup||n instanceof r.FormArray?this.refresh(n):n.markAsPristine()}},n.ctorParameters=function(){return[{type:a.NGXLogger}]},q([i.HostBinding("attr.host"),G("design:type",Object)],n.prototype,"host",void 0),q([i.HostBinding("attr.data-height"),G("design:type",String)],n.prototype,"_height",void 0),q([Zt({description:"Name form group",type:"FormGroup"}),i.Input("formGroup"),G("design:type",r.FormGroup)],n.prototype,"form",void 0),q([Zt({description:"Title for form",type:"string"}),i.Input(),G("design:type",String)],n.prototype,"title",void 0),q([Zt({description:"State of form",path:"ui.state",options:[t["ɵbd"].error,t["ɵbd"].loading]}),i.Input(),G("design:type",String)],n.prototype,"state",void 0),q([Zt({description:"Height of form",path:"ui.height",options:[t["ɵbo"].default,t["ɵbo"].fluid],default:t["ɵbo"].default}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"height",null),q([i.ContentChild("formTitleTemplate"),G("design:type",i.TemplateRef)],n.prototype,"titleTemplate",void 0),q([i.ContentChild("formFooterTemplate"),G("design:type",i.TemplateRef)],n.prototype,"footerTemplate",void 0),q([i.ContentChildren(Ui,{descendants:!0}),G("design:type",i.QueryList)],n.prototype,"controls",void 0),q([i.Output(),G("design:type",Object)],n.prototype,"submitted",void 0),q([i.Output(),G("design:type",Object)],n.prototype,"checked",void 0),q([te({description:"show success animation"}),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],n.prototype,"success",null),q([i.HostListener("submit"),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],n.prototype,"submit",null),n=q([i.Component({selector:"jnt-form",template:'<form child-of="jnt-form-host" >\n  <header child-of="jnt-form-host" *ngIf="!!title || !!titleTemplate">\n    <h3 child-of="jnt-form-host" *ngIf="!!title && !titleTemplate">{{title}}</h3>\n    <ng-container *ngIf="!!titleTemplate">\n      <ng-container *ngTemplateOutlet="titleTemplate"></ng-container>\n    </ng-container>\n  </header>\n\n  <div child-of="jnt-form-host" data-content>\n    <ng-content></ng-content>\n  </div>\n\n  <footer child-of="jnt-form-host" *ngIf="!!footerTemplate">\n    <ng-container *ngTemplateOutlet="footerTemplate"></ng-container>\n  </footer>\n\n  <div child-of="jnt-form-host" data-loading *ngIf="state === ui.state.loading">\n    <jnt-spinner child-of="jnt-form-host" [size]="ui.size.large"></jnt-spinner>\n  </div>\n  <div child-of="jnt-form-host" data-error *ngIf="state === ui.state.error">\n    <jnt-icon child-of="jnt-form-host" [icon]="ui.icons.sad"></jnt-icon>\n  </div>\n  <div child-of="jnt-form-host" data-success *ngIf="_state.success" [@success]="_state.success">\n    <jnt-icon child-of="jnt-form-host" [icon]="ui.icons.animated.success"></jnt-icon>\n  </div>\n</form>',animations:[e.trigger("success",[e.state("void",e.style({opacity:0})),e.state("*",e.style({opacity:1})),e.transition("void <=> *",[e.animate(".3s ease-in-out")])])]}),G("design:paramtypes",[a.NGXLogger])],n)}(),Xi=function(){function e(){this.host="jnt-form-item-host",this.ui=Yt,this._orientation=t["ɵn"].vertical,this._align=t["ɵp"].stretch,this._gutter=t["ɵo"].tiny}return Object.defineProperty(e.prototype,"orientation",{get:function(){return this._orientation},set:function(e){this._orientation=e||t["ɵn"].vertical},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"align",{get:function(){return this._align},set:function(e){this._align=e||t["ɵp"].stretch},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"gutter",{get:function(){return this._gutter},set:function(e){this._gutter=e||t["ɵo"].tiny},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Form item orientation",path:"ui.orientation",default:t["ɵn"].vertical,options:[t["ɵn"].horizontal,t["ɵn"].vertical]}),i.HostBinding("attr.data-orientation"),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"orientation",null),q([Zt({description:"Align of elements in form item",path:"ui.align",default:t["ɵp"].stretch,options:[t["ɵp"].start,t["ɵp"].center,t["ɵp"].end,t["ɵp"].baseline,t["ɵp"].stretch]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"align",null),q([Zt({description:"Space between elements in form item",path:"ui.gutter",default:t["ɵo"].tiny,options:[t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].big,t["ɵo"].large,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"gutter",null),e=q([i.Component({selector:"jnt-form-item",template:'<jnt-stack child-of="jnt-form-item-host" [orientation]="orientation"\n           [align]="align"\n           [gutter]="gutter">\n  <ng-content></ng-content>\n</jnt-stack>'})],e)}(),Qi=function(){function t(t){this.parent=t,this.host="jnt-form-label-host",this.required=!1}return t.prototype.ngOnInit=function(){var t=this,e=this.parent.control.get(this.for);e&&(e.statusChanges.subscribe((function(){return t.check(e)})),this.check(e))},t.prototype.check=function(t){t.validator&&t.validator({})?this.required=t.validator({}).required:this.required=!1},t.ctorParameters=function(){return[{type:r.ControlContainer}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([Zt({description:"The identifier of the item to associate with",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"for",void 0),t=q([i.Component({selector:"jnt-form-label",template:'<label child-of="jnt-form-label-host" [for]="for">\n  <ng-content></ng-content>\n  <span child-of="jnt-form-label-host" data-required *ngIf="required">*</span>\n</label>'}),G("design:paramtypes",[r.ControlContainer])],t)}(),Ki=function(){function t(){}return t.prototype.transform=function(t,e){return t.touched&&t.hasError(e)},t=q([i.Pipe({name:"fieldTouchedHasError",pure:!1})],t)}(),Ji=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.FormsModule,Di,Ii,qe,r.ReactiveFormsModule,A.RouterModule,Vi,Gn,Eo,Do,Ge,Wi],declarations:[$i,Ui,Xi,Qi,Yi,Ki],entryComponents:[$i,Ui,Qi,Yi,Xi],exports:[$i,Ui,Xi,Qi,Yi,Ki]})],t)}();(zi=t.MoveTypes||(t.MoveTypes={})).Move="move",zi.Pinch="pinch";var Zi,tr=function(){this.active=!1,this.type=null,this.left=0,this.top=0,this.clientX=0,this.clientY=0},er=function(){this.left=0,this.top=0,this.scale=1,this.width=0,this.height=0},nr=function(){this.width=200,this.height=200},or=function(){function e(e,n,o,r){var a=this;this.logger=e,this.cd=n,this.fb=o,this.sanitizer=r,this.ui=Yt,this.host="jnt-image-cropper-host",this.moveStart=new tr,this.sizeRetries=0,this._min=.01,this._max=5,this._step=.01,this.marginLeft="0px",this.moveTypes=t.MoveTypes,this.imagePosition=new er,this.form=this.fb.group({zoom:[this.imagePosition.scale]}),this.area=new nr,this.disabled=!1,this._shape=t["ɵs"].circle,this.loaded=new i.EventEmitter,this.failed=new i.EventEmitter,this.onChange=function(){return a.logger.error("value accessor is not registered")},this.onTouched=function(){return a.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return a.onChange=t},this.registerOnTouched=function(t){return a.onTouched=t},this.onBlur=function(){return a.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"min",{get:function(){return this._min},set:function(t){this._min=t||.01},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"max",{get:function(){return this._max},set:function(t){this._max=t||5},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"step",{get:function(){return this._step},set:function(t){this._step=t||.01},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"url",{get:function(){return this._url},set:function(t){this._url=t,t&&(this.moveStart=new tr,this.imagePosition=new er)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"shape",{set:function(e){this._shape=e||t["ɵs"].circle},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var t=this;this.form.valueChanges.subscribe((function(e){var n=e.zoom;return t.zoom(n)}))},e.prototype.inView=function(){var t=this;this.image.nativeElement.currentSrc.includes("image/svg")&&(this.disabled=!0),this.loaded.emit(),this.sizeRetries=0,setTimeout((function(){return t.checkImageMaxSizeRecursively()}))},e.prototype.checkImageMaxSizeRecursively=function(){var t=this;if(this.sizeRetries>40)this.failed.emit();else if(this.image&&this.image.nativeElement&&this.image.nativeElement.offsetWidth>0){var e=this.image.nativeElement,n=this.wrapper.nativeElement;this.imagePosition.width=e.offsetWidth,this.imagePosition.height=e.offsetHeight,this.imagePosition.top=(n.offsetHeight-e.offsetHeight)/2,this.imagePosition.left=(n.offsetWidth-e.offsetWidth)/2;var o=Math.trunc(n.offsetWidth/e.offsetWidth*100)/100;o=Math.min(o,Math.trunc(n.offsetHeight/e.offsetHeight*100)/100,this.max),this.zoom(o),this.cd.detectChanges()}else this.sizeRetries++,setTimeout((function(){return t.checkImageMaxSizeRecursively()}),50)},e.prototype.startMove=function(e,n){this.moveStart&&this.moveStart.active&&this.moveStart.type===t.MoveTypes.Pinch||(e.preventDefault&&e.preventDefault(),this.moveStart=N({active:!0,type:n,clientX:this.getClientX(e),clientY:this.getClientY(e)},this.imagePosition))},e.prototype.moveImg=function(e){this.moveStart.active&&(e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault(),this.moveStart.type===t.MoveTypes.Move&&this.move(e),this.cd.detectChanges())},e.prototype.moveStop=function(){this.moveStart.active&&(this.moveStart.active=!1,this.crop())},e.prototype.crop=function(){var t=this.image.nativeElement,e=this.cropper.nativeElement,n=this.imagePosition.scale;this.onChange({left:Math.round(e.offsetLeft-(t.offsetLeft-(t.width*n-t.width)/2)),top:Math.round(e.offsetTop-(t.offsetTop-(t.height*n-t.height)/2)),scale:n})},e.prototype.move=function(t){var e=this.getClientX(t)-this.moveStart.clientX,n=this.getClientY(t)-this.moveStart.clientY;this.imagePosition.left=this.moveStart.left+e,this.imagePosition.top=this.moveStart.top+n},e.prototype.getClientX=function(t){return(t.touches&&t.touches[0]?t.touches[0].clientX:t.clientX)||0},e.prototype.getClientY=function(t){return(t.touches&&t.touches[0]?t.touches[0].clientY:t.clientY)||0},e.prototype.zoom=function(t){void 0===t&&(t=1),this.imagePosition.scale=t,this.imagePosition.width=this.imagePosition.width*t,this.imagePosition.height=this.imagePosition.height*t,this.transformStyle=this.sanitizer.bypassSecurityTrustStyle("scaleX("+(t||1)+")scaleY("+(t||1)+")"),this.cd.detectChanges(),this.crop()},e.prototype.writeValue=function(t){t&&(this.imagePosition=N(N({},this.imagePosition),t))},e.prototype.setDisabledState=function(t){this.disabled=t},e.ctorParameters=function(){return[{type:a.NGXLogger},{type:i.ChangeDetectorRef},{type:r.FormBuilder},{type:l.DomSanitizer}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.ViewChild("wrapper",{static:!0}),G("design:type",i.ElementRef)],e.prototype,"wrapper",void 0),q([i.ViewChild("image"),G("design:type",i.ElementRef)],e.prototype,"image",void 0),q([i.ViewChild("cropper"),G("design:type",i.ElementRef)],e.prototype,"cropper",void 0),q([Zt({description:"Size of crop area",type:"CropperPosition",default:"{width: 200, height: 200}"}),i.Input(),G("design:type",Object)],e.prototype,"area",void 0),q([Zt({description:"Min of cropping",type:"number",default:"0.01"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"min",null),q([Zt({description:"Max of cropping",type:"number",default:"5"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"max",null),q([Zt({description:"Step of cropping",type:"number",default:"0.01"}),i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],e.prototype,"step",null),q([Zt({description:"Url of image",type:"string",default:null}),i.Input(),G("design:type",Object),G("design:paramtypes",[Object])],e.prototype,"url",null),q([i.HostBinding("attr.data-disabled"),G("design:type",Object)],e.prototype,"disabled",void 0),q([i.HostBinding("attr.data-shape"),G("design:type",String)],e.prototype,"_shape",void 0),q([Zt({description:"Avatar shape",path:"ui.shape",default:t["ɵs"].circle,options:[t["ɵs"].circle,t["ɵs"].square]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"shape",null),q([i.Output(),G("design:type",Object)],e.prototype,"loaded",void 0),q([i.Output(),G("design:type",Object)],e.prototype,"failed",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),q([i.HostListener("document:mousemove",["$event"]),i.HostListener("document:touchmove",["$event"]),G("design:type",Function),G("design:paramtypes",[Object]),G("design:returntype",void 0)],e.prototype,"moveImg",null),q([i.HostListener("document:mouseup"),i.HostListener("document:touchend"),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],e.prototype,"moveStop",null),e=n=q([i.Component({selector:"jnt-image-cropper",template:'<label child-of="jnt-image-cropper-host" *ngIf="!imagePosition.width && !imagePosition.height">\n  <jnt-icon child-of="jnt-image-cropper-host" [icon]="ui.icons.download"></jnt-icon>\n</label>\n\n<div child-of="jnt-image-cropper-host" #wrapper data-wrapper>\n  <img child-of="jnt-image-cropper-host" #image\n       *ngIf="!!url"\n       [src]="url"\n       (load)="inView()"\n       [style.top.px]="imagePosition.top"\n       [style.left.px]="imagePosition.left"\n       [style.transform]="transformStyle"\n       (mousedown)="startMove($event, moveTypes.Move)"\n       (touchstart)="startMove($event, moveTypes.Move)"  />\n\n  <div child-of="jnt-image-cropper-host" #cropper\n       data-cropper *ngIf="!!imagePosition.width && !!imagePosition.height"\n       [style.top]="\'calc(50% - \' + area.height / 2 + \'px)\'"\n       [style.left]="\'calc(50% - \' + area.width / 2 + \'px)\'"\n       [style.width.px]="area.width"\n       [style.height.px]="area.height"\n       tabindex="0">\n  </div>\n</div>\n\n<form child-of="jnt-image-cropper-host" [formGroup]="form" data-zoom [attr.data-disabled]="!imagePosition.width || !imagePosition.height || disabled">\n  <jnt-slider child-of="jnt-image-cropper-host" formControlName="zoom"\n              [min]="min"\n              [max]="max"\n              [step]="step">\n  </jnt-slider>\n</form>',changeDetection:i.ChangeDetectionStrategy.OnPush,providers:U([{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}],Yo)}),G("design:paramtypes",[a.NGXLogger,i.ChangeDetectorRef,r.FormBuilder,l.DomSanitizer])],e)}(),ir=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.ReactiveFormsModule,Gn,Ge,r.FormsModule,Bi],exports:[or],declarations:[or],entryComponents:[or]})],t)}();!function(t){t[t.view=1]="view",t[t.crop=2]="crop"}(Zi||(Zi={}));var rr,ar=function(){function e(t,e,n){var o=this;this.fb=t,this.logger=e,this.sanitizer=n,this.ui=Yt,this.pages=Zi,this.host="jnt-image-uploader-host",this.progress={uploading:!1},this.page=Zi.view,this.form=this.fb.group({cropping:[]}),this.shape=Yt.shape.square,this.width=200,this.height=200,this.onChange=function(){return o.logger.error("value accessor is not registered")},this.onTouched=function(){return o.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return o.onChange=t},this.registerOnTouched=function(t){return o.onTouched=t},this.onBlur=function(){return o.onTouched()}}var n;return n=e,e.prototype.writeValue=function(t){this.logger.debug("write value ",t),this.image=t},e.prototype.crop=function(t){var e=this,n=t.target;this.file=n.files[0];var o=new FileReader;o.onload=function(t){var n=t.target.result;e.sketch=e.sanitizer.bypassSecurityTrustUrl(n.toString()),e.page=Zi.crop},o.readAsDataURL(this.file)},e.prototype.upload=function(){var t=this;(new FormData).append("file",this.file,this.file.name);var e=this.form.getRawValue().cropping;this.progress.uploading=!0,this.uploader(N(N({},e),{width:this.width,height:this.height,file:this.file})).pipe(p.finalize((function(){return t.progress.uploading=!1})),p.tap((function(e){return t.logger.debug("image uploaded ",e)}))).subscribe((function(e){t.image=e,t.onChange(e),t.page=Zi.view}))},e.prototype.cancel=function(){this.page=Zi.view},e.ctorParameters=function(){return[{type:r.FormBuilder},{type:a.NGXLogger},{type:l.DomSanitizer}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Upload function",type:"Function"}),i.Input(),G("design:type",Function)],e.prototype,"uploader",void 0),q([Zt({description:"Avatar shape",path:"ui.shape",default:t["ɵs"].circle,options:[t["ɵs"].circle,t["ɵs"].square]}),i.Input(),G("design:type",Object)],e.prototype,"shape",void 0),q([Zt({description:"Width of uploader",type:"number",default:200}),i.Input(),G("design:type",Object)],e.prototype,"width",void 0),q([Zt({description:"Width of uploader",type:"number",default:200}),i.Input(),G("design:type",Object)],e.prototype,"height",void 0),q([i.ContentChild("imageTemplate"),G("design:type",i.TemplateRef)],e.prototype,"imageTemplate",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-image-uploader",template:'<ng-template #defaultImageTemplate let-image="image">\n    <jnt-picture child-of="jnt-image-uploader-host" [src]="image"\n                 [fit]="ui.fit.width"\n                 width="{{width}}px"\n                 height="{{height}}px"></jnt-picture>\n</ng-template>\n\n<ng-container [ngSwitch]="page">\n    <ng-container *ngSwitchCase="pages.view">\n        <input child-of="jnt-image-uploader-host" data-select-file type="file" (change)="crop($event)"  />\n        <ng-container *ngTemplateOutlet="imageTemplate\n          || defaultImageTemplate;context: {image: image}">\n        </ng-container>\n    </ng-container>\n    <ng-container *ngSwitchCase="pages.crop">\n        <jnt-form child-of="jnt-image-uploader-host" [formGroup]="form" data-cropper\n                  [state]="progress.uploading ? ui.state.loading : null">\n            <jnt-form-item child-of="jnt-image-uploader-host" >\n                <jnt-form-control child-of="jnt-image-uploader-host" name="cropping">\n                    <jnt-image-cropper child-of="jnt-image-uploader-host" formControlName="cropping" [shape]="shape"\n                                       [url]="sketch"></jnt-image-cropper>\n                </jnt-form-control>\n            </jnt-form-item>\n            <ng-template #formFooterTemplate>\n                <jnt-stack child-of="jnt-image-uploader-host" [orientation]="ui.orientation.horizontal"\n                           [justify]="ui.justify.between">\n                    <jnt-button child-of="jnt-image-uploader-host" text="Отмена"\n                                [icon]="ui.icons.cancel"\n                                [scheme]="ui.scheme.secondary"\n                                (click)="cancel()"></jnt-button>\n                    <jnt-button child-of="jnt-image-uploader-host" text="Загрузить"\n                                [icon]="ui.icons.save"\n                                (click)="upload()"></jnt-button>\n                </jnt-stack>\n            </ng-template>\n        </jnt-form>\n    </ng-container>\n</ng-container>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[r.FormBuilder,a.NGXLogger,l.DomSanitizer])],e)}(),sr=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.ReactiveFormsModule,xi,ir,Ji,qe,Xn],declarations:[ar],exports:[ar]})],t)}(),lr=function(){function t(){}return q([i.Input(),G("design:type",String)],t.prototype,"title",void 0),t=q([i.Component({selector:"jnt-week-metric",template:""})],t)}();!function(t){t.date="date",t.year="year",t.month="month"}(rr||(rr={}));var pr,cr=function(){function e(t,e){var n=this;this.logger=t,this.config=e,this.host="jnt-calendar-host",this.ui=Yt,this._period=lo(),this.weeks=[],this.months=[],this.years=[],this.viewType=rr,this.view=rr.date,this.features=[],this.updated=new i.EventEmitter,this.selected=new i.EventEmitter,this.disabled=!1,this.onChange=function(){return n.logger.debug("value accessor is not registered")},this.onTouched=function(){return n.logger.debug("value accessor is not registered")},this.registerOnChange=function(t){return n.onChange=t},this.registerOnTouched=function(t){return n.onTouched=t},this.onBlur=function(){return n.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"period",{get:function(){return this._period},set:function(t){c.isSameMonth(this._period,t)||(this._period=t,this.update())},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.update()},e.prototype.writeValue=function(t){this.current=t,this.period=t||lo()},e.prototype.setDisabledState=function(t){this.disabled=t},e.prototype.select=function(t){this.current=t,this.onChange(t),this.selected.emit(t)},e.prototype.today=function(){var t=new Date;this.period=t,this.select(t)},e.prototype.add=function(){this.view===rr.date?this.period=c.addMonths(this.period,1):this.view===rr.month?this.period=c.addYears(this.period,1):this.period=c.addYears(this.period,12)},e.prototype.sub=function(){this.view===rr.date?this.period=c.subMonths(this.period,1):this.view===rr.month?this.period=c.subYears(this.period,1):this.period=c.subYears(this.period,12)},e.prototype.update=function(){var t=c.startOfWeek(new Date(c.getYear(this.period),c.getMonth(this.period),1),{locale:this.config.locale.dfns}),e=t;this.weeks=[];for(var n=0;n<6;n++){this.weeks[n]={days:[],date:e};for(var o=0;o<7;o++)this.weeks[n].days[o]=c.addDays(e,o);e=c.addWeeks(e,1)}this.updated.emit({start:t,end:e});for(n=0;n<3;n++){this.months[n]=[];for(o=0;o<4;o++)this.months[n].push(new Date(c.getYear(this.period),4*n+o,1))}for(n=0;n<3;n++){this.years[n]=[];for(o=0;o<4;o++)this.years[n].push(new Date(c.getYear(this.period)-4+4*n+o,4*n+o,1))}},e.ctorParameters=function(){return[{type:a.NGXLogger},{type:gn}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Calendar features",path:"ui.feature",options:[t["ɵx"].today]}),i.Input(),G("design:type",Array)],e.prototype,"features",void 0),q([i.ContentChildren(lr),G("design:type",i.QueryList)],e.prototype,"metrics",void 0),q([i.ContentChild("calendarDayTemplate"),G("design:type",i.TemplateRef)],e.prototype,"dayTemplate",void 0),q([i.ContentChild("calendarMetricTemplate"),G("design:type",i.TemplateRef)],e.prototype,"metricTemplate",void 0),q([i.Output(),G("design:type",Object)],e.prototype,"updated",void 0),q([i.Output(),G("design:type",Object)],e.prototype,"selected",void 0),q([Zt({description:"Set disabled state",type:"boolean",default:"false"}),i.HostBinding("attr.data-disabled"),i.Input(),G("design:type",Object)],e.prototype,"disabled",void 0),q([Zt({description:"Set current month for displaying",type:"Date"}),i.Input("month"),G("design:type",Date),G("design:paramtypes",[Date])],e.prototype,"period",null),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-calendar",template:'<jnt-stack child-of="jnt-calendar-host" [align]="ui.align.stretch">\n  <table child-of="jnt-calendar-host" >\n    <thead child-of="jnt-calendar-host" >\n    <tr child-of="jnt-calendar-host" >\n      <td child-of="jnt-calendar-host" >\n        <jnt-button child-of="jnt-calendar-host" data-arrow [icon]="ui.icons.chevronLeft"\n                    [outline]="ui.outline.transparent"\n                    [scheme]="ui.scheme.secondary"\n                    [size]="ui.size.small"\n                    (click)="sub()">\n        </jnt-button>\n      </td>\n      <td child-of="jnt-calendar-host" *ngIf="view === viewType.date" (click)="view = viewType.month" colspan="5">\n        <jnt-button child-of="jnt-calendar-host" data-date [outline]="ui.outline.transparent"\n                    [scheme]="ui.scheme.secondary"\n                    [size]="ui.size.small"\n                    text="{{period | jntFormat: \'LLLL\'}}, {{period | jntFormat: \'yyyy\'}}"></jnt-button>\n      </td>\n      <td child-of="jnt-calendar-host" *ngIf="view === viewType.month" (click)="view = viewType.year" colspan="2">\n        <jnt-button child-of="jnt-calendar-host" data-date [outline]="ui.outline.transparent"\n                    [scheme]="ui.scheme.secondary"\n                    [size]="ui.size.small"\n                    [width]="ui.width.fluid"\n                    text="{{period | jntFormat: \'yyyy\'}}">\n        </jnt-button>\n      </td>\n      <td child-of="jnt-calendar-host" *ngIf="view === viewType.year" colspan="2" data-year>\n        {{(period | jntGetYear) - 4}} - {{(period | jntGetYear) + 7}}\n      </td>\n      <td child-of="jnt-calendar-host" >\n        <jnt-button child-of="jnt-calendar-host" data-arrow [icon]="ui.icons.chevronRight"\n                    [outline]="ui.outline.transparent"\n                    [scheme]="ui.scheme.secondary"\n                    [size]="ui.size.small"\n                    (click)="add()">\n        </jnt-button>\n      </td>\n      <td child-of="jnt-calendar-host" data-divider *ngIf="metrics.length"></td>\n      <td child-of="jnt-calendar-host" data-metrics *ngIf="metrics.length"\n          [translate]="\'label.metrics\'"\n          [attr.colspan]="metrics.length">\n        Metrics\n      </td>\n    </tr>\n    <tr child-of="jnt-calendar-host" data-days *ngIf="view === viewType.date; else empty">\n      <th child-of="jnt-calendar-host" *ngFor="let weekDay of [0,1,2,3,4,5,6]">{{weekDay | jntWeekdayName:\'x2\'}}</th>\n\n      <th child-of="jnt-calendar-host" data-divider *ngIf="!!metrics.length"></th>\n\n      <th child-of="jnt-calendar-host" data-metric *ngFor="let m of metrics">\n        {{m.title}}\n      </th>\n    </tr>\n\n    <ng-template #empty>\n      <tr child-of="jnt-calendar-host" data-days>\n        <th child-of="jnt-calendar-host" *ngFor="let col of [1,2,3,4]"></th>\n      </tr>\n    </ng-template>\n    </thead>\n\n    <tbody child-of="jnt-calendar-host" >\n    <ng-container *ngIf="view === viewType.date">\n      <tr child-of="jnt-calendar-host" *ngFor="let w of weeks"\n          [attr.data-current-week]="(current | jntStartOfWeek) | jntIsEqual: (w.date | jntStartOfWeek)">\n        <td child-of="jnt-calendar-host" data-day *ngFor="let d of w.days"\n            [attr.data-today]="d | jntIsToday"\n            [attr.data-current-month]="(d | jntStartOfMonth) | jntIsEqual: (period | jntStartOfMonth)"\n            [attr.data-selected-day]="(d | jntStartOfDay) | jntIsEqual: (current | jntStartOfDay)"\n            (click)="select(d)" tabindex="0">\n          <ng-container *ngTemplateOutlet="!!dayTemplate ? dayTemplate: defaultDayTemplate;context:{date: d}">\n          </ng-container>\n        </td>\n\n        <td child-of="jnt-calendar-host" data-divider *ngIf="!!metrics.length"></td>\n\n        <td child-of="jnt-calendar-host" data-metric *ngFor="let m of metrics;let i = index;">\n          <ng-container *ngTemplateOutlet="metricTemplate;context:{metric: i, date: w.date}">\n          </ng-container>\n        </td>\n      </tr>\n    </ng-container>\n\n    <ng-container *ngIf="view === viewType.month">\n      <tr child-of="jnt-calendar-host" *ngFor="let row of months">\n        <td child-of="jnt-calendar-host" data-day data-day-extend *ngFor="let month of row"\n            [attr.data-current-month]="month | jntIsThisMonth"\n            [attr.data-selected-month]="(month | jntStartOfMonth) | jntIsEqual: (current | jntStartOfMonth)"\n            (click)="period = month; view = viewType.date">\n          {{month | jntFormat: \'LLL\'}}\n        </td>\n      </tr>\n    </ng-container>\n\n    <ng-container *ngIf="view === viewType.year">\n      <tr child-of="jnt-calendar-host" *ngFor="let row of years">\n        <td child-of="jnt-calendar-host" data-day data-day-extend data-year *ngFor="let year of row"\n            [attr.data-current-year]="year | jntIsThisYear"\n            [attr.data-selected-year]="(year | jntStartOfYear) | jntIsEqual: (current | jntStartOfYear)"\n            (click)="period = year; view = viewType.month">\n          {{year | jntFormat: \'yyyy\'}}\n        </td>\n      </tr>\n    </ng-container>\n\n    </tbody>\n  </table>\n  <jnt-stack child-of="jnt-calendar-host" *ngIf="features | includes : ui.feature.today" [align]="ui.align.center">\n    <jnt-button child-of="jnt-calendar-host" [scheme]="ui.scheme.secondary"\n                [size]="ui.size.small"\n                [icon]="ui.icons.today"\n                text="Today"\n                (click)="today()">\n    </jnt-button>\n  </jnt-stack>\n</jnt-stack>\n\n<ng-template #defaultDayTemplate let-date="date">\n  <div child-of="jnt-calendar-host" data-default>{{date | jntGetDate}}</div>\n</ng-template>',providers:U([{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}],Yo)}),G("design:paramtypes",[a.NGXLogger,gn])],e)}(),dr=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,R.TranslateModule,Gn,qe,we,Ln,Xn],declarations:[cr,lr],entryComponents:[cr,lr],exports:[cr,lr]})],t)}(),ur=function(){function n(e){this.breakpoint=e,this.ui=Yt,this._state={success:!1},this.host="jnt-block-host",this._padding=t["ɵo"].normal,this._spacing=t["ɵo"].normal,this.width=t["ɵv"].default,this.features=[]}return Object.defineProperty(n.prototype,"hasHelp",{get:function(){return!!this.blockHelpTemplate},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"hasHeader",{get:function(){return!!this.blockHeaderTemplate||!!this.title},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"padding",{set:function(e){this._padding=e||t["ɵo"].normal},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"spacing",{get:function(){return this._spacing},set:function(e){this._spacing=e||t["ɵo"].normal},enumerable:!0,configurable:!0}),n.prototype.success=function(){var t=this;this._state.success=!0,setTimeout((function(){return t._state.success=!1}),2100)},n.ctorParameters=function(){return[{type:We}]},q([i.HostBinding("attr.host"),G("design:type",Object)],n.prototype,"host",void 0),q([i.HostBinding("attr.data-has-help"),G("design:type",Object),G("design:paramtypes",[])],n.prototype,"hasHelp",null),q([i.HostBinding("attr.data-has-header"),G("design:type",Object),G("design:paramtypes",[])],n.prototype,"hasHeader",null),q([i.HostBinding("attr.data-padding"),G("design:type",Object)],n.prototype,"_padding",void 0),q([Zt({description:"Title of block",type:"string"}),i.Input(),G("design:type",String)],n.prototype,"title",void 0),q([Zt({description:"Padding for block",path:"ui.gutter",options:[t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].large,t["ɵo"].big,t["ɵo"].huge],default:t["ɵo"].normal}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"padding",null),q([Zt({description:"Spacing between header, body and footer",path:"ui.gutter",options:[t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].large,t["ɵo"].big,t["ɵo"].huge],default:t["ɵo"].normal}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"spacing",null),q([Zt({description:"Block width",path:"ui.width",default:t["ɵv"].default,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.HostBinding("attr.data-width"),i.Input(),G("design:type",String)],n.prototype,"width",void 0),q([Zt({description:"State of block",path:"ui.state",options:[t["ɵbd"].error,t["ɵbd"].loading]}),i.Input(),G("design:type",String)],n.prototype,"state",void 0),q([Zt({description:"Adapted block on mobile view",path:"ui.feature",options:[t["ɵx"].adapted]}),i.HostBinding("attr.data-features"),i.Input(),G("design:type",Array)],n.prototype,"features",void 0),q([ee({selector:"#blockHelpTemplate",description:"Block help template"}),i.ContentChild("blockHelpTemplate"),G("design:type",i.TemplateRef)],n.prototype,"blockHelpTemplate",void 0),q([ee({selector:"#blockHeaderTemplate",description:"Block header template"}),i.ContentChild("blockHeaderTemplate"),G("design:type",i.TemplateRef)],n.prototype,"blockHeaderTemplate",void 0),q([ee({selector:"#blockFooterTemplate",description:"Block footer template"}),i.ContentChild("blockFooterTemplate"),G("design:type",i.TemplateRef)],n.prototype,"blockFooterTemplate",void 0),q([te({description:"Show success animation"}),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],n.prototype,"success",null),n=q([i.Component({selector:"jnt-block",template:'<div child-of="jnt-block-host" *ngIf="state === ui.state.loading" data-state>\n  <jnt-spinner child-of="jnt-block-host" [size]="ui.size.large"></jnt-spinner>\n</div>\n<div child-of="jnt-block-host" *ngIf="state === ui.state.error" data-state>\n  <jnt-icon child-of="jnt-block-host" [icon]="ui.icons.sad"></jnt-icon>\n</div>\n<div child-of="jnt-block-host" *ngIf="_state.success" [@success]="_state.success" data-state>\n  <jnt-icon child-of="jnt-block-host" [icon]="ui.icons.animated.success"></jnt-icon>\n</div>\n\n<div child-of="jnt-block-host" data-help *ngIf="!!blockHelpTemplate"\n     [jntPopover]="{\n        contentTemplate: blockHelpTemplate,\n        trigger: ui.trigger.click,\n        position: breakpoint.current !== ui.breakpoint.mobile ? ui.position.right : ui.position.bottom\n     }">\n  <jnt-icon child-of="jnt-block-host" [icon]="ui.icons.question"></jnt-icon>\n</div>\n\n<jnt-stack child-of="jnt-block-host" data-block [align]="ui.align.stretch" [gutter]="spacing">\n  <div child-of="jnt-block-host" *ngIf="!!title && !blockHeaderTemplate" data-title>\n    {{title}}\n  </div>\n\n  <ng-container *ngIf="!!blockHeaderTemplate">\n    <ng-container *ngTemplateOutlet="blockHeaderTemplate"></ng-container>\n  </ng-container>\n\n  <div child-of="jnt-block-host" data-body>\n    <ng-content></ng-content>\n  </div>\n\n  <div child-of="jnt-block-host" *ngIf="!!blockFooterTemplate" data-footer>\n    <ng-container *ngTemplateOutlet="blockFooterTemplate"></ng-container>\n  </div>\n</jnt-stack>',animations:[e.trigger("success",[e.state("void",e.style({opacity:0})),e.state("*",e.style({opacity:1})),e.transition("void <=> *",[e.animate(".3s ease-in-out")])])]}),G("design:paramtypes",[We])],n)}(),gr=function(){function t(){}return t=q([i.NgModule({declarations:[ur],imports:[o.CommonModule,Gn,Ge,qe,ko],entryComponents:[ur],exports:[ur]})],t)}();!function(t){t.am=" AM",t.pm=" PM"}(pr||(pr={}));var hr,fr=function(){function e(e,n,o,i){var r=this;this.logger=e,this.fb=n,this.breakpoint=o,this.config=i,this.host="jnt-date-picker-host",this.ui=Yt,this.datePickerType=t["ɵdc"],this.meridians=pr,this._type=t["ɵdc"].date,this.reference={popover:null},this._width=t["ɵv"].default,this.dateControl=this.fb.control(null),this.timeControl=this.fb.control(null),this.hoursControl=this.fb.control(null),this.minutesControl=this.fb.control(null),this.calendarControl=this.fb.control(new Date),this.form=this.fb.group({date:this.dateControl,time:this.timeControl,hours:this.hoursControl,minutes:this.minutesControl,calendar:this.calendarControl}),this.calendarOpened=!1,this.timeOpened=!1,this.placeholder="",this.features=[],this.onChange=function(){return r.logger.error("value accessor is not registered")},this.onTouched=function(){return r.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return r.onChange=t},this.registerOnTouched=function(t){return r.onTouched=t},this.onBlur=function(){return r.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"mobile",{get:function(){return this.breakpoint.current===t.Breakpoint.mobile},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"type",{get:function(){return this._type},set:function(e){this.clear(),this._type=e||t["ɵdc"].date},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"width",{set:function(e){this._width=e||t["ɵv"].default},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var t=this;this.calendarControl.valueChanges.pipe(p.distinctUntilChanged()).subscribe((function(e){t.dateControl.setValue(e?c.format(e,"P",{locale:t.config.locale.dfns}).replace(/\D/gi,""):null),t.calendarOpened=!1,t.reference.popover&&(t.reference.popover.hide(),t.reference.popover=null)})),this.hoursControl.valueChanges.pipe(p.distinctUntilChanged((function(t,e){return de(t,e)}))).subscribe((function(){return t.setTime()})),this.minutesControl.valueChanges.pipe(p.distinctUntilChanged((function(t,e){return de(t,e)}))).subscribe((function(){return t.setTime()})),this.dateControl.valueChanges.pipe(p.debounceTime(500),p.distinctUntilChanged()).subscribe((function(e){return t.update(e,!0)})),this.timeControl.valueChanges.pipe(p.debounceTime(500),p.distinctUntilChanged()).subscribe((function(e){return t.update(e)}))},e.prototype.close=function(){this.reference.popover&&(this.reference.popover.hide(),this.reference.popover=null)},e.prototype.clear=function(){this.dateControl.setValue(null,{emitEvent:!1}),this.timeControl.setValue(null,{emitEvent:!1}),this.hoursControl.setValue(null,{emitEvent:!1}),this.minutesControl.setValue(null,{emitEvent:!1})},e.prototype.update=function(e,n){var o,i,r,a,s,l;if(void 0===n&&(n=!1),e||this.type===t["ɵdc"].dateTime){if(this.type!==t["ɵdc"].dateTime){var p=this.type===t["ɵdc"].date?this.config.locale.ui.masks.date:this.config.locale.ui.masks.time+(this.meridian||"");try{for(var d=W(e),u=d.next();!u.done;u=d.next()){var g=u.value;p=p.replace("_",g)}}catch(t){o={error:t}}finally{try{u&&!u.done&&(i=d.return)&&i.call(d)}finally{if(o)throw o.error}}(h=c.parse(p,this.type===t["ɵdc"].date?"P":"p",new Date(0),{locale:this.config.locale.dfns}))instanceof Date&&!isNaN(h.getTime())&&(this.type===t["ɵdc"].date?this.calendarControl.setValue(h):(this.hoursControl.setValue(h.getHours()),this.minutesControl.setValue(h.getMinutes())),this.onChange(h),n&&this.close())}else if(this.dateControl.value&&this.timeControl.value){var h;p=this.config.locale.ui.masks.datetime+(this.meridian||"");try{for(var f=W(this.dateControl.value),m=f.next();!m.done;m=f.next()){g=m.value;p=p.replace("_",g)}}catch(t){r={error:t}}finally{try{m&&!m.done&&(a=f.return)&&a.call(f)}finally{if(r)throw r.error}}try{for(var y=W(this.timeControl.value),b=y.next();!b.done;b=y.next()){g=b.value;p=p.replace("_",g)}}catch(t){s={error:t}}finally{try{b&&!b.done&&(l=y.return)&&l.call(y)}finally{if(s)throw s.error}}(h=c.parse(p,"Pp",new Date,{locale:this.config.locale.dfns}))instanceof Date&&!isNaN(h.getTime())&&(this.onChange(h),n&&this.close())}}else this.onChange(null),this.dateControl.value?(this.hoursControl.setValue(null,{emitEvent:!1}),this.minutesControl.setValue(null,{emitEvent:!1}),this.close()):(this.calendarControl.setValue(null,{emitEvent:!1}),this.close())},e.prototype.setTime=function(){var t="00",e="00";null!==this.hoursControl.value?(t=Math.min(Math.max(+this.hoursControl.value,0),23).toString(),this.hoursControl.setValue(+t,{emitEvent:!1}),t=1===t.length?"0"+t:t):this.hoursControl.setValue(0,{emitEvent:!1}),null!==this.minutesControl.value?(e=Math.min(Math.max(+this.minutesControl.value,0),59).toString(),this.minutesControl.setValue(+e,{emitEvent:!1}),e=1===e.length?"0"+e:e):this.minutesControl.setValue(0,{emitEvent:!1}),this.timeControl.setValue(""+t+e)},e.prototype.writeValue=function(t){t instanceof Date&&!isNaN(t.getTime())?(this.calendarControl.setValue(t,{emitEvent:!1}),this.dateControl.setValue(c.format(t,"P",{locale:this.config.locale.dfns}),{emitEvent:!1})):this.clear()},e.prototype.setDisabledState=function(t){t?this.dateControl.disable({emitEvent:!1}):this.dateControl.enable({emitEvent:!1})},e.ctorParameters=function(){return[{type:a.NGXLogger},{type:r.FormBuilder},{type:We},{type:gn}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-width"),G("design:type",String)],e.prototype,"_width",void 0),q([i.HostBinding("attr.calendar-opened"),G("design:type",Object)],e.prototype,"calendarOpened",void 0),q([i.HostBinding("attr.time-opened"),G("design:type",Object)],e.prototype,"timeOpened",void 0),q([Zt({description:"Placeholder for date picker",type:"string"}),i.Input(),G("design:type",Object)],e.prototype,"placeholder",void 0),q([Zt({description:"Button for reset input",path:"ui.feature",options:[t["ɵx"].allowEmpty]}),i.HostBinding("attr.data-features"),i.Input(),G("design:type",Array)],e.prototype,"features",void 0),q([Zt({description:"Date picker type",path:"ui.type",options:[t["ɵdc"].date,t["ɵdc"].time,t["ɵdc"].dateTime]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"type",null),q([Zt({description:"Input width",path:"ui.width",default:t["ɵv"].default,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"width",null),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-date-picker",template:'<jnt-form child-of="jnt-date-picker-host" [formGroup]="form">\n  <jnt-stack child-of="jnt-date-picker-host" [orientation]="ui.orientation.horizontal" [gutter]="mobile ? ui.gutter.none : ui.gutter.normal">\n    <ng-container *ngIf="type === datePickerType.date || type === datePickerType.dateTime">\n      <jnt-input child-of="jnt-date-picker-host" *jntMinFor="ui.breakpoint.tablet"\n                 data-input data-date\n                 formControlName="date"\n                 [placeholder]="placeholder || \'\'"\n                 [jntPopover]="{\n                   contentTemplate: calendarTemplate,\n                   trigger: ui.trigger.click,\n                   behaviour: ui.behaviour.dropdown,\n                   minWidth: \'300px\'\n                 }"\n                 (attached)="reference.popover = $event"\n                 [icon]="ui.icons.calendar"\n                 [mask]="config.locale.ui.masks.date"\n                 [width]="ui.width.fluid"\n                 [features]="features">\n      </jnt-input>\n\n      <jnt-input child-of="jnt-date-picker-host" *jntFor="ui.breakpoint.mobile" data-input\n                 formControlName="date"\n                 [placeholder]="placeholder || \'\'"\n                 [icon]="ui.icons.calendar"\n                 (click)="calendarOpened = !calendarOpened"\n                 [mask]="config.locale.ui.masks.date"\n                 [width]="ui.width.fluid"\n                 [features]="features">\n      </jnt-input>\n    </ng-container>\n\n    <ng-container *ngIf="type === datePickerType.time || type === datePickerType.dateTime">\n      <jnt-input child-of="jnt-date-picker-host" *jntMinFor="ui.breakpoint.tablet"\n                 data-input data-time\n                 formControlName="time"\n                 [icon]="ui.icons.time"\n                 [jntPopover]="{\n                   contentTemplate: timeTemplate,\n                   trigger: ui.trigger.click,\n                   behaviour: ui.behaviour.dropdown,\n                   features: [ui.feature.smarty],\n                   minWidth: \'150px\'\n                 }"\n                 (attached)="reference.popover = $event"\n                 [mask]="config.locale.ui.masks.time + (meridian || \'\')"\n                 [features]="features">\n      </jnt-input>\n\n      <jnt-input child-of="jnt-date-picker-host" *jntFor="ui.breakpoint.mobile" data-input\n                 formControlName="time"\n                 [icon]="ui.icons.time"\n                 (click)="timeOpened = !timeOpened"\n                 [mask]="config.locale.ui.masks.time + (meridian || \'\')"\n                 [features]="features">\n      </jnt-input>\n    </ng-container>\n  </jnt-stack>\n\n  <ng-template #calendarTemplate>\n    <jnt-stack child-of="jnt-date-picker-host" data-calendar-dropdown [align]="ui.align.stretch">\n      <jnt-calendar child-of="jnt-date-picker-host" data-calendar [features]="[ui.feature.today]" formControlName="calendar"></jnt-calendar>\n    </jnt-stack>\n  </ng-template>\n\n  <ng-template #timeTemplate>\n    <jnt-stack child-of="jnt-date-picker-host" data-time-dropdown [orientation]="ui.orientation.horizontal"\n               [align]="ui.align.center">\n\n      <jnt-stack child-of="jnt-date-picker-host" [align]="ui.align.stretch" [gutter]="ui.gutter.small" data-time-col>\n        <jnt-button child-of="jnt-date-picker-host" [icon]="ui.icons.chevronUp"\n                    [size]="ui.size.small"\n                    (click)="hoursControl.setValue(+hoursControl.value + 1)">\n        </jnt-button>\n        <jnt-input child-of="jnt-date-picker-host" data-input\n                   formControlName="hours"\n                   [type]="ui.input.type.number">\n        </jnt-input>\n        <jnt-button child-of="jnt-date-picker-host" [icon]="ui.icons.chevronDown"\n                    [size]="ui.size.small"\n                    (click)="hoursControl.setValue(+hoursControl.value - 1)">\n        </jnt-button>\n      </jnt-stack>\n\n      <jnt-stack child-of="jnt-date-picker-host" [align]="ui.align.stretch" [gutter]="ui.gutter.small" data-time-col>\n        <jnt-button child-of="jnt-date-picker-host" [icon]="ui.icons.chevronUp"\n                    [size]="ui.size.small"\n                    (click)="minutesControl.setValue(+minutesControl.value + 1)">\n        </jnt-button>\n        <jnt-input child-of="jnt-date-picker-host" data-input\n                   formControlName="minutes"\n                   [type]="ui.input.type.number">\n        </jnt-input>\n        <jnt-button child-of="jnt-date-picker-host" [icon]="ui.icons.chevronDown"\n                    [size]="ui.size.small"\n                    (click)="minutesControl.setValue(+minutesControl.value - 1)">\n        </jnt-button>\n      </jnt-stack>\n\n      <jnt-stack child-of="jnt-date-picker-host" *ngIf="config.locale.dfns.code !== \'ru\'"\n                 [align]="ui.align.stretch"\n                 [gutter]="ui.gutter.small" data-time-col>\n        <jnt-button child-of="jnt-date-picker-host" [text]="meridians.am" (click)="meridian = meridians.am"></jnt-button>\n        <jnt-button child-of="jnt-date-picker-host" [text]="meridians.pm" (click)="meridian = meridians.pm"></jnt-button>\n      </jnt-stack>\n    </jnt-stack>\n  </ng-template>\n\n  <ng-container *ngIf="mobile">\n    <ng-container *ngTemplateOutlet="calendarTemplate"></ng-container>\n    <ng-container *ngTemplateOutlet="timeTemplate"></ng-container>\n  </ng-container>\n</jnt-form>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[a.NGXLogger,r.FormBuilder,We,gn])],e)}(),mr=function(){function t(){}return t.prototype.transform=function(t){return 83*Math.sin((6-t)/6*Math.PI)+90},t=q([i.Pipe({name:"styleTop"})],t)}(),yr=function(){function t(){}return t.prototype.transform=function(t){return 83*Math.cos((6-t)/6*Math.PI)+90},t=q([i.Pipe({name:"styleLeft"})],t)}(),br=function(){function t(){}return t.prototype.transform=function(t){return t<10?"0"+String(t):t},t=q([i.Pipe({name:"timeFormat"})],t)}(),vr=function(){function t(){}return t=q([i.NgModule({declarations:[fr,mr,yr,br],imports:[o.CommonModule,r.ReactiveFormsModule,Ji,Eo,dr,gr,ko,an,qe,ko,we,Xn,Gn],entryComponents:[fr],exports:[fr]})],t)}(),jr=function(){function t(){var t=this;this.ui=Yt,this.host="jnt-filter-host",this.placeholder="",this.label="",this.clear=new i.EventEmitter,this.registerOnChange=function(e){return t.onChange=e},this.registerOnTouched=function(e){return t.onTouched=e},this.onBlur=function(){return t.onTouched()}}var e;return e=t,Object.defineProperty(t.prototype,"active",{get:function(){return this.selected||!!this.control&&!!this.control.value||!!this.value},enumerable:!0,configurable:!0}),t.prototype.writeValue=function(t){this.value=t},t.prototype.reset=function(){this.control?this.control.setValue(null):this.onChange?(this.value=null,this.onChange(this.value)):this.clear.emit()},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.HostBinding("attr.data-active"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"active",null),q([Zt({description:"Condition for selected filter",type:"boolean"}),i.Input(),G("design:type",Boolean)],t.prototype,"selected",void 0),q([Zt({description:"Associated form control for filter",type:"AbstractControl"}),i.Input(),G("design:type",r.AbstractControl)],t.prototype,"control",void 0),q([Zt({description:"Placeholder for filter",type:"string"}),i.Input(),G("design:type",Object)],t.prototype,"placeholder",void 0),q([Zt({description:"Icon for filter",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"icon",void 0),q([Zt({description:"Label for filter",type:"string"}),i.Input(),G("design:type",Object)],t.prototype,"label",void 0),q([ee({selector:"#filterContentTemplate",description:"Filter content template"}),i.ContentChild("filterContentTemplate"),G("design:type",i.TemplateRef)],t.prototype,"filterContentTemplate",void 0),q([i.Output(),G("design:type",Object)],t.prototype,"clear",void 0),q([i.HostListener("blur"),G("design:type",Object)],t.prototype,"onBlur",void 0),t=e=q([i.Component({selector:"jnt-filter",template:'<ng-container *ngIf="selected || !!control?.value || !!value; else placeholderFilter">\n  <ng-container *ngIf="!!filterContentTemplate; else defaultTemplate">\n    <ng-container *ngTemplateOutlet="filterContentTemplate"></ng-container>\n  </ng-container>\n\n  <ng-template #defaultTemplate>\n    <span child-of="jnt-filter-host" >{{label}}</span>\n  </ng-template>\n\n  <jnt-button child-of="jnt-filter-host" data-reset\n              [scheme]="ui.scheme.secondary"\n              [size]="ui.size.tiny"\n              [icon]="ui.icons.close"\n              (click)="reset()"></jnt-button>\n</ng-container>\n\n<ng-template #placeholderFilter>\n  <jnt-stack child-of="jnt-filter-host" [orientation]="ui.orientation.horizontal"\n             [align]="ui.align.center"\n             [gutter]="ui.gutter.small">\n    <jnt-icon child-of="jnt-filter-host" *ngIf="icon" [icon]="icon"></jnt-icon>\n    <span child-of="jnt-filter-host" >{{placeholder}}</span>\n  </jnt-stack>\n</ng-template>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return e})),multi:!0}]})],t)}(),kr=function(){function t(){}return t=q([i.NgModule({declarations:[jr],imports:[o.CommonModule,Gn,qe,Xn],entryComponents:[jr],exports:[jr]})],t)}(),wr=function(){function t(){}return t.prototype.transform=function(t,e,n){for(var o=[],i=3;i<arguments.length;i++)o[i-3]=arguments[i];return null===t&&e.length<=0||-1!==(n?e.indexOf(t[n]):e.findIndex((function(e){return de(e,t)})))},t=q([i.Pipe({name:"check"})],t)}(),Cr=function(){function t(){this.active=!1}return q([Zt({description:"Text on switcher option",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"label",void 0),q([Zt({description:"Switcher option value",type:"any"}),i.Input(),G("design:type",Object)],t.prototype,"value",void 0),q([Zt({description:"Icon for switcher option",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"icon",void 0),q([Zt({description:"Disable switcher option",type:"boolean"}),i.Input(),G("design:type",Boolean)],t.prototype,"disabled",void 0),q([i.ContentChild(vi),G("design:type",vi)],t.prototype,"dot",void 0),q([i.ContentChild(Wn),G("design:type",Wn)],t.prototype,"badge",void 0),q([i.ContentChild("optionTemplate"),G("design:type",i.TemplateRef)],t.prototype,"optionTemplate",void 0),t=q([i.Component({selector:"jnt-switcher-option",template:""})],t)}(),Tr=function(){function e(e,n,o){var r=this;this.logger=e,this.breakpoint=n,this.device=o,this.host="jnt-switcher-host",this.ui=Yt,this._features=[],this._orientation=t["ɵn"].horizontal,this._width=t["ɵv"].default,this.disabled=!1,this._mode=t["ɵbf"].single,this.capacity=3,this.loading=!1,this.updated=new i.EventEmitter,this.selected=[],this.version=0,this.onChange=function(){return r.logger.error("value accessor is not registered")},this.onTouched=function(){return r.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return r.onChange=t},this.registerOnTouched=function(t){return r.onTouched=t},this.onBlur=function(){return r.onTouched()}}var n;return n=e,Object.defineProperty(e.prototype,"orientation",{get:function(){return this._orientation},set:function(e){this._orientation=e||t["ɵn"].horizontal},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"mode",{get:function(){return this._mode},set:function(e){this._mode=e||t["ɵbf"].single},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"features",{get:function(){return this._features},set:function(t){this._features=t||[]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"width",{set:function(e){this._width=e||t["ɵv"].default},enumerable:!0,configurable:!0}),e.prototype.writeValue=function(e){if(this.mode===t["ɵbf"].multiple&&!e)throw new Error("Wrong value form multiple select mode");this.selected=this.mode===t["ɵbf"].single?e?[e]:[]:e},e.prototype.setDisabledState=function(t){this.disabled=t},e.prototype.select=function(e){switch(this.mode){case t["ɵbf"].single:var n=this.selected.length>0?this.selected[0]:null;if(null!==n){var o=this.keyField?n[this.keyField]===e[this.keyField]:de(n,e);if(o&&!this.features.includes(t["ɵx"].allowEmpty))return;this.selected=o||null===e?[]:[e],this.onChange(o?null:e),this.updated.emit(o?null:e)}else this.selected=null===e?[]:[e],this.onChange(e),this.updated.emit(e);this.version++;break;case t["ɵbf"].multiple:var i=this.keyField?this.selected.indexOf(e[this.keyField]):this.selected.findIndex((function(t){return de(t,e)}));-1!==i?this.selected.splice(i,1):this.selected.push(e),this.version++,this.onChange(this.selected),this.updated.emit(this.selected)}},e.prototype.selectAll=function(){var t=this;this.options.forEach((function(e){return t.selected.push(e.value)})),this.version++,this.onChange(this.selected),this.updated.emit(this.selected)},e.ctorParameters=function(){return[{type:a.NGXLogger},{type:We},{type:Ye}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-width"),G("design:type",String)],e.prototype,"_width",void 0),q([Zt({description:"Switcher orientation ",path:"ui.orientation",default:t["ɵn"].horizontal,options:[t["ɵn"].horizontal,t["ɵn"].vertical]}),i.HostBinding("attr.data-orientation"),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"orientation",null),q([Zt({description:"Set disabled state",type:"boolean",default:"false"}),i.HostBinding("attr.data-disabled"),i.Input(),G("design:type",Object)],e.prototype,"disabled",void 0),q([Zt({description:"Select key field",type:"string",default:"key"}),i.Input(),G("design:type",String)],e.prototype,"keyField",void 0),q([i.HostBinding("attr.data-mode"),G("design:type",String)],e.prototype,"_mode",void 0),q([Zt({description:"Switcher mode",path:"ui.select.mode",default:t["ɵbf"].single,options:[t["ɵbf"].single,t["ɵbf"].multiple]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"mode",null),q([Zt({description:"Add badge with the number of selected items; Select all item in switcher; Allow empty value in switcher; Adapted on mobile; Display marks",path:"ui.feature",default:"[ui.feature.adapted]",options:[t["ɵx"].badge,t["ɵx"].selectAll,t["ɵx"].allowEmpty,t["ɵx"].adapted,t["ɵx"].marks]}),i.Input(),G("design:type",Array),G("design:paramtypes",[Array])],e.prototype,"features",null),q([Zt({description:"Display skeleton",type:"count: number"}),i.Input(),G("design:type",Object)],e.prototype,"capacity",void 0),q([Zt({description:"Loading",type:"boolean",default:"false"}),i.Input(),G("design:type",Object)],e.prototype,"loading",void 0),q([Zt({description:"Input width",path:"ui.width",default:t["ɵv"].default,options:[t["ɵv"].default,t["ɵv"].fluid]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"width",null),q([Zt({description:"Selected value",type:"(selected)="}),i.Output("selected"),G("design:type",Object)],e.prototype,"updated",void 0),q([i.ContentChildren(Cr),G("design:type",i.QueryList)],e.prototype,"options",void 0),q([i.HostListener("blur"),G("design:type",Object)],e.prototype,"onBlur",void 0),e=n=q([i.Component({selector:"jnt-switcher",template:'<ng-template #optionDefaultTemplate\n             let-icon="option.icon"\n             let-dot="option.dot"\n             let-badge="option.badge"\n             let-label="option.label"\n             let-selected="selected">\n  <jnt-dot child-of="jnt-switcher-host" *ngIf="dot" [color]="dot.color"></jnt-dot>\n  <jnt-icon child-of="jnt-switcher-host" *ngIf="icon" data-icon [icon]="icon"></jnt-icon>\n\n  <div child-of="jnt-switcher-host" data-switch *ngIf="!!features && features.includes(ui.feature.marks)"\n       [attr.data-single]="mode === ui.select.mode.single">\n    <span child-of="jnt-switcher-host" data-indicator *ngIf="selected"></span>\n  </div>\n\n  <jnt-stack child-of="jnt-switcher-host" *ngIf="label || badge" [orientation]="ui.orientation.horizontal"\n             [justify]="ui.justify.between"\n             [align]="ui.align.center"\n             [gutter]="ui.gutter.small"\n             data-title>\n    <div child-of="jnt-switcher-host" data-label *ngIf="label">{{label}}</div>\n    <jnt-badge child-of="jnt-switcher-host" *ngIf="badge"\n               [position]="ui.position.inline"\n               [color]="badge.color"\n               [text]="badge.text"\n               [value]="badge.value"\n               [overflow]="badge.overflow">\n    </jnt-badge>\n  </jnt-stack>\n</ng-template>\n\n<div child-of="jnt-switcher-host" data-switcher>\n  <div child-of="jnt-switcher-host" data-scroll [attr.data-windows]="device.platform.windows">\n    <jnt-stack child-of="jnt-switcher-host" data-options\n               [orientation]="breakpoint.current === ui.breakpoint.mobile && (features | includes : ui.feature.adapted) ?\n                              ui.orientation.vertical : orientation"\n               [gutter]="ui.gutter.none"\n               [align]="ui.align.stretch">\n      <ng-container *ngIf="!loading; else loadingTemplate">\n        <ng-container *ngFor="let option of options">\n          <ng-container *ngIf="!!option.optionTemplate;else defaultOptionTemplate">\n            <div child-of="jnt-switcher-host" data-option data-custom-option tabindex="0"\n                 [attr.data-selected]="option.value | check:selected:keyField:version"\n                 [attr.data-disabled]="option.disabled"\n                 (click)="select(option.value)">\n              <ng-container *ngTemplateOutlet="option.optionTemplate; context: {selected: option.value | check:selected:keyField:version }"></ng-container>\n            </div>\n          </ng-container>\n          <ng-template #defaultOptionTemplate>\n            <jnt-stack child-of="jnt-switcher-host" data-option tabindex="0"\n                       [orientation]="ui.orientation.horizontal"\n                       [align]="ui.align.center"\n                       [gutter]="ui.gutter.small"\n                       [attr.data-selected]="option.value | check:selected:keyField:version"\n                       [attr.data-disabled]="option.disabled"\n                       (click)="select(option.value)">\n              <ng-container *ngTemplateOutlet="optionDefaultTemplate; context: {option: option, mode: mode, selected: option.value | check:selected:keyField:version }">\n              </ng-container>\n            </jnt-stack>\n          </ng-template>\n        </ng-container>\n      </ng-container>\n    </jnt-stack>\n  </div>\n</div>\n\n<jnt-badge child-of="jnt-switcher-host" data-count\n           *ngIf="!!features && features.includes(ui.feature.badge) && mode === ui.select.mode.multiple && selected.length > 0"\n           [color]="ui.color.green"\n           [value]="selected.length"></jnt-badge>\n\n<jnt-button child-of="jnt-switcher-host" data-button\n            *ngIf="!!features && features.includes(ui.feature.selectAll) && mode === ui.select.mode.multiple"\n            [text]="\'action.select_all\' | translate"\n            [outline]="ui.outline.transparent"\n            [size]="ui.size.tiny"\n            [scheme]="ui.scheme.secondary"\n            (click)="selectAll()"></jnt-button>\n\n<ng-template #loadingTemplate>\n  <div child-of="jnt-switcher-host" data-placeholder *ngFor="let line of capacity | mockArray"></div>\n</ng-template>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return n})),multi:!0}]}),G("design:paramtypes",[a.NGXLogger,We,Ye])],e)}(),Or=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Yn,ji,qe,Gn,Kn,we,Xn,R.TranslateModule],declarations:[Tr,Cr,wr],entryComponents:[Tr,Cr],exports:[Tr,Cr]})],t)}(),Ir=function(){function t(){}return t=q([i.NgModule({exports:[Xn,dr,Di,vr,Ji,Eo,Vi,Do,Wi,Or,kr,ir,sr,Bi]})],t)}(),Sr=function(){function t(t,e){this.logger=t,this.cd=e,this.host="jnt-app-header-host",this.ui=Yt,this.reference={popover:null}}return t.prototype.hide=function(){this.logger.debug("hide header dropdown"),this.reference.popover&&(this.reference.popover.hide(),this.reference.popover=null)},t.ctorParameters=function(){return[{type:a.NGXLogger},{type:i.ChangeDetectorRef}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([ee({selector:"#headerLogoTemplate",description:"Logo template"}),i.ContentChild("headerLogoTemplate"),G("design:type",i.TemplateRef)],t.prototype,"headerLogoTemplate",void 0),q([ee({selector:"#headerContentTemplate",description:"Header content template"}),i.ContentChild("headerContentTemplate"),G("design:type",i.TemplateRef)],t.prototype,"contentTemplate",void 0),q([i.ContentChild("headerTopMenu"),G("design:type",xo)],t.prototype,"menu",void 0),q([ee({selector:"#headerUserbarTemplate",description:"Userbar template"}),i.ContentChild("headerUserbarTemplate"),G("design:type",i.TemplateRef)],t.prototype,"headerUserbarTemplate",void 0),q([ee({selector:"#headerActionsTemplate",description:"Actions template"}),i.ContentChild("headerActionsTemplate"),G("design:type",i.TemplateRef)],t.prototype,"headerActionsTemplate",void 0),t=q([i.Component({selector:"jnt-app-header",template:'<ng-template #menuTemplate let-menu="menu" let-orientation="orientation" let-spacing="spacing">\n  <div child-of="jnt-app-header-host" data-menu *ngIf="!!menu">\n    <jnt-menu child-of="jnt-app-header-host" [orientation]="orientation"\n              [spacing]="spacing"\n              (selected)="hide()">\n      <jnt-menu-item child-of="jnt-app-header-host" *ngFor="let item of menu.items"\n                     [title]="item.title"\n                     [icon]="item.icon"\n                     [loading]="item.loading"\n                     [matching]="item.matching"\n                     [target]="item.target"\n                     [disabled]="item.disabled"\n                     [link]="item.link">\n        <jnt-badge child-of="jnt-app-header-host" *ngFor="let badge of item.badges"\n                   [value]="badge.value"\n                   [text]="badge.text"\n                   [position]="ui.position.inline"\n                   [color]="badge.color"></jnt-badge>\n      </jnt-menu-item>\n    </jnt-menu>\n  </div>\n</ng-template>\n\n<ng-container *jntMinFor="ui.breakpoint.desktop">\n  <div child-of="jnt-app-header-host" data-logo data-desktop *ngIf="headerLogoTemplate">\n    <ng-container *ngTemplateOutlet="headerLogoTemplate"></ng-container>\n  </div>\n\n  <ng-container *ngTemplateOutlet="menuTemplate;\n    context: {menu: menu, orientation: ui.orientation.horizontal, spacing: ui.gutter.normal}">\n  </ng-container>\n\n  <jnt-stack child-of="jnt-app-header-host" data-actions\n             [orientation]="ui.orientation.horizontal"\n             [gutter]="ui.gutter.small"\n             [align]="ui.align.stretch">\n    <div child-of="jnt-app-header-host" data-content *ngIf="contentTemplate">\n      <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\n    </div>\n    <ng-container *ngTemplateOutlet="headerActionsTemplate"></ng-container>\n    <ng-container *ngTemplateOutlet="headerUserbarTemplate"></ng-container>\n  </jnt-stack>\n</ng-container>\n\n<ng-container *jntMaxFor="ui.breakpoint.tablet">\n  <div child-of="jnt-app-header-host" data-logo data-tablet *ngIf="headerLogoTemplate">\n    <ng-container *ngTemplateOutlet="headerLogoTemplate"></ng-container>\n  </div>\n  <jnt-stack child-of="jnt-app-header-host" data-actions\n             [orientation]="ui.orientation.horizontal"\n             [gutter]="ui.gutter.small"\n             [align]="ui.align.stretch">\n    <ng-container *ngTemplateOutlet="headerActionsTemplate"></ng-container>\n    <jnt-button child-of="jnt-app-header-host" data-burger\n                *ngIf="!!headerUserbarTemplate || !!contentTemplate || !!menu"\n                [icon]="!!reference.popover ? ui.icons.cancel : ui.icons.menu"\n                [outline]="ui.outline.transparent"\n                [jntPopover]="{\n                  contentTemplate: dropdownTemplate,\n                  trigger: ui.trigger.click,\n                  placement: ui.placement.fixed\n                }"\n                (attached)="reference.popover = $event; cd.detectChanges()"\n                (removed)="reference.popover = null; cd.detectChanges()">\n    </jnt-button>\n    <ng-template #dropdownTemplate>\n      <jnt-stack child-of="jnt-app-header-host" [align]="ui.align.stretch" [gutter]="ui.gutter.small">\n        <ng-container *ngIf="!!headerUserbarTemplate">\n          <ng-container *ngTemplateOutlet="headerUserbarTemplate;\n            context: {hide: this.hide.bind(this)}">\n          </ng-container>\n          <hr child-of="jnt-app-header-host" *ngIf="!!menu || !!contentTemplate"  />\n        </ng-container>\n        <ng-container *ngTemplateOutlet="menuTemplate;\n          context: {menu: menu, orientation: ui.orientation.vertical, spacing: ui.gutter.small}">\n        </ng-container>\n        <div child-of="jnt-app-header-host" data-content *ngIf="!!contentTemplate">\n          <ng-container *ngTemplateOutlet="contentTemplate;\n            context: {hide: this.hide.bind(this)}">\n          </ng-container>\n        </div>\n      </jnt-stack>\n    </ng-template>\n  </jnt-stack>\n</ng-container>'}),G("design:paramtypes",[a.NGXLogger,i.ChangeDetectorRef])],t)}(),xr=function(){function e(){this.host="jnt-app-layout-host",this.position=t["ɵbe"].default}return Object.defineProperty(e.prototype,"withHeader",{get:function(){return!!this.header},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([ee({selector:"<jnt-app-header",description:"Header of application"}),i.ContentChild(Sr),G("design:type",Sr)],e.prototype,"header",void 0),q([i.HostBinding("attr.data-with-header"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"withHeader",null),q([i.HostBinding("attr.data-position"),i.Input(),G("design:type",String)],e.prototype,"position",void 0),e=q([i.Component({selector:"jnt-app-layout",template:"<ng-content></ng-content>"})],e)}(),Mr=function(){function e(t,e){this.breakpoint=t,this.device=e,this.host="jnt-app-aside-host",this.ui=Yt,this.opened=!1}return Object.defineProperty(e.prototype,"collapsed",{get:function(){return this._collapsed},set:function(e){this._collapsed=this.breakpoint.current!==t.Breakpoint.mobile&&(e||!1),localStorage.setItem("aside_collapsed",JSON.stringify(e))},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.collapsed=JSON.parse(localStorage.getItem("aside_collapsed"))},e.prototype.toggle=function(){this.opened=!this.opened},e.ctorParameters=function(){return[{type:We},{type:Ye}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.Input(),G("design:type",Boolean),G("design:paramtypes",[Boolean])],e.prototype,"collapsed",null),q([ee({selector:"#asideContentTemplate",description:"Aside content template"}),i.ContentChild("asideContentTemplate",{static:!1}),G("design:type",i.TemplateRef)],e.prototype,"contentTemplate",void 0),q([i.ContentChild(xo,{static:!1}),G("design:type",xo)],e.prototype,"menu",void 0),q([i.HostBinding("attr.data-opened"),i.Input(),G("design:type",Object)],e.prototype,"opened",void 0),e=q([i.Component({selector:"jnt-app-aside",template:'<div child-of="jnt-app-aside-host" data-drawer [attr.data-collapsed]="collapsed\n  && breakpoint.current !== ui.breakpoint.mobile">\n  <jnt-button child-of="jnt-app-aside-host" *jntFor="ui.breakpoint.mobile"\n              [scheme]="ui.scheme.secondary"\n              [icon]="ui.icons.menu"\n              (click)="toggle()" data-burger>\n  </jnt-button>\n\n  <div child-of="jnt-app-aside-host" data-scroll [attr.data-windows]="device.platform.windows">\n    <button child-of="jnt-app-aside-host" (click)="collapsed = !collapsed">\n      <jnt-stack child-of="jnt-app-aside-host" [orientation]="ui.orientation.horizontal" [align]="ui.align.center">\n        <jnt-icon child-of="jnt-app-aside-host" data-icon [icon]="collapsed ? ui.icons.doubleChevronRight: ui.icons.doubleChevronLeft"></jnt-icon>\n        <span child-of="jnt-app-aside-host" *ngIf="!collapsed">{{\'action.hide_sidebar\' | translate}}</span>\n      </jnt-stack>\n    </button>\n    <jnt-stack child-of="jnt-app-aside-host" [align]="ui.align.stretch">\n      <ng-container *ngIf="!!contentTemplate">\n        <ng-container *ngTemplateOutlet="contentTemplate;\n        context: {\n          collapsed: collapsed && breakpoint.current !== ui.breakpoint.mobile,\n          toggle: toggle.bind(this)\n        }">\n        </ng-container>\n      </ng-container>\n      <jnt-menu child-of="jnt-app-aside-host" data-menu *ngIf="!!menu"\n                context="popover-aside-sub-menu"\n                [orientation]="ui.orientation.vertical"\n                [collapsed]="collapsed && breakpoint.current !== ui.breakpoint.mobile"\n                [placement]="ui.placement.fixed"\n                [spacing]="menu.spacing"\n                (selected)="toggle()">\n        <jnt-menu-item child-of="jnt-app-aside-host" *ngFor="let i of menu.items"\n                       [title]="i.title"\n                       [disabled]="i.disabled"\n                       [link]="i.link"\n                       [icon]="i.icon">\n          <jnt-badge child-of="jnt-app-aside-host" *ngFor="let badge of i.badges"\n                     [value]="badge.value"\n                     [text]="badge.text"\n                     [position]="ui.position.inline"\n                     [color]="badge.color">\n          </jnt-badge>\n          <jnt-sub-menu child-of="jnt-app-aside-host" *ngIf="!!i.submenu">\n            <jnt-sub-menu-item child-of="jnt-app-aside-host" *ngFor="let j of i?.submenu.items"\n                               [title]="j.title"\n                               [disabled]="j.disabled"\n                               [link]="j.link"\n                               [icon]="j.icon">\n              <jnt-badge child-of="jnt-app-aside-host" *ngFor="let badge of j.badges"\n                         [value]="badge.value"\n                         [text]="badge.text"\n                         [position]="ui.position.inline"\n                         [color]="badge.color">\n              </jnt-badge>\n            </jnt-sub-menu-item>\n          </jnt-sub-menu>\n        </jnt-menu-item>\n      </jnt-menu>\n    </jnt-stack>\n  </div>\n</div>\n<div child-of="jnt-app-aside-host" data-overlay (click)="opened = false"></div>',providers:U(Yo)}),G("design:paramtypes",[We,Ye])],e)}(),Pr=function(){function t(){this.host="jnt-app-body-host"}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),t=q([i.Component({selector:"jnt-app-body",template:"<ng-content></ng-content>"})],t)}(),_r=function(){function t(t){var e=this;this.ui=Yt,this.host="jnt-app-busyness-host",this.loading=!1,t.events.subscribe((function(t){t instanceof A.NavigationStart&&(e.loading=!0),(t instanceof A.NavigationEnd||t instanceof A.NavigationCancel||t instanceof A.NavigationError)&&(e.loading=!1)}))}return Object.defineProperty(t.prototype,"style",{get:function(){return this.loading?"flex":"none"},enumerable:!0,configurable:!0}),t.ctorParameters=function(){return[{type:A.Router}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.HostBinding("style.display"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"style",null),t=q([i.Component({selector:"jnt-app-busyness",template:'<jnt-spinner child-of="jnt-app-busyness-host" *jntFor="ui.breakpoint.mobile" [size]="ui.size.large"></jnt-spinner>\n<div child-of="jnt-app-busyness-host" data-loader *jntMinFor="ui.breakpoint.tablet"></div>'}),G("design:paramtypes",[A.Router])],t)}(),Br=function(t){void 0===t&&(t=null),this.title=null,this.disabled=!1,this.url=".",Object.assign(this,t)},zr=function(){function t(t,e,n){this.router=t,this.titleService=e,this.metaService=n,this.ui=Yt,this.routerState$=new s.BehaviorSubject(this.router.routerState),this.subscriptions=[],this.breadcrumbs=[],this.host="jnt-breadcrumbs-host"}return Object.defineProperty(t.prototype,"withAside",{get:function(){return!!this.aside},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){var t=this;this.subscriptions.push(this.router.events.pipe(p.filter((function(t){return t instanceof A.NavigationEnd}))).subscribe((function(){return t.routerState$.next(t.router.routerState)}))),this.routerState$.pipe(p.filter((function(t){return!!t}))).subscribe((function(e){return t.build(e.root)}))},t.prototype.ngOnDestroy=function(){this.subscriptions.forEach((function(t){return t.unsubscribe()}))},t.prototype.build=function(t){for(var e=t,n=[];e;){if(e.routeConfig&&e.routeConfig.data&&e.routeConfig.data.breadcrumb){var o=e.routeConfig.data.breadcrumb;(Array.isArray(o)?o:[o]).filter((function(t){return!!t})).forEach((function(t){switch(typeof t){case"string":n.push(new Br({route:e,title:t}));break;case"object":(o="string"==typeof t.label?t.label:t.label(e.snapshot.data))&&n.push(new Br({route:e,title:o,url:t.url,disabled:t.disabled}));break;case"function":var o;(o=t(e.snapshot.data))&&n.push(new Br({route:e,title:o}));break;default:throw new Error("wrong breadcrump type")}}))}e=e.firstChild}this.breadcrumbs=n;var i=this.breadcrumbs.map((function(t){return t.title})).join(" · ");this.titleService.setTitle(i),this.metaService.updateTag({name:"description",content:i})},t.ctorParameters=function(){return[{type:A.Router},{type:l.Title},{type:l.Meta}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.HostBinding("attr.data-with-aside"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"withAside",null),q([Zt({description:"Support burger button for mobile devices",type:"AppAsideComponent"}),i.Input(),G("design:type",Mr)],t.prototype,"aside",void 0),t=q([i.Component({selector:"jnt-breadcrumb",template:'<jnt-stack child-of="jnt-breadcrumbs-host" *ngIf="breadcrumbs.length > 1"\n           [orientation]="ui.orientation.horizontal"\n           [gutter]="ui.gutter.small"\n           [spacing]="ui.gutter.tiny"\n           [wrap]="ui.wrap.wrap"\n           [align]="ui.align.center">\n  <ng-container *ngFor="let crumb of breadcrumbs">\n    <a child-of="jnt-breadcrumbs-host" (click)="router.navigate([crumb.url], {relativeTo: crumb.route})"\n       href="javascript:;"\n       [attr.data-disabled]="crumb.disabled">\n      {{crumb.title}}\n    </a>\n    <jnt-icon child-of="jnt-breadcrumbs-host" [icon]="ui.icons.chevronRight"></jnt-icon>\n  </ng-container>\n</jnt-stack>'}),G("design:paramtypes",[A.Router,l.Title,l.Meta])],t)}(),Hr=function(){function t(){this.host="jnt-app-footer-host"}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),t=q([i.Component({selector:"jnt-app-footer",template:"<ng-content></ng-content>"})],t)}(),Er=function(){function e(t,e){this.device=t,this.breakpoint=e,this.host="jnt-app-content-host"}return Object.defineProperty(e.prototype,"withAside",{get:function(){return this.breakpoint.current===t.Breakpoint.mobile?!!this.aside:this.aside?this.aside.collapsed?"collapsed":"full":null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"withFooter",{get:function(){return!!this.footer},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"withBreadcrumbs",{get:function(){return!!this.breadcrumbs},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"windows",{get:function(){return this.device.platform.windows},enumerable:!0,configurable:!0}),e.ctorParameters=function(){return[{type:Ye},{type:We}]},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-with-aside"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"withAside",null),q([i.HostBinding("attr.data-with-footer"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"withFooter",null),q([i.HostBinding("attr.data-with-breadcrumbs"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"withBreadcrumbs",null),q([i.HostBinding("attr.data-windows"),G("design:type",Object),G("design:paramtypes",[])],e.prototype,"windows",null),q([i.ContentChild(Hr,{read:i.ElementRef,static:!0}),G("design:type",Hr)],e.prototype,"footer",void 0),q([i.ContentChild(zr),G("design:type",zr)],e.prototype,"breadcrumbs",void 0),q([Zt({description:"Support padding for aside",type:"AppAsideComponent"}),i.Input(),G("design:type",Mr)],e.prototype,"aside",void 0),e=q([i.Component({selector:"jnt-app-content",template:"<ng-content></ng-content>"}),G("design:paramtypes",[Ye,We])],e)}(),Fr=function(){function t(){this.host="jnt-app-header-action-host",this.ui=Yt}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([ee({selector:"#actionLabelTemplate",description:"Action label template"}),i.ContentChild("actionLabelTemplate"),G("design:type",i.TemplateRef)],t.prototype,"actionLabelTemplate",void 0),q([ee({selector:"#actionContentTemplate",description:"Action content template"}),i.ContentChild("actionContentTemplate"),G("design:type",i.TemplateRef)],t.prototype,"actionContentTemplate",void 0),t=q([i.Component({selector:"jnt-app-header-action",template:'<div child-of="jnt-app-header-action-host" data-label\n     [jntPopover]="{\n       contentTemplate: actionContent,\n       trigger: ui.trigger.hover,\n       placement: ui.placement.fixed,\n       maxHeight: \'500px\',\n       minWidth: \'200px\'\n     }">\n  <ng-container *ngTemplateOutlet="actionLabelTemplate"></ng-container>\n</div>\n\n<ng-template #actionContent>\n  <ng-container *ngTemplateOutlet="actionContentTemplate"></ng-container>\n</ng-template>'})],t)}(),Rr=function(){function e(){this._gutter=t["ɵo"].tiny,this.ui=Yt,this.host="jnt-app-header-actions-host"}return Object.defineProperty(e.prototype,"gutter",{get:function(){return this._gutter},set:function(e){this._gutter=e||t["ɵo"].tiny},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Elements gutter",path:"ui.gutter",default:t["ɵo"].tiny,options:[t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].large,t["ɵo"].big,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"gutter",null),q([i.ContentChildren(Fr),G("design:type",i.QueryList)],e.prototype,"actions",void 0),e=q([i.Component({selector:"jnt-app-header-actions",template:'<jnt-stack child-of="jnt-app-header-actions-host" [orientation]="ui.orientation.horizontal"\n           [gutter]="gutter" [align]="ui.align.center">\n  <ng-container *ngFor="let action of actions">\n    <jnt-app-header-action child-of="jnt-app-header-actions-host" >\n      <ng-template #actionLabelTemplate>\n        <ng-container *ngTemplateOutlet="action.actionLabelTemplate"></ng-container>\n      </ng-template>\n      <ng-template #actionContentTemplate>\n        <ng-container *ngTemplateOutlet="action.actionContentTemplate"></ng-container>\n      </ng-template>\n    </jnt-app-header-action>\n  </ng-container>\n</jnt-stack>'})],e)}(),Ar=function(){function t(t,e,n){this.breakpoint=t,this.logger=e,this.cd=n,this.host="jnt-app-header-userbar-host",this.ui=Yt,this.reference={popover:null}}return t.prototype.hide=function(){this.logger.debug("hide userbar dropdown"),this.reference.popover&&(this.reference.popover.hide(),this.reference.popover=null)},t.ctorParameters=function(){return[{type:We},{type:a.NGXLogger},{type:i.ChangeDetectorRef}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([ee({selector:"#userbarAvatarTemplate",description:"Userbar avatar template"}),i.ContentChild("userbarAvatarTemplate"),G("design:type",i.TemplateRef)],t.prototype,"userbarAvatarTemplate",void 0),q([ee({selector:"#userbarMenuTemplate",description:"Userbar menu template"}),i.ContentChild("userbarMenuTemplate"),G("design:type",i.TemplateRef)],t.prototype,"userbarMenuTemplate",void 0),q([i.Input(),G("design:type",Object)],t.prototype,"context",void 0),q([te({description:"Hide userbar dropdown"}),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],t.prototype,"hide",null),t=q([i.Component({selector:"jnt-app-header-userbar",template:'<ng-template #content>\n  <jnt-stack child-of="jnt-app-header-userbar-host" [orientation]="ui.orientation.horizontal"\n             [align]="ui.align.center">\n    <ng-container *ngTemplateOutlet="userbarAvatarTemplate;context: {opened: !!reference.popover}"></ng-container>\n    <ng-content></ng-content>\n  </jnt-stack>\n</ng-template>\n\n<ng-container *jntMinFor="ui.breakpoint.desktop">\n  <jnt-stack child-of="jnt-app-header-userbar-host" data-user\n             [jntPopover]="{\n               contentTemplate: userMenuDropdownTemplate,\n               trigger: ui.trigger.hover,\n               placement: ui.placement.fixed,\n               position: ui.position.rightBottom,\n               padding: ui.gutter.small,\n               minWidth: \'200px\',\n               context: \'app-header-userbar-menu\'\n             }"\n             (attached)="reference.popover = $event; cd.detectChanges()"\n             (removed)="reference.popover = null; cd.detectChanges()"\n             [orientation]="ui.orientation.horizontal"\n             [align]="ui.align.center">\n    <ng-container *ngTemplateOutlet="content"></ng-container>\n  </jnt-stack>\n\n  <ng-template #userMenuDropdownTemplate>\n    <div child-of="jnt-app-header-userbar-host" data-content>\n      <ng-container *ngTemplateOutlet="userbarMenuTemplate;context: {hide: hide.bind(this)}"></ng-container>\n    </div>\n  </ng-template>\n</ng-container>\n\n<ng-container *jntMaxFor="ui.breakpoint.tablet">\n  <jnt-stack child-of="jnt-app-header-userbar-host" [align]="ui.align.stretch">\n    <ng-container *ngTemplateOutlet="content"></ng-container>\n    <ng-container *ngTemplateOutlet="userbarMenuTemplate;context: {hide: context?.header.hide}"></ng-container>\n  </jnt-stack>\n</ng-container>'}),G("design:paramtypes",[We,a.NGXLogger,i.ChangeDetectorRef])],t)}(),Lr=function(){function t(){this.host="jnt-app-page-header-host",this.ui=Yt}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([Zt({description:"Icon for page header",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"icon",void 0),q([Zt({description:"Title for page header",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"title",void 0),q([Zt({description:"Teaser for page header",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"teaser",void 0),q([ee({selector:"#headerActionsTemplate",description:"Actions template"}),i.ContentChild("headerActionsTemplate"),G("design:type",i.TemplateRef)],t.prototype,"headerActionsTemplate",void 0),t=q([i.Component({selector:"jnt-app-page-header",template:'<jnt-stack child-of="jnt-app-page-header-host" [orientation]="ui.orientation.horizontal"\n           [align]="ui.align.center">\n  <div child-of="jnt-app-page-header-host" data-thumbnail *ngIf="!!icon">\n    <jnt-icon child-of="jnt-app-page-header-host" data-icon [icon]="icon"></jnt-icon>\n  </div>\n  <jnt-stack child-of="jnt-app-page-header-host" [gutter]="ui.gutter.none">\n    <div child-of="jnt-app-page-header-host" data-title>{{title}}</div>\n    <div child-of="jnt-app-page-header-host" data-teaser *ngIf="!!teaser">{{teaser}}</div>\n  </jnt-stack>\n\n  <jnt-stack child-of="jnt-app-page-header-host" data-actions\n             [orientation]="ui.orientation.horizontal"\n             [gutter]="ui.gutter.small"\n             [align]="ui.align.stretch">\n    <ng-container *ngTemplateOutlet="headerActionsTemplate"></ng-container>\n  </jnt-stack>\n\n</jnt-stack>'})],t)}(),Dr=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,R.TranslateModule,Gn,qe,Xn,Mo,an,ko,Yn,Ge],declarations:[xr,Sr,Fr,Rr,Ar,Mr,Pr,Er,Hr,_r,Lr],entryComponents:[xr,Sr,Rr,Fr,Er,_r],exports:[xr,Sr,Fr,Rr,Ar,Mr,Pr,Er,Hr,_r,Lr]})],t)}(),Nr=function(){function e(){this.host="jnt-collapsible-host",this.ui=Yt,this._orientation=t["ɵn"].horizontal,this.opened=!1}return Object.defineProperty(e.prototype,"orientation",{get:function(){return this._orientation},set:function(e){this._orientation=e||t["ɵn"].horizontal},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-orientation"),G("design:type",String)],e.prototype,"_orientation",void 0),q([Zt({description:"Collapsible orientation",path:"ui.orientation",default:t["ɵn"].horizontal,options:[t["ɵn"].horizontal,t["ɵn"].vertical]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"orientation",null),q([Zt({description:"opened of collapsible",type:"boolean",default:"false"}),i.Input(),G("design:type",Object)],e.prototype,"opened",void 0),q([Zt({description:"icon of collapsible",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"icon",void 0),q([Zt({description:"Title of collapsible",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([ee({selector:"#collapsibleTitleTemplate",description:"collapsible title template"}),i.ContentChild("collapsibleTitleTemplate"),G("design:type",i.TemplateRef)],e.prototype,"titleTemplate",void 0),q([ee({selector:"#collapsibleContentTemplate",description:"collapsible content template"}),i.ContentChild("collapsibleContentTemplate"),G("design:type",i.TemplateRef)],e.prototype,"contentTemplate",void 0),e=q([i.Component({selector:"jnt-collapsible",template:'<ng-template #defaultTitleTemplate>\n    <jnt-stack child-of="jnt-collapsible-host" [orientation]="orientation === ui.orientation.vertical ? ui.orientation.vertical : ui.orientation.horizontal"\n               [gutter]="ui.gutter.small"\n               [align]="ui.align.center">\n        <jnt-icon child-of="jnt-collapsible-host" *ngIf="!!icon" [icon]="icon"></jnt-icon>\n        <span child-of="jnt-collapsible-host" >{{title}}</span>\n    </jnt-stack>\n</ng-template>\n\n<jnt-stack child-of="jnt-collapsible-host" data-title tabindex="0"\n           [attr.active]="opened"\n           [orientation]="ui.orientation.horizontal"\n           [align]="ui.align.center"\n           [justify]="ui.justify.between"\n           (click)="opened = !opened">\n    <ng-container *ngTemplateOutlet="!!titleTemplate ? titleTemplate : defaultTitleTemplate"></ng-container>\n    <jnt-icon child-of="jnt-collapsible-host" *ngIf="orientation === ui.orientation.horizontal" [icon]="opened ? ui.icons.chevronUp : ui.icons.chevronDown"></jnt-icon>\n</jnt-stack>\n\n<div child-of="jnt-collapsible-host" data-content *ngIf="opened">\n    <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\n</div>'})],e)}(),qr=function(){function t(){}return t=q([i.NgModule({declarations:[Nr],imports:[o.CommonModule,qe,Xn,Gn],exports:[Nr]})],t)}(),Vr=function(){function t(){}return q([i.Input(),G("design:type",String)],t.prototype,"message",void 0),t=q([i.Component({selector:"jnt-informer-message",template:""})],t)}(),Gr=function(){function e(e){this.render=e,this.ui=Yt,this._placement=t["ɵbe"].fixed,this.host="jnt-informer-host",this.icon=Yt.icons.information,this.ok=new i.EventEmitter}return Object.defineProperty(e.prototype,"placement",{set:function(e){this._placement=e||t["ɵbe"].fixed},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outer",{set:function(t){this._outer=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"backdrop",{get:function(){return this._backdrop},set:function(t){t&&(this._backdrop=t,this.render.setStyle(t.nativeElement,"filter","blur(5px)"))},enumerable:!0,configurable:!0}),e.prototype.ngOnDestroy=function(){this.backdrop&&this.render.removeStyle(this.backdrop.nativeElement,"filter")},e.ctorParameters=function(){return[{type:i.Renderer2}]},q([i.HostBinding("attr.data-outer"),G("design:type",String)],e.prototype,"_outer",void 0),q([i.HostBinding("attr.data-placement"),G("design:type",String)],e.prototype,"_placement",void 0),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([Zt({description:"Informer placement",path:"ui.placement",default:t["ɵbe"].fixed,options:[t["ɵbe"].absolute,t["ɵbe"].fixed]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"placement",null),q([Zt({description:"Negative margin for informer",path:"ui.gutter",options:[t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].big,t["ɵo"].large,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"outer",null),q([Zt({description:"Informer parent container",path:"ui.context",options:[t["ɵbs"].block]}),i.HostBinding("attr.data-context"),i.Input(),G("design:type",String)],e.prototype,"context",void 0),q([Zt({description:"Icon of informer",type:"UI.icons.information"}),i.Input(),G("design:type",Object)],e.prototype,"icon",void 0),q([Zt({description:"Backdrop of informer",type:"ElementRef"}),i.Input(),G("design:type",i.ElementRef),G("design:paramtypes",[i.ElementRef])],e.prototype,"backdrop",null),q([i.ContentChildren(Vr,{descendants:!0}),G("design:type",i.QueryList)],e.prototype,"messages",void 0),q([ee({selector:"#informerContentTemplate",description:"Informer content template"}),i.ContentChild("informerContentTemplate"),G("design:type",i.TemplateRef)],e.prototype,"contentTemplate",void 0),q([i.Output(),G("design:type",Object)],e.prototype,"ok",void 0),e=q([i.Component({selector:"jnt-informer",template:'<ng-template #defaultTemplate>\n  <jnt-stack child-of="jnt-informer-host" [align]="ui.align.center"\n             [gutter]="ui.gutter.large">\n    <jnt-icon child-of="jnt-informer-host" [icon]="icon"></jnt-icon>\n    <jnt-stack child-of="jnt-informer-host" data-messages [attr.data-single]="messages.length === 1" [gutter]="ui.gutter.small">\n      <div child-of="jnt-informer-host" *ngFor="let m of messages">{{m.message}}</div>\n    </jnt-stack>\n\n    <jnt-button child-of="jnt-informer-host" [scheme]="ui.scheme.success"\n                (click)="ok.emit()" text="Ok"></jnt-button>\n  </jnt-stack>\n</ng-template>\n\n<ng-container *ngIf="!!contentTemplate; else defaultTemplate">\n  <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\n</ng-container>'}),G("design:paramtypes",[i.Renderer2])],e)}(),Wr=function(){function t(){}return t=q([i.NgModule({declarations:[Gr,Vr],imports:[o.CommonModule,qe,Gn,Xn],entryComponents:[Gr,Vr],exports:[Gr,Vr]})],t)}(),Yr=function(){function t(){this.host="jnt-lp-footer-host"}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),t=q([i.Component({selector:"jnt-lp-footer",template:"<ng-content></ng-content>"})],t)}(),Ur=function(){function t(t,e){this.logger=t,this.cd=e,this.host="jnt-lp-header-host",this.ui=Yt,this.reference={popover:null}}return t.prototype.hide=function(){this.logger.debug("hide header dropdown"),this.reference.popover&&(this.reference.popover.hide(),this.reference.popover=null)},t.ctorParameters=function(){return[{type:a.NGXLogger},{type:i.ChangeDetectorRef}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.ContentChild("headerLogoTemplate"),G("design:type",i.TemplateRef)],t.prototype,"headerLogoTemplate",void 0),q([i.ContentChild("contentTemplate"),G("design:type",i.TemplateRef)],t.prototype,"contentTemplate",void 0),q([i.ContentChild(xo),G("design:type",xo)],t.prototype,"menu",void 0),q([i.ContentChild("headerUserbarTemplate"),G("design:type",i.TemplateRef)],t.prototype,"headerUserbarTemplate",void 0),q([i.ContentChild("headerActionsTemplate"),G("design:type",i.TemplateRef)],t.prototype,"headerActionsTemplate",void 0),t=q([i.Component({selector:"jnt-lp-header",template:'<ng-template #menuTemplate let-menu="menu" let-orientation="orientation" let-spacing="spacing">\n  <div child-of="jnt-lp-header-host" data-menu *ngIf="!!menu">\n    <jnt-menu child-of="jnt-lp-header-host" [orientation]="orientation"\n              [spacing]="spacing">\n      <jnt-menu-item child-of="jnt-lp-header-host" *ngFor="let item of menu.items"\n                     [title]="item.title"\n                     [icon]="item.icon"\n                     [matching]="item.matching"\n                     [target]="item.target"\n                     [link]="item.link"\n                     [disabled]="item.disabled">\n      </jnt-menu-item>\n    </jnt-menu>\n  </div>\n</ng-template>\n\n<ng-container *jntMinFor="ui.breakpoint.desktop">\n  <jnt-container child-of="jnt-lp-header-host" data-container data-desktop>\n    <div child-of="jnt-lp-header-host" data-logo *ngIf="headerLogoTemplate">\n      <ng-container *ngTemplateOutlet="headerLogoTemplate"></ng-container>\n    </div>\n\n    <ng-container *ngTemplateOutlet="menuTemplate;\n      context:{menu: menu, orientation: ui.orientation.horizontal, spacing: ui.gutter.normal}">\n    </ng-container>\n\n    <jnt-stack child-of="jnt-lp-header-host" *ngIf="!!contentTemplate || !!headerActionsTemplate || !!headerUserbarTemplate"\n               data-actions\n               [orientation]="ui.orientation.horizontal"\n               [gutter]="ui.gutter.small"\n               [align]="ui.align.stretch">\n      <div child-of="jnt-lp-header-host" data-content *ngIf="contentTemplate">\n        <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\n      </div>\n      <ng-container *ngTemplateOutlet="headerActionsTemplate"></ng-container>\n      <ng-container *ngTemplateOutlet="headerUserbarTemplate"></ng-container>\n    </jnt-stack>\n  </jnt-container>\n</ng-container>\n\n<ng-container *jntMaxFor="ui.breakpoint.tablet">\n  <jnt-container child-of="jnt-lp-header-host" data-container data-tablet>\n    <div child-of="jnt-lp-header-host" data-logo *ngIf="headerLogoTemplate">\n      <ng-container *ngTemplateOutlet="headerLogoTemplate"></ng-container>\n    </div>\n    <jnt-stack child-of="jnt-lp-header-host" data-actions\n               [orientation]="ui.orientation.horizontal"\n               [gutter]="ui.gutter.small"\n               [align]="ui.align.stretch">\n      <ng-container *ngTemplateOutlet="headerActionsTemplate"></ng-container>\n      <jnt-button child-of="jnt-lp-header-host" data-burger\n                  [icon]="!!reference.popover ? ui.icons.cancel : ui.icons.menu"\n                  [outline]="ui.outline.transparent"\n                  [jntPopover]="{\n                    contentTemplate: dropdownTemplate,\n                    trigger: ui.trigger.click\n                  }"\n                  (attached)="reference.popover = $event; cd.detectChanges()"\n                  (removed)="reference.popover = null; cd.detectChanges()">\n      </jnt-button>\n      <ng-template #dropdownTemplate>\n        <jnt-stack child-of="jnt-lp-header-host" [align]="ui.align.stretch">\n          <ng-container *ngTemplateOutlet="headerUserbarTemplate;\n            context: {hide: this.hide.bind(this)}">\n          </ng-container>\n          <ng-container *ngTemplateOutlet="menuTemplate;\n            context: {menu: menu, orientation: ui.orientation.vertical, spacing: ui.gutter.small}">\n          </ng-container>\n          <div child-of="jnt-lp-header-host" data-content *ngIf="!!contentTemplate">\n            <ng-container *ngTemplateOutlet="contentTemplate;\n              context: {hide: this.hide.bind(this)}">\n            </ng-container>\n          </div>\n        </jnt-stack>\n      </ng-template>\n    </jnt-stack>\n  </jnt-container>\n</ng-container>'}),G("design:paramtypes",[a.NGXLogger,i.ChangeDetectorRef])],t)}(),$r=function(){function t(){this.host="jnt-lp-layout-host"}return Object.defineProperty(t.prototype,"withLpHeader",{get:function(){return!!this.lpHeader},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.ContentChild(Ur),G("design:type",Ur)],t.prototype,"lpHeader",void 0),q([i.HostBinding("attr.data-with-lp-header"),G("design:type",Object),G("design:paramtypes",[])],t.prototype,"withLpHeader",null),t=q([i.Component({selector:"jnt-lp-layout",template:"<ng-content></ng-content>"})],t)}(),Xr=function(){function t(t){this.scrollService=t,this.host="jnt-lp-rewind-host",this.ui=Yt}return t.prototype.scroll=function(t,e){var n=this;void 0===e&&(e=200);var o=this.scrollService.getScrollPosition()[1],i=20*Math.abs(t-o)/e;i=i<1?1:i,i=t>o?i:-i,this.interval=setInterval((function(){var e=o+i;(i>0&&e>=t||i<0&&e<=t)&&(e=t,clearInterval(n.interval),n.interval=null),o=e,n.scrollService.scrollToPosition([0,e])}),20)},t.prototype.up=function(){var t=document.documentElement.clientHeight,e=this.scrollService.getScrollPosition()[1],n=(Math.ceil(e/t)-1)*t;n>=0&&n!==e&&!this.interval&&this.scroll(n)},t.prototype.down=function(){var t=document.documentElement.clientHeight,e=this.scrollService.getScrollPosition()[1],n=(Math.floor(e/t)+1)*t;n<document.documentElement.offsetHeight&&n!==e&&!this.interval&&this.scroll(n)},t.ctorParameters=function(){return[{type:o.ViewportScroller}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),t=q([i.Component({selector:"jnt-lp-rewind",template:'<jnt-stack child-of="jnt-lp-rewind-host" >\n    <jnt-button child-of="jnt-lp-rewind-host" [icon]="ui.icons.arrowUp" [size]="ui.size.tiny" (click)="up()"></jnt-button>\n    <jnt-button child-of="jnt-lp-rewind-host" [icon]="ui.icons.arrowDown" [size]="ui.size.tiny" (click)="down()"></jnt-button>\n</jnt-stack>'}),G("design:paramtypes",[o.ViewportScroller])],t)}(),Qr=function(){function e(){this.host="jnt-lp-slide-host",this._height=t["ɵbo"].screen,this.slideHeight=document.documentElement.clientHeight}return Object.defineProperty(e.prototype,"height",{get:function(){return this._height},set:function(e){this._height=e||t["ɵbo"].screen},enumerable:!0,configurable:!0}),e.prototype.sizeChange=function(){this.slideHeight=document.documentElement.clientHeight},q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-height"),G("design:type",Object)],e.prototype,"_height",void 0),q([i.HostBinding("style.height.px"),G("design:type",Number)],e.prototype,"slideHeight",void 0),q([Zt({description:"Slide height",path:"ui.height",default:t["ɵbo"].screen,options:[t["ɵbo"].screen,t["ɵbo"].default]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"height",null),q([i.HostListener("window:resize"),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],e.prototype,"sizeChange",null),e=q([i.Component({selector:"jnt-lp-slide",template:"<ng-content></ng-content>"})],e)}(),Kr=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,a.LoggerModule,qe,Xn,Mo,an,Gn,Ri,ko],declarations:[$r,Xr,Qr,Ur,Yr],exports:[$r,Xr,Qr,Ur,Yr]})],t)}(),Jr=function(){function t(){}return t=q([i.NgModule({exports:[Ri,an,qe,gr,Kn,Ge,Dr,Kr,Wr,qr,Bo]})],t)}(),Zr=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Gn,qe],declarations:[zr],exports:[zr]})],t)}(),ta=function(){function e(){this._padding=t["ɵo"].normal,this.state={flash:!1}}return Object.defineProperty(e.prototype,"padding",{get:function(){return this._padding},set:function(e){this._padding=e||t["ɵo"].normal},enumerable:!0,configurable:!0}),e.prototype.flash=function(){var t=this;this.state.flash=!0,setTimeout((function(){return t.state.flash=!1}),700)},q([Zt({description:"Title of tab",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"title",void 0),q([Zt({description:"Icon for tab",type:"string"}),i.Input(),G("design:type",String)],e.prototype,"icon",void 0),q([Zt({description:"Padding in tab",path:"ui.gutter",default:t["ɵo"].normal,options:[t["ɵo"].none,t["ɵo"].tiny,t["ɵo"].small,t["ɵo"].normal,t["ɵo"].big,t["ɵo"].large,t["ɵo"].huge]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"padding",null),q([i.ContentChildren(Wn),G("design:type",i.QueryList)],e.prototype,"badges",void 0),q([i.ContentChild("tabContentTemplate"),G("design:type",i.TemplateRef)],e.prototype,"tabContentTemplate",void 0),e=q([i.Component({selector:"jnt-tab",template:""})],e)}(),ea=function(){function n(){this.ui=Yt,this._active=0,this.changed=new i.EventEmitter,this.host="jnt-tabs-host",this._outline=t["ɵu"].fill,this.features=[]}return Object.defineProperty(n.prototype,"active",{get:function(){return this._active},set:function(t){this._active=t,this.changed.emit(t)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"outline",{set:function(e){this._outline=e||t["ɵu"].fill},enumerable:!0,configurable:!0}),q([i.Input(),G("design:type",Number),G("design:paramtypes",[Number])],n.prototype,"active",null),q([i.Output(),G("design:type",Object)],n.prototype,"changed",void 0),q([i.HostBinding("attr.host"),G("design:type",Object)],n.prototype,"host",void 0),q([i.HostBinding("attr.data-outline"),G("design:type",String)],n.prototype,"_outline",void 0),q([Zt({description:"there is/no background for the content",path:"ui.outline",default:t["ɵu"].fill,options:[t["ɵu"].fill,t["ɵu"].transparent]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],n.prototype,"outline",null),q([Zt({description:"Adapted tabs on mobile view",path:"ui.feature",options:[t["ɵx"].adapted]}),i.HostBinding("attr.data-features"),i.Input(),G("design:type",Array)],n.prototype,"features",void 0),q([i.ContentChildren(ta),G("design:type",i.QueryList)],n.prototype,"tabs",void 0),n=q([i.Component({selector:"jnt-tabs",template:'<ng-template #tabTemplate let-tab="tab">\n  <jnt-stack child-of="jnt-tabs-host" data-label\n             [orientation]="ui.orientation.horizontal"\n             [gutter]="ui.gutter.small"\n             [align]="ui.align.center">\n    <jnt-icon child-of="jnt-tabs-host" *ngIf="tab.icon" [icon]="tab.icon"></jnt-icon>\n    <jnt-stack child-of="jnt-tabs-host" [orientation]="ui.orientation.horizontal"\n               [align]="ui.align.center">\n      <span child-of="jnt-tabs-host" >{{tab.title}}</span>\n      <jnt-stack child-of="jnt-tabs-host" *ngIf="tab.badges.length"\n                 [orientation]="ui.orientation.horizontal"\n                 [gutter]="ui.gutter.tiny"\n                 [align]="ui.align.center">\n        <jnt-badge child-of="jnt-tabs-host" data-badge *ngFor="let badge of tab.badges"\n                   [color]="badge.color"\n                   [text]="badge.text"\n                   [value]="badge.value"\n                   [position]="ui.position.inline">\n        </jnt-badge>\n      </jnt-stack>\n    </jnt-stack>\n  </jnt-stack>\n</ng-template>\n\n<jnt-stack child-of="jnt-tabs-host" data-tabs\n           [orientation]="ui.orientation.horizontal"\n           [wrap]="ui.wrap.wrap"\n           [spacing]="ui.gutter.small"\n           [gutter]="ui.gutter.none">\n  <a child-of="jnt-tabs-host" href="#" data-wrapper *ngFor="let tab of tabs;let i = index"\n       [attr.data-active]="i === active"\n       (click)="active = i; $event.preventDefault()">\n    <div child-of="jnt-tabs-host" data-tab>\n      <ng-container *ngIf="(!!features && !features.includes(ui.feature.adapted)) || !features; else adaptedTemplate">\n        <ng-container *ngTemplateOutlet="tabTemplate; context: {tab: tab}"></ng-container>\n      </ng-container>\n      <ng-template #adaptedTemplate>\n        <ng-container *jntMinFor="ui.breakpoint.tablet">\n          <ng-container *ngTemplateOutlet="tabTemplate; context: {tab: tab}"></ng-container>\n        </ng-container>\n        <ng-container *jntFor="ui.breakpoint.mobile">\n          <jnt-icon child-of="jnt-tabs-host" *ngIf="tab.icon" [icon]="tab.icon"></jnt-icon>\n        </ng-container>\n      </ng-template>\n      <div child-of="jnt-tabs-host" *ngIf="tab.state.flash" [@flash]="tab.state.flash" data-ripple></div>\n    </div>\n  </a>\n</jnt-stack>\n\n<ng-container *ngFor="let tab of tabs;let i = index">\n  <div child-of="jnt-tabs-host" data-content *ngIf="i === active && tab.tabContentTemplate"\n       [attr.data-padding]="tab.padding">\n    <ng-container *ngTemplateOutlet="tab.tabContentTemplate"></ng-container>\n  </div>\n</ng-container>',animations:[e.trigger("flash",[e.state("void",e.style({opacity:0})),e.state("*",e.style({opacity:1,width:"150%",height:"150%"})),e.transition("void => *",[e.animate(".4s ease-in-out")]),e.transition("* => void",[e.animate(".3s ease-in-out",e.keyframes([e.style({opacity:"0"})]))])])]})],n)}(),na=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,Gn,qe,Yn,an],declarations:[ea,ta],entryComponents:[ea,ta],exports:[ea,ta]})],t)}(),oa=function(){function t(){}return t=q([i.NgModule({exports:[Co,Zr,Mo,qo,na,go]})],t)}();!function(t){t.hidden="hidden",t.visible="visible"}(hr||(hr={}));var ia,ra=function(t){void 0===t&&(t=null),this.maxWidth="800",this.maxHeight="600",this.hold=!1,this.animation=!0,Object.assign(this,t)};!function(t){t.block="block",t.none="none"}(ia||(ia={}));var aa=function(){function n(e,n,o,r){this.renderer=e,this.hostRef=n,this.breakpoint=o,this.device=r,this.host="jnt-modal-host",this.ui=Yt,this.options=new ra,this.mobile=this.breakpoint.current===t.Breakpoint.mobile,this.opened$=new i.EventEmitter,this.display=ia.none}return Object.defineProperty(n.prototype,"opened",{get:function(){return this._opened},set:function(t){this._opened=t,this.opened$.emit(t)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"windows",{get:function(){return this.device.platform.windows},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"content",{set:function(t){this.contentTemplate=null,this.container.clear(),t instanceof i.TemplateRef?this.contentTemplate=t:t instanceof i.ComponentRef&&this.container.insert(t.hostView,0)},enumerable:!0,configurable:!0}),n.prototype.start=function(t){t.fromState===hr.hidden&&(this.display=ia.block)},n.prototype.done=function(t){t.toState===hr.hidden&&(this.display=ia.none)},n.prototype.open=function(t,e){void 0===e&&(e={}),this.options=new ra(e),this.content=t,this.backdrop&&(this.renderer.setStyle(this.backdrop.nativeElement,"filter","blur(5px)"),!this.mobile&&this.options.animation&&this.renderer.setStyle(this.backdrop.nativeElement,"animation","jnt-scale-in .5s cubic-bezier(0.165, 0.840, 0.440, 1.000) forwards")),this.renderer.setStyle(document.body,"overflow","hidden"),this.opened=!0},n.prototype.close=function(){var t=this;this.renderer.removeStyle(document.body,"overflow"),this.backdrop&&(this.renderer.removeStyle(this.backdrop.nativeElement,"filter"),!this.mobile&&this.options.animation&&this.renderer.setStyle(this.backdrop.nativeElement,"animation","jnt-scale-out 300ms cubic-bezier(0.165, 0.840, 0.440, 1.000) forwards")),this.opened=!1,this.hostRef.nativeElement.scrollTop=0,setTimeout((function(){t.content=null,t.renderer.removeStyle(t.backdrop.nativeElement,"animation")}),300)},n.ctorParameters=function(){return[{type:i.Renderer2},{type:i.ElementRef},{type:We},{type:Ye}]},q([i.HostBinding("attr.host"),G("design:type",Object)],n.prototype,"host",void 0),q([i.Input(),G("design:type",i.ElementRef)],n.prototype,"backdrop",void 0),q([i.Output(),G("design:type",Object)],n.prototype,"opened$",void 0),q([i.ViewChild("container",{read:i.ViewContainerRef}),G("design:type",Object)],n.prototype,"container",void 0),q([i.HostBinding("style.display"),G("design:type",Object)],n.prototype,"display",void 0),q([i.Input(),G("design:type",Boolean),G("design:paramtypes",[Boolean])],n.prototype,"opened",null),q([i.HostBinding("attr.data-windows"),G("design:type",Object),G("design:paramtypes",[])],n.prototype,"windows",null),q([te({description:"show modal"}),G("design:type",Function),G("design:paramtypes",[Object,Object]),G("design:returntype",void 0)],n.prototype,"open",null),q([te({description:"close modal"}),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],n.prototype,"close",null),n=q([i.Component({selector:"jnt-modal",template:'<jnt-block child-of="jnt-modal-host" [padding]="ui.gutter.none" data-modal\n           [@.disabled]="mobile"\n           [@move]="opened ? \'visible\' : \'hidden\'"\n           (@move.start)=\'start($event)\'\n           (@move.done)=\'done($event)\'>\n  <jnt-stack child-of="jnt-modal-host" data-title *ngIf="!!options.title"\n             [orientation]="ui.orientation.horizontal"\n             [justify]="ui.justify.between"\n             [align]="ui.align.center">\n    <jnt-stack child-of="jnt-modal-host" [orientation]="ui.orientation.horizontal"\n               [gutter]="ui.gutter.small">\n      <jnt-icon child-of="jnt-modal-host" *ngIf="!!options.title.icon"\n                [icon]="options.title.icon"></jnt-icon>\n      <span child-of="jnt-modal-host" data-text>{{options.title.text}}</span>\n    </jnt-stack>\n\n    <jnt-button child-of="jnt-modal-host" *ngIf="!options.hold"\n                [scheme]="ui.scheme.secondary"\n                [outline]="ui.outline.transparent"\n                [size]="ui.size.small"\n                [shape]="ui.shape.circle"\n                [icon]="ui.icons.close"\n                (click)="close()">\n    </jnt-button>\n  </jnt-stack>\n\n  <div child-of="jnt-modal-host" data-content [ngStyle]="{\'max-height.px\': options.maxHeight, \'max-width.px\': options.maxWidth}"\n       [attr.data-windows]="device.platform.windows">\n    <ng-container #container>\n      <ng-container *ngIf="!!contentTemplate">\n        <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\n      </ng-container>\n      <ng-container *ngIf="!!options.content">\n        <ng-container *ngTemplateOutlet="options.content"></ng-container>\n      </ng-container>\n    </ng-container>\n  </div>\n  <ng-container *ngIf="!!options.footer">\n    <ng-container *ngTemplateOutlet="options.footer"></ng-container>\n  </ng-container>\n\n</jnt-block>\n<div child-of="jnt-modal-host" *ngIf="!!opened" #backdrop data-overlay\n     (click)="!options.hold ? close() : null"\n     [@.disabled]="mobile"\n     [@blackout]="opened"></div>',animations:[e.trigger("move",[e.state("hidden",e.style({top:"100%",left:"50%",transform:"translate(-50%, 0)"})),e.state("visible",e.style({top:"50%",left:"50%",transform:"translate(-50%, -50%)"})),e.transition("hidden => visible",[e.animate(".5s cubic-bezier(0.165, 0.840, 0.440, 1.000)")]),e.transition("visible => hidden",[e.animate(".3s cubic-bezier(0.165, 0.840, 0.440, 1.000)")])]),e.trigger("blackout",[e.state("void",e.style({opacity:0})),e.state("*",e.style({opacity:1})),e.transition("void <=> *",[e.animate(".5s ease-in-out")])])]}),G("design:paramtypes",[i.Renderer2,i.ElementRef,We,Ye])],n)}(),sa=function(){function t(){this.opened$=new i.EventEmitter}return t.prototype.checkRegistration=function(){if(!this.modal)throw new Error("modal component is not registered")},t.prototype.register=function(t){var e=this;this.modal=t,this.modal.opened$.subscribe((function(t){return e.opened$.emit(t)}))},t.prototype.open=function(t,e){void 0===e&&(e={}),this.checkRegistration(),this.modal.open(t,e)},t.prototype.close=function(){this.checkRegistration(),this.modal.close()},t.ɵprov=i["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t=q([i.Injectable({providedIn:"root"})],t)}(),la=function(){function t(t){this.modal=t}return t.prototype.click=function(){this.modal.open(null,this.options)},t.ctorParameters=function(){return[{type:sa}]},q([i.Input("jntModal"),G("design:type",Object)],t.prototype,"options",void 0),q([i.HostListener("click"),G("design:type",Function),G("design:paramtypes",[]),G("design:returntype",void 0)],t.prototype,"click",null),t=q([i.Directive({selector:"[jntModal]",exportAs:"jntModal"}),G("design:paramtypes",[sa])],t)}(),pa=function(){function t(){}return t=q([i.NgModule({declarations:[aa,la],imports:[o.CommonModule,gr,Xn,qe,Gn,an],entryComponents:[aa],exports:[aa,la]})],t)}(),ca=function(){function t(){}return t=q([i.NgModule({exports:[pa,ko]})],t)}(),da=function(){function t(){this.host="jnt-confirm-host",this.ui=Yt,this.ok=new i.EventEmitter,this.cancel=new i.EventEmitter}return q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([Zt({description:"Message text",type:"string"}),i.Input(),G("design:type",String)],t.prototype,"message",void 0),q([Zt({description:"Message template",type:"string"}),i.Input(),G("design:type",i.TemplateRef)],t.prototype,"template",void 0),q([i.Output(),G("design:type",Object)],t.prototype,"ok",void 0),q([i.Output(),G("design:type",Object)],t.prototype,"cancel",void 0),t=q([i.Component({selector:"jnt-confirm",template:'<div child-of="jnt-confirm-host" *ngIf="!!template; else text" data-message>\n  <ng-container *ngTemplateOutlet="template"></ng-container>\n</div>\n\n<ng-template #text>\n  <div child-of="jnt-confirm-host" data-message>{{message}}</div>\n</ng-template>\n\n<jnt-stack child-of="jnt-confirm-host" [orientation]="ui.orientation.horizontal" [justify]="ui.justify.between">\n  <jnt-button child-of="jnt-confirm-host" [type]="ui.button.type.submit"\n              [text]="\'action.ok\' | translate"\n              (click)="ok.emit()"></jnt-button>\n  <jnt-button child-of="jnt-confirm-host" [scheme]="ui.scheme.secondary"\n              [text]="\'action.cancel\' | translate"\n              (click)="cancel.emit()"></jnt-button>\n</jnt-stack>',providers:U(Yo)})],t)}(),ua=function(){function t(){}return t=q([i.NgModule({declarations:[da],imports:[o.CommonModule,Xn,Ji,qe,R.TranslateModule],exports:[da]})],t)}(),ga=function(){function e(){this.host="jnt-message-host",this._scheme=t["ɵt"].primary}return Object.defineProperty(e.prototype,"scheme",{set:function(e){this._scheme=e||t["ɵt"].primary},enumerable:!0,configurable:!0}),q([i.HostBinding("attr.host"),G("design:type",Object)],e.prototype,"host",void 0),q([i.HostBinding("attr.data-scheme"),G("design:type",Object)],e.prototype,"_scheme",void 0),q([Zt({description:"Message color scheme",path:"ui.schemes",default:t["ɵt"].primary,options:[t["ɵt"].primary,t["ɵt"].secondary,t["ɵt"].success,t["ɵt"].fail]}),i.Input(),G("design:type",String),G("design:paramtypes",[String])],e.prototype,"scheme",null),e=q([i.Component({selector:"jnt-message",template:"<ng-content></ng-content>"})],e)}(),ha=function(){function t(){}return t=q([i.NgModule({declarations:[ga],imports:[o.CommonModule],exports:[ga]})],t)}(),fa=function(){function t(t,e){var n=this;this.logger=t,this.fb=e,this.host="jnt-theme-switcher-host",this.theme=Lt.light,this.ui=Yt,this.themeControl=new r.FormControl,this.switcher=this.fb.group({theme:this.themeControl}),this.onChange=function(){return n.logger.error("value accessor is not registered")},this.onTouched=function(){return n.logger.error("value accessor is not registered")},this.registerOnChange=function(t){return n.onChange=t},this.registerOnTouched=function(t){return n.onTouched=t},this.onBlur=function(){return n.onTouched()}}var e;return e=t,t.prototype.ngOnInit=function(){var t=this;this.themeControl.valueChanges.subscribe((function(e){t.theme=e?Lt.light:Lt.dark,t.onChange(t.theme)}))},t.prototype.writeValue=function(t){this.themeControl.setValue(!t||t===Lt.light,{emitEvent:!1})},t.ctorParameters=function(){return[{type:a.NGXLogger},{type:r.FormBuilder}]},q([i.HostBinding("attr.host"),G("design:type",Object)],t.prototype,"host",void 0),q([i.HostBinding("attr.theme"),G("design:type",Object)],t.prototype,"theme",void 0),q([i.HostListener("blur"),G("design:type",Object)],t.prototype,"onBlur",void 0),t=e=q([i.Component({selector:"jnt-theme-switcher",template:'<form child-of="jnt-theme-switcher-host" [formGroup]="switcher">\n  <jnt-switch child-of="jnt-theme-switcher-host" data-switch formControlName="theme"\n              [icons]="{on: ui.icons.solar, off: ui.icons.moon}"\n              [tags]="{on: \'Light\', off: \'Dark\'}">\n\n  </jnt-switch>\n</form>',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:i.forwardRef((function(){return e})),multi:!0}]}),G("design:paramtypes",[a.NGXLogger,r.FormBuilder])],t)}(),ma=function(){function t(){}return t=q([i.NgModule({imports:[o.CommonModule,r.ReactiveFormsModule,Wi],exports:[fa],declarations:[fa]})],t)}(),ya=function(){function t(){}return t=q([i.NgModule({exports:[ua,ma,ha]})],t)}(),ba=new i.InjectionToken("JunteUIModuleConfig");function va(t){return he(hn,t)}var ja=function(){function t(){}var e;return e=t,t.forRoot=function(t){return void 0===t&&(t={}),{ngModule:e,providers:[{provide:ba,useValue:t},{provide:gn,useFactory:va,deps:[ba]},a.LoggerModule.forRoot({level:a.NgxLoggerLevel.DEBUG}).providers]}},t=e=q([i.NgModule({exports:[ya,Jr,oa,Mi,Ir,Jo,ca,bi,we,He,Re,le,ce]})],t)}(),ka=function(t){void 0===t&&(t=null),t&&Object.assign(this,t)};t.AccordionComponent=uo,t.AccordionModule=go,t.AccordionSectionComponent=co,t.AppAsideComponent=Mr,t.AppBodyComponent=Pr,t.AppContentComponent=Er,t.AppFooterComponent=Hr,t.AppHeaderActionComponent=Fr,t.AppHeaderActionsComponent=Rr,t.AppHeaderComponent=Sr,t.AppHeaderUserbarComponent=Ar,t.AppLayoutComponent=xr,t.AppLayoutModule=Dr,t.AppPageHeaderComponent=Lr,t.ArrayPipesModule=we,t.AvatarComponent=ki,t.AvatarModule=Ti,t.AvatarsGroupComponent=wi,t.AvatarsListComponent=Ci,t.BadgeComponent=Wn,t.BadgeModule=Yn,t.BarIndicatorComponent=ii,t.BarIndicatorGroupComponent=ri,t.BlockComponent=ur,t.BlockModule=gr,t.BreadcrumbsComponent=zr,t.BreadcrumbsModule=Zr,t.BreakpointDirective=Ze,t.BreakpointService=We,t.ButtonComponent=Un,t.ButtonGroupComponent=$n,t.ButtonModule=Xn,t.COMPONENT_API_CONTENT_METADATA_KEY=Xt,t.COMPONENT_API_METHODS_METADATA_KEY=$t,t.COMPONENT_API_PROPERTIES_METADATA_KEY=Ut,t.CONFIG_TOKEN=ba,t.CalendarComponent=cr,t.CalendarModule=dr,t.CardComponent=_o,t.CardModule=Bo,t.ChartComponent=ti,t.ChartIndicatorComponent=Zo,t.ChartModule=oi,t.CheckboxComponent=Ai,t.CheckboxGroupComponent=Li,t.CheckboxModule=Di,t.CircleBarComponent=ai,t.CircleBarModule=li,t.ColComponent=Hi,t.CollapsibleComponent=Nr,t.CollapsibleModule=qr,t.CollectionsModule=Jo,t.ColorPipesModule=He,t.ConfirmComponent=da,t.ConfirmModule=ua,t.ContainerComponent=Ei,t.ContentApi=ee,t.ContentMetadata=Jt,t.CropperPosition=nr,t.DatePeriodComponent=ci,t.DatePeriodModule=di,t.DatePickerComponent=fr,t.DatePickerModule=vr,t.DefaultSearchFilter=ka,t.DeviceService=Ye,t.DotComponent=vi,t.DotModule=ji,t.DynamicModule=bi,t.ElementsModule=Mi,t.EmptyPipe=Fe,t.FieldTouchedHasErrorPipe=Ki,t.FilterComponent=jr,t.FilterModule=kr,t.ForDirective=tn,t.ForMaxDirective=rn,t.ForMinDirective=nn,t.FormComponent=$i,t.FormControlComponent=Ui,t.FormItemComponent=Xi,t.FormLabelComponent=Qi,t.FormMessageComponent=Yi,t.FormModule=Ji,t.FormsModule=Ir,t.GanttComponent=po,t.GanttLineComponent=Zn,t.GanttLinePeriodComponent=Jn,t.GanttModule=ho,t.GanttPipesModule=so,t.GridModule=Ri,t.IconComponent=qn,t.IconModule=Gn,t.ImageCropperComponent=or,t.ImageCropperModule=ir,t.ImagePosition=er,t.ImageUploaderComponent=ar,t.ImageUploaderModule=sr,t.InMemoryCacheService=me,t.IncludesPipe=ke,t.InformerComponent=Gr,t.InformerMessageComponent=Vr,t.InformerModule=Wr,t.InputComponent=Ho,t.InputModule=Eo,t.JoinPipe=ve,t.JunteUiModule=ja,t.LabelComponent=Oi,t.LabelModule=Ii,t.LayoutModule=Jr,t.LightenDarkenPipe=Ie,t.LinkComponent=wo,t.LinkModule=Co,t.LpFooterComponent=Yr,t.LpHeaderComponent=Ur,t.LpLayoutComponent=$r,t.LpModule=Kr,t.LpRewindComponent=Xr,t.LpSlideComponent=Qr,t.MathPipesModule=De,t.MenuComponent=xo,t.MenuItemComponent=So,t.MenuModule=Mo,t.MessageComponent=ga,t.MessageModule=ha,t.MethodApi=te,t.MethodMetadata=Kt,t.MockArrayPipe=be,t.ModalComponent=aa,t.ModalDirective=la,t.ModalModule=pa,t.ModalOptions=ra,t.ModalService=sa,t.MoveStart=tr,t.NavigationModule=oa,t.OverlaysModule=ca,t.PagerComponent=No,t.PagerModule=qo,t.PictureComponent=Si,t.PictureModule=xi,t.PopPipe=je,t.PopoverComponent=yo,t.PopoverDirective=jo,t.PopoverInstance=bo,t.PopoverModule=ko,t.PopoverService=vo,t.ProgressBarComponent=hi,t.ProgressBarModule=fi,t.PropertyApi=Zt,t.PropertyMetadata=Qt,t.RadioComponent=Ni,t.RadioGroupComponent=qi,t.RadioModule=Vi,t.ResponsiveModule=an,t.RoundPipe=Ae,t.RowComponent=Fi,t.SelectComponent=Lo,t.SelectModule=Do,t.SelectOptionComponent=Ao,t.SelectableDirective=se,t.SelectableModule=le,t.SharedModule=ya,t.ShortcutsDirective=pe,t.ShortcutsModule=ce,t.SkeletonComponent=Qn,t.SkeletonModule=Kn,t.SliderComponent=_i,t.SliderModule=Bi,t.SpinnerComponent=Ve,t.SpinnerModule=Ge,t.StackComponent=Ne,t.StackModule=qe,t.SubMenuComponent=Io,t.SubMenuItemComponent=Oo,t.SumPipe=si,t.SwitchComponent=Gi,t.SwitchModule=Wi,t.SwitcherComponent=Tr,t.SwitcherModule=Or,t.SwitcherOptionComponent=Cr,t.TabComponent=ta,t.TableColumnComponent=Vo,t.TableComponent=Uo,t.TableModule=$o,t.TabsComponent=ea,t.TabsModule=na,t.TextBrightnessPipe=ze,t.TextPipesModule=Re,t.ThemeSwitcherComponent=fa,t.ThemeSwitcherModule=ma,t.TimelineComponent=Qo,t.TimelineItemComponent=Xo,t.TimelineModule=Ko,t.TimerComponent=mi,t.TimerModule=yi,t.TruncPipe=Le,t.UI=Yt,t.WeekMetricComponent=lr,t.changeColor=Ce,t.configFactory=va,t.darkenLighten=Te,t.eventEmitterFactory=ae,t.getTextBrightness=xe,t.i18nEn=Ct,t.i18nRu={label:{metrics:"Метрики",search:"Поиск",dark:"Темная",light:"Светлая"},action:{reload:"Обновить",hide_sidebar:"Скрыть панель",ok:"Ок",cancel:"Отмена",select_all:"Выбрать все"}},t.icons=Gt,t.isEqual=de,t.localeEnUs=Tt,t.localeRu={masks:{date:"__.__.____",time:"__:__",datetime:"__.__.____, __:__"}},t.moveFromRight=wt,t.noneAnimation=kt,t.sharedStyles=jt,t.untilJSONChanged=function(){return function(t){var e=null;return new s.Observable((function(n){return t.subscribe({next:function(t){JSON.stringify(t)!==JSON.stringify(e)&&(e=t,n.next(t))},error:function(t){n.error(t)},complete:function(){n.complete()}})}))}},t.ɵ0=ge,t.ɵ1=fe,t.ɵa=bt,t.ɵb=vt,t.ɵba=t["ɵba"],t.ɵbb=t["ɵbb"],t.ɵbc=t["ɵbc"],t.ɵbd=t["ɵbd"],t.ɵbe=t["ɵbe"],t.ɵbf=t["ɵbf"],t.ɵbg=Fo,t.ɵbh=Ro,t.ɵbi=t["ɵbi"],t.ɵbj=Ue,t.ɵbk=$e,t.ɵbl=Xe,t.ɵbm=Qe,t.ɵbn=Ke,t.ɵbo=t["ɵbo"],t.ɵbp=t["ɵbp"],t.ɵbq=t["ɵbq"],t.ɵbr=t["ɵbr"],t.ɵbs=t["ɵbs"],t.ɵbt=t["ɵbt"],t.ɵbu=To,t.ɵbv=_r,t.ɵbw=t["ɵbw"],t.ɵbx=t["ɵbx"],t.ɵby=Ln,t.ɵbz=yn,t.ɵc=ye,t.ɵca=cn,t.ɵcb=_n,t.ɵcc=Bn,t.ɵcd=Hn,t.ɵce=zn,t.ɵcf=dn,t.ɵcg=un,t.ɵch=mn,t.ɵci=fn,t.ɵcj=vn,t.ɵck=bn,t.ɵcl=jn,t.ɵcm=kn,t.ɵcn=wn,t.ɵco=Cn,t.ɵcp=Tn,t.ɵcq=Sn,t.ɵcr=xn,t.ɵcs=Mn,t.ɵct=Pn,t.ɵcu=An,t.ɵcv=On,t.ɵcw=In,t.ɵcx=ln,t.ɵcy=En,t.ɵcz=pn,t.ɵd=Ee,t.ɵda=Fn,t.ɵdb=sn,t.ɵdc=t["ɵdc"],t.ɵdd=mr,t.ɵde=yr,t.ɵdf=br,t.ɵdg=wr,t.ɵdh=Pi,t.ɵdi=ao,t.ɵdj=ro,t.ɵdk=io,t.ɵdl=oo,t.ɵdm=no,t.ɵdn=eo,t.ɵdo=to,t.ɵdp=ei,t.ɵdq=ni,t.ɵdr=ui,t.ɵds=gi,t.ɵe=gn,t.ɵf=hn,t.ɵg=Wo,t.ɵh=Yo,t.ɵi=Go,t.ɵj=Nn,t.ɵk=Dn,t.ɵl=Vn,t.ɵm=t["ɵm"],t.ɵn=t["ɵn"],t.ɵo=t["ɵo"],t.ɵp=t["ɵp"],t.ɵq=t["ɵq"],t.ɵr=t["ɵr"],t.ɵs=t["ɵs"],t.ɵt=t["ɵt"],t.ɵu=t["ɵu"],t.ɵv=t["ɵv"],t.ɵw=t["ɵw"],t.ɵx=t["ɵx"],t.ɵy=t["ɵy"],t.ɵz=t["ɵz"],Object.defineProperty(t,"__esModule",{value:!0})}));
//# sourceMappingURL=junte-ui.umd.min.js.map